dpkg 命令命令詳解
dpkg -i手動安裝軟件包(這個命令并不能解決軟件包之前的依賴性問題),如果在安裝某一個軟件包的時候遇到了軟件依賴的問題,可以用apt-get -f install在解決信賴性這個問題.
dpkg --info “軟件包名” --列出軟件包解包后的包名稱.
dpkg -l–列出當前系統中所有的包.可以和參數less一起使用在分屏查看. (類似于rpm -qa)
dpkg -l <package_name> 查詢軟件包的信息
dpkg -l |grep -i “軟件包名” --查看系統中與"軟件包名"相關聯的包.
dpkg -s查詢已安裝的包的詳細信息.
dpkg -L查詢系統中已安裝的軟件包所安裝的位置. (類似于rpm -ql)
dpkg -S查詢系統中某個文件屬于哪個軟件包. (類似于rpm -qf)
dpkg -I查詢deb包的詳細信息,在一個軟件包下載到本地之后看看用不用安裝(看一下唄).
dpkg -r卸載軟件包.不是完全的卸載,它的配置文件還存在.
dpkg -P全部卸載(但是還是不能解決軟件包的依賴性的問題)
dpkg -reconfigure重新配置
deb包的制作
首先建立一個工作目錄,比如在/home 目錄下建立work目錄
root@ubuntu:~# cd /home/
root@ubuntu:/home/hebbe# mkdir work
root@ubuntu:/home/hebbe# cd work/
因為安裝軟件包的時候默認是將文件釋放到根目錄下,所以需要設定好它安裝的路徑,同時還需要建立一個 DEBIAN 目錄。
root@ubuntu:/home/work# mkdir -p usr/src
root@ubuntu:/home/work# mkdir -p usr/lib
root@ubuntu:/home/work# mkdir DEBIAN
把需要打包的文件及其庫文件拷貝到相應的目錄
root@ubuntu:/home/work# cp -a /home/Downloads/Lidar usr/src
root@ubuntu:/home/work# cp -a /home/Downloads/lib/* usr/lib/
在 DEBIAN目錄下創建一個control文件,并加入以下內容,內容可自定義:
root@ubuntu:/home/work# vim DEBIAN/control
Package: hello-deb
Version: 1.0.1
Section: utils
Priority: optional
Architecture: i386
Depends:
Installed-Size: 512
Maintainer: xxxx
Description:helo package
然后,就可以使用 dpkg 命令構建 deb包了
root@ubuntu:/home/work# sudo chmod 755 * -R
root@ubuntu:/home/work# dpkg -b . /home/hebbe/hello_1.0.1_i386.deb
注意權限是755 ,否則會報錯,例如
dpkg-deb: error: control directory has bad permissions 777 (must be >=0755 and <=0775)
至此,便已打包完成。
control 文件配置項說明
//包名
Package: Internet-of-things
//版本
Version: 1.0.0-2017.05.03
//包分類
Section: tuils
//優先級
Priority: optional
//依賴軟件包
Depends:
//建議
Suggests:
//目標機架構
Architecture: i386 | amd64
//安裝后大小
Installed-Size:
//維護者
Maintainer: papa
//原維護者
Original-Maintainer: papa
//提供
Provides:
//包描述
Description: 小劉同學++
//軟件主頁
Homepage: https://blog.csdn.net/qq_43420088?type=blog