程式的組成部分:
二進制部分:一般在/bin、/sbin等目錄
庫:/lib、include
配置檔案: /etc
幫助檔案:man
linux各個目錄簡要注意點:
/etc,/bin,/sbin,/lib
系統啟動就需要用到的程式,這些目錄不能挂載額外的分區,必須在根檔案系統所在的分區上
/usr/
bin
sbin
lib
作業系統核心功能,可以單獨分區
/proc
/sys
不能單獨分區,預設為空
/dev:裝置,不能單獨分區
/root:不能單獨分區
/var:建議單獨分區
/boot:核心,initrd(initramfs)
POST-->BIOS-->(MBR)bootloader(檔案系統,ext2、ext3)-->核心
軟體包管理:rpm
作用:
将二進制程式、配置檔案、幫助檔案、庫檔案打包成一個檔案
生成資料庫,追蹤所安裝的每一個檔案
核心功能:
1.制作軟體包
2.安裝、解除安裝、更新、查詢、校驗
Redhat,SUSE:RPM
Redhat Package Manager
PRM is Package Manager
Debian:dpt
前端工具:yum apt-get
後端工具:RPM,dpt
yum:Yellowdog Update Modifier
rpm指令:
rpm:
資料庫:/var/lib/rpm
rpmbuild:
rpm命名:
包:組成部分
主包:
bind-9.7.1-1.el5.i586.rpm
子包:
bind-libs-9.7.1-1.el5.i586.rpm
包名格式:
name-version-release.arch.rpm
bind-major.minor.release-release.arch.rpm
主版本号:重大改進
次版本号:某個子功能發生重大變化
發行号(第一個release):修正了部分bug,調整了一點功能
發行号(第二個release):作者制作成rpm修改的版本
rpm包:
二進制格式
rpm包作者下載下傳源程式,編譯配置完成後,制作成rpm包
rpm:
安裝:
rpm -i /PATH/TO/PACKAGE_FILE
-h:以#顯示進度:每個#表示2%;
-v:顯示詳細過程
-vv:更詳細的過程
rpm -ivh /PATH/TO/PACKAGE_FILE
--nodeps:忽略依賴關系:
--replacepk:重新安裝,替換原有安裝:
--force:強行安裝,可以實作重裝或降級:
查詢:
rpm -q PACKAGE_NAME:查詢指定的包是否已經安裝
rpm -qa:查詢已經安裝的所有包
rpm -qi PACKAGE_NAME:查詢指定包的說明資訊:
rpm -ql PACKAGE_NAME:查詢指定包安裝後生成的檔案清單:
rpm -qd PACKAGE_NAME:查詢指定包安裝的幫助檔案
rpm -qf /path/to/somefile:查詢指定的檔案是由哪個rpm包安裝生成的
rpm -q --script PACKAGE_NAME:查詢指定包中包含的腳本
如果某rpm包尚未安裝,我們需查詢其說明資訊,安裝以後會生成檔案
rpm -qpi /PATH/TO/PACKAGE_FILE
rpm -qpl
更新:
rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE:如果裝有老版本則更新,否則,則安裝
rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE:如果裝有老版本則更新,否則,退出
--oldpackage:降級
解除安裝:
rpm -e PACKAGE_NAME
--nodeps
校驗:
rpm -V PACKAGE_NAME
重建rpm資料庫:
rpm
--rebuilddb:重建資料庫
--initdb:初始化資料庫,沒有才建立,有就不用
檢驗來源合法性,以及軟體完整性:
加密類型:
對稱:加密解密使用同一個密鑰
公鑰:一對密鑰,公鑰,私鑰:公鑰隐含于私鑰中,可以提取出來,并公開出去
單向:用于驗證完整性,隻要有一個字元改變,計算結果便千差萬别
[root@logstash ~]# ls /etc/pki/rpm-gpg/
RPM-GPG-KEY-CentOS-6 RPM-GPG-KEY-EPEL-6
RPM-GPG-KEY-CentOS-Debug-6 RPM-GPG-KEY-rpmforge-dag
RPM-GPG-KEY-CentOS-Security-6 RPM-GPG-KEY-rpmforge-fabian
RPM-GPG-KEY-CentOS-Testing-6
rpm -K /PATH/TO/PACKAGE_FILE
dsa,gpg:驗證來源合法性,也即驗證簽名可以使用--nosignature,略過此項
sha1,md5:驗證軟體包完整性;可以使用--nodigest略過此項
本文轉自biao007h51CTO部落格,原文連結:http://blog.51cto.com/linzb/1752209 ,如需轉載請自行聯系原作者