您的位置:首页 > 其它

Ubuntu 软件包管理工具(以kali为栗)

2017-12-11 15:10 176 查看

一、APT的使用(Ubuntu Linux软件包管理工具一)

apt-cache search # ------(package 搜索包)
apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等)
sudo apt-get install# ------(package 安装包)
sudo apt-get install# -----(package - - reinstall 重新安装包)
sudo apt-get -f install # -----(强制安装?#"-f = --fix-missing"当是修复安装吧...)
sudo apt-get remove #-----(package 删除包)
sudo apt-get remove --purge # ------(package 删除包,包括删除配置文件等)
sudo apt-get autoremove --purge # ----(package 删除包及其依赖的软件包+配置文件等(只对6.10有效,强烈推荐))
sudo apt-get update #------更新源
sudo apt-get upgrade #------更新已安装的包
sudo apt-get dist-upgrade # ---------升级系统
sudo apt-get dselect-upgrade #------使用 dselect 升级
apt-cache depends #-------(package 了解使用依赖)
apt-cache rdepends # ------(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧...)
sudo apt-get build-dep # ------(package 安装相关的编译环境)
apt-get source #------(package 下载该包的源代码)
sudo apt-get clean && sudo apt-get autoclean # --------清理下载文件的存档 && 只清理过时的包
sudo apt-get check #-------检查是否有损坏的依赖
apt-get install的用法
apt-get install<package>


下载 以及所有倚赖的包裹,同时进行包裹的安装或升级.如果某个包裹被设置了 hold (停止标志,就会被搁在一边(即不会被升级).更多 hold 细节请看下面.

apt-get remove [–purge]

移除 以及任何倚赖这个包裹的其它包裹.–purge 指明这个包裹应该被完全清除 (purged) ,更多信息请看
dpkg -P .


apt-get update

升级来自 Debian 镜像的包裹列表,如果你想安装当天的任何软件,至少每天运行一次,而且每次修改了/etc/apt/sources.list 后,必须执行.

apt-get upgrade [-u]

升级所以已经安装的包裹为最新可用版本.不会安装新的或移除老的包裹.如果一个包改变了倚赖关系而需要安装一个新的包裹,那么它将不会被升级,而是标志为hold .apt-get update 不会升级被标志为 hold 的包裹 (这个也就是 hold 的意思).请看下文如何手动设置包裹为 hold .我建议同时使用 ‘-u’ 选项,因为这样你就能看到哪些包裹将会被升级.

apt-get dist-upgrade [-u]

和 apt-get upgrade 类似,除了 dist-upgrade 会安装和移除包裹来满足倚赖关系.因此具有一定的危险性.

apt-cache search #搜索满足 的包裹和描述.

apt-cache show #显示 的完整的描述.

apt-cache showpkg #显示 许多细节,以及和其它包裹的关系.

dselect, console-apt, aptitude, gnome-apt,#是APT 的几个图形前端(其中一些在使用前得先安装).

二、 DPKG的 用法

dpkg -i <package.deb>  #安装一个 Debian 包裹文件;如你手动下载的文件.
dpkg -c <package.deb>  #列出 <package.deb> 的内容.
dpkg -I <package.deb> #从 <package.deb> 中提取包裹信息.
dpkg -r <package> #移除一个已安装的包裹.


dpkg -P <package>


完全清除一个已安装的包裹.和 remove 不同的是, remove 只是删掉数据和可执行文件, purge 另外还删除所有的配制文件.

dpkg -L <package>


列出 安装的所有文件清单.同时请看 dpkg -c 来检查一个 .deb 文件的内容.

dpkg -s <package>


显示已安装包裹的信息.同时请看 apt-cache 显示 Debian 存档中的包裹信息,以及 dpkg -I 来显示从一个.deb 文件中提取的包裹信息.

dpkg-reconfigure <package>


重新配制一个已经安装的包裹,如果它使用的是 debconf (debconf 为包裹安装提供了一个统一的配制界面).你能够重新配制 debconf 它本身,如你想改变它的前端或提问的优先权.例如,重新配制 debconf ,使用一个 dialog 前端,简单运行:

dpkg-reconfigure --frontend=dialog debconf


(如果你安装时选错了,记得这里是可以改的

echo "<package> hold" | dpkg --set-selections


设置 的状态为 hlod (命令行方式)

dpkg --get-selections "<package>"


取的
<package>
的当前状态 (命令行方式)

支持通配符,如:

Debian:~# dpkg --get-selections *wine*
dpkg -S <file>


在包裹数据库中查找 ,并告诉你哪个包裹包含了这个文件.(注:查找的是事

先已经安装的包裹)

从源码建立
deb packages


apt-get source [-b] <package>


下载一个源码的包并解开。

你必须在你的
/etc/apt/sources.list
文件里写入一条
deb-src
的记录才能完成这项工作。

如果你输入了一个-b参数,并且是以root的身份,deb包会被自动的创建。

apt-get build-dep <package>


自动下载并安装通过源码创建
<package>
时需要的包。

只有
apt 0.5
以上版本才支持这个功能。

现在
woody
和以上版本包含了这个功能。

如果你使有一个旧版本的apt,查找依赖性最简单的方法是查看源码包中
debian/control
这个文件,注意这个路径是相对的,是包内的路径。

普通的用法

结合
apt-get source -b
,例子
(as root)


apt-get build-dep <package>
apt-get source -b <package>


会下载源码包,建立依赖性,然后尝试编译源码。

dpkg-source -x <package.dsc>


如果你手工下载了一个程序的源码包,其中包含了几个类似 .orig.tar.gz , .dsc ,以及 .diff.gz 之类的文件,那么你就可以对 .dsc 文件使用这个命令来 unpack 源码包。

dpkg-buildpackage


从 Debian 源码树建立一个deb包。你必须在
source tree
的主目录才能生效。例如:

dpkg-buildpackage -rfakeroot -uc -b


这里 ‘
-rfakeroot
’ 指定命令使用
fakeroot
程序来模仿
root
权限 (来实现所有者(
ownership
)目的),’-
uc
’ 表示 “Don’t cryptographically sign the changelog”, ‘-b’ 代表只建立二进制包.

debuild


一个快速打包脚本类似
dpkg-buildpackage
,能自动的识别是否使用
fakeroot
,同时为你运行
lintian
gpg


修正倚赖关系

dpkg --configure --pending


如果dpkg在
apt-get installupgrade dist-uptradeing
的时候出错退出,尝试使用此命令来配置已经unpack的包。

然后再用 apt-get install,upgrade, or dist-upgrade -f ,然后再用 apt-get install, upgrade, or dist-upgrade.

可能会重复多次,这样通常可以解决大多数的依赖性问题。

(同时,如果提示由于某种原因需要某个特定的包裹,你可以常识安装或卸载这个包)

apt-get install-f
apt-get upgrade -f
apt-get dist-upgrade -f


尝试修正上述过程中出现依赖性关系

注意
apt-get install-f
不需要
<package>
作为参数。

apt-cdrom -d /media/cdrom0 add
加载光驱,

/dev/hdc /cdrom iso9660 user,noauto 0 0


用编辑器修改一下存盘,重启,应该可以了。

然后,
apt-cdrom -d /cdrom add


apt-get install


gcc相关的软件会自动装入。

注:apt不会认你手动挂载的光驱,如果fstab中设置不对apt不会正常工作。

apt-cdrom -d /media/cdrom0 add
加载光驱,需要使用#mkdir /media/cdrom0 否则会错误提示说“无法读取文件系统挂载点/media/cdrom的状态 -stat(2 没有那个文件或目录)”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息