※rpm 的資料庫檔案 放置於 /var/lib/rpm/packages ,SLES 預設會自動備份此資料庫於/var/adm/backup/rpmdb ,若原始的package 損壞時可以透過此備份檔還原。 rpm -qa 例出系統所有已安裝套件 rpm -q 套件 列出指定的套件 rpm --rebuilddb 重置rpm DB 檔案(/var/lib/pachages)及重建索引檔 rpm -e 套件名稱 移除套件 rpm -i 套件名稱 安裝指定的套件 rpm -i --force 套件名稱 強製重新安裝已安裝過的套件 rpm -i --nodeps 套件名稱 強製安裝套件並且略過相依性 rpm -f 套件名稱 升級曾經安裝過的套件 rpm -u 套件名稱 升級安裝過的套件,若未安裝過則直接安裝 rpm -e 名稱 –allmatches 移除套件相同的全部套件 rpm -qa “套件名稱*” 查詢套件是否安裝(可搭配-p 查詢未安裝的套件資訊) rpm -qi 套件名稱 查詢套件資訊(可搭配-p 查詢未安裝的套件資訊) rpm -ql 套件名稱 查詢套件安裝的路徑(可搭配-p 查詢未安裝的套件資訊) rpm -qd 套件名稱 查詢套件說明文件(可搭配-p 查詢未安裝的套件資訊) rpm -qc 套件名稱 查詢安裝套件的設定檔位置(可搭配-p 查詢未安裝的套件資訊) rpm -qf 檔案名稱 查詢某一檔案屬於何套件安裝 rpm -qp --filesbypkg *.rpm | grep 模組名稱 查詢模組可於那個套件安裝 ※從備份檔還原資料檔 gunzip -c /var/adm/backup/rpmdb/pack日期.gz > /var/lib/rpm/packages 重整資料庫 rpm --rebuilddb ※使用PGP Key 檢查下載套件是否有被竄改 rpm --import *.asc 加入下載套件的PGP Key rpm --checksig 套件名稱 用PGP Key 檢查套件的完整性
rpm -qai “gpg-pubkey*” | grep “關鍵字” –B 10 移除key 「(-B 10)找到值後往前10行」 rpm -e gpg-pubkey-Version-Release
rpm -V 套件名稱 驗證已經安裝過後的套件有無被修改 mknod 設備檔 類型 主編號 次編號 mknod /dev/hdc b 22 0 ※建立封裝檔案 安裝gcc 套件 撰寫原始碼
mkdir hello-1.0
hello-1.0.c
#include <stdio.h>
int main()
{
printf(“hello/n”);
return 0;
}
測試
gcc hello-1.0.c -o helo 建立Makefile
vi makefile
all:hello
hello:
gcc helo.c -o hello
install:
cp –f hello /usr/bin
uninstall:
rm -f /usr/binhello
clean:
rm -f hello 測試
make
make install
hello
mkdir hello-1.0
hello-1.0.c
#include <stdio.h>
int main()
{
printf(“hello/n”);
return 0;
}
gcc hello-1.0.c -o helo
vi makefile
all:hello
hello:
gcc helo.c -o hello
install:
cp –f hello /usr/bin
uninstall:
rm -f /usr/binhello
clean:
rm -f hello
make
make install
hello
















