【linux之軟件安裝,rpm,yum】

1、軟件管理

靜態庫 動態庫
靜態庫:在程序編譯時會被鏈接到目標代碼中,程序運行時將再也不須要該靜態庫
動態庫:在程序編譯時並不會被鏈接到目標代碼中,而是在程序運行時才被載入。java

連接是程序調用庫的過程。node

靜態連接庫 動態連接庫
靜態連接庫:把庫文件中用到的函數代碼直接連接到目標程序,程序運行的時候再也不須要它的庫文件。
動態連接庫:把調用的函數所在的文件模塊(DLL)和調用函數在文件中的位置等信息連接進目標程序,程序運行時再從DLL中尋找相應的函數代碼, 此須要DLL文件的支持。算法

編程-->編譯-->運行-->連接庫數據庫

 

通常編譯好的程序有哪些組成部分?編程

1.可執行文件(二進制文件)

存放地點:/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函數

 

3.配置文件(提供變量)

/etc /usr/etc /usr/local/etc

 

4.幫助文件

/ussr/share/man
man的配置文件:/etc/man.config

 

2、rpm及yum

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:不區分平臺,任何平臺均可以用

 

rpm

  • 1.安裝模式

-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

 

  • 2.查詢模式

-q:開啓查詢模式的開關
-a:查詢全部安裝過的軟件包
-f:查看文件是哪一個軟件包安裝的
-p:指定軟件包
-l:列舉包中的文件
-i|--info 軟件名:查看軟件信息

rpm -qi dhcp

 

  • 3.升級模式

-U:升級軟件以前,若是已安裝則升級,不然全新安裝
-F:只能完成升級安裝
--oldpackage:降級

  • 4.校驗模式

-V:校驗,檢查軟件包和已安裝文件的狀態是否有變化
rpm -V
-K 軟件包:檢查,來源是否可靠,簽名是否能夠認證
--import:導入官方的公鑰文件
/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

  • 5.卸載模式

-e 軟件名:卸載模式的開關
--nodeps:卸載前不考慮依賴關係

  • 6.從新構建數據庫

--rebuilddb:從新構建
--initdb:初始化建立數據庫

 

單向加密:用特定的方法對某個數據進行特徵值(電子指紋)計算
先用單向加密對軟件包抽象特徵值,每一個軟件包都有惟一的特徵值,再用私鑰加密特徵值,客戶端用得到的公鑰解密特徵值,再用一樣的
單向加密算法,從新計算軟件的特徵值
單向加密肯定完整性
校驗機制肯定私密性

readlink 獲取連接文件的路徑.

 

yum

語法格式:

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

相關文章
相關標籤/搜索