靜態庫 動態庫
靜態庫:在程序編譯時會被鏈接到目標代碼中,程序運行時將再也不須要該靜態庫
動態庫:在程序編譯時並不會被鏈接到目標代碼中,而是在程序運行時才被載入。java
連接是程序調用庫的過程。node
靜態連接庫 動態連接庫
靜態連接庫:把庫文件中用到的函數代碼直接連接到目標程序,程序運行的時候再也不須要它的庫文件。
動態連接庫:把調用的函數所在的文件模塊(DLL)和調用函數在文件中的位置等信息連接進目標程序,程序運行時再從DLL中尋找相應的函數代碼, 此須要DLL文件的支持。算法
編程-->編譯-->運行-->連接庫數據庫
通常編譯好的程序有哪些組成部分?編程
存放地點:/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbinvim
find / -name *bin -type d /usr/share/locale/bin /usr/local/bin /usr/local/sbin /usr/lib/pm-utils/bin /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/bin /usr/bin /usr/sbin /bin /sbin
經過編譯源代碼安裝的軟件,一般都放入/usr/local/SOFTWORE_NAME/
/usr/local/SOFTWORE_NAME/
bin,sbin,lib,man,etc緩存
完成如下任意操做,直接當命令執行
ln -s /usr/local/SOFTWORE_NAME/mysoft /bin/mysoft
PATH=$PATH:/usr/local/SOFTWORE_NAME/binapp
頭文件存放在 /usr/include
庫文件 /lib /usr/lib /usr/local/lib /lib64
ldconfig -v 查詢當前系統中已經加載的庫
在 /etc/ld.so.conf.d/下建立一個以.conf爲後綴的文件,而後在文件裏添加路徑
或者 作軟連接到/libjvm
頭文件連接到/usr/include函數
/etc /usr/etc /usr/local/etc
/ussr/share/man
man的配置文件:/etc/man.config
rpm實現的功能:
1.安裝軟件、查詢、升級、校驗、卸載
2.建立、維護、清除數據庫及其中的記錄
3.重建數據庫
4.軟件直接依賴關係的提示(依賴地獄)
yum:yellowdog update modifier 前臺管理工具
幫助rpm解決依賴地獄
rpmfind.net 查找下載rpm安裝包
tree -1.5.3-3.el6.i686.rpm tree:軟件名稱 1.5.3-3: 1:主版本號 5:次版本號 3:修訂版本號 -3:修訂次數 el6:依賴的操做系統的發行版本(RHEL6) i686:硬件平臺 x86_64 sparc ppc:apple noarch:不區分平臺,任何平臺均可以用
-i:啓用安裝模式
-v:顯示安裝的軟件名
-h:顯示安裝進度
--replacpkgs:安裝軟件以前再也不檢查是否已安裝
--nodeps:安裝軟件前再也不檢查依賴關係
--force:強制安裝
①先查看軟件包的頭部信息,以確認簽名是否有效
②準備階段
1.檢查軟件包是否已經安裝 2.檢查軟件包是否存在依賴關係 3.備份以前安裝過的軟件所包含的文件,*.rpmsave 4.若是有,則運行相應的安裝腳本
③安裝
④清理安裝過程當中產生的臨時文件
⑤更新數據庫
mkdir /mnt/cdrom
mount -r /dev/cdrom /mnt/cdrom
rpm -ivh /mnt/cdrom/Packages/tree-1.5.3-2.el6.i686.rpm
-q:開啓查詢模式的開關
-a:查詢全部安裝過的軟件包
-f:查看文件是哪一個軟件包安裝的
-p:指定軟件包
-l:列舉包中的文件
-i|--info 軟件名:查看軟件信息
rpm -qi dhcp
-U:升級軟件以前,若是已安裝則升級,不然全新安裝
-F:只能完成升級安裝
--oldpackage:降級
-V:校驗,檢查軟件包和已安裝文件的狀態是否有變化
rpm -V
-K 軟件包:檢查,來源是否可靠,簽名是否能夠認證
--import:導入官方的公鑰文件
/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
-e 軟件名:卸載模式的開關
--nodeps:卸載前不考慮依賴關係
--rebuilddb:從新構建
--initdb:初始化建立數據庫
單向加密:用特定的方法對某個數據進行特徵值(電子指紋)計算
先用單向加密對軟件包抽象特徵值,每一個軟件包都有惟一的特徵值,再用私鑰加密特徵值,客戶端用得到的公鑰解密特徵值,再用一樣的
單向加密算法,從新計算軟件的特徵值
單向加密肯定完整性
校驗機制肯定私密性
readlink 獲取連接文件的路徑.
語法格式:
yum [options] [command] [package..] options:普通選項 -y:全部的yum問題都以「yes」做爲回答的內容 --nogpgcheck:不檢查數據簽名 command: install update remove|erase list groupinstall
yum有元數據數據庫 metadata--*.xml
軟件倉庫:repository
ls /mnt/cdrom/Server/repodata
createrepo:建立軟件元數據庫
配置yum源的軟件倉庫:/etc/yum.repos.d/*.repo
vim /etc/yum.repos.d/local.repo (同一個yum源能夠寫不少個倉庫) [localrepo] #倉庫名 name=local cdrom repo baseurl=file:///mnt/cdrom #file協議是本地文件查找協議 enabled=1 #開啓軟件倉庫 gpgcheck=0 #是否檢查數字簽名 [ftp] name=ftp repository baseurl=ftp://172.16.0.1/Server #必須有repodate文件 enabled=1 gpgcheck=0
全局配置文件:/etc/yum.conf
ls /var/cache/yum/i386/6Server/localrepo/ 緩存目錄
yum -y install createrepo