Ubuntu下apt常用命令和源

[TOC]

apt-get常用命令

什么的是apt-get和apt有什么区别

新版本下 apt-get 可以直接用apt 取代,至少我在Ubuntu16.04以上都可以用apt命令

高级包装工具(英语:Advanced Packaging Tools,简称:APT)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。
APT可以自动下载,配置,安装二进制或者源代码格式的软 件包,因此简化了 Unix系统上管理软件的过程
apt-get命令一般需要root权限执行,所以一般跟着sudo命令。

因为,最常用的 Linux 包管理命令都被分散在了 apt-get、apt-cache 和 apt-config 这三条命令当中。
apt 命令的引入就是为了解决命令过于分散的问题,它包括了 apt-get 命令出现以来使用最广泛的功能选项,以及 apt-cache 和 apt-config 命令中很少用到的功能。

在使用 apt 命令时,用户不必再由 apt-get 转到 apt-cache 或 apt-config,而且 apt 更加结构化,并为用户提供了管理软件包所需的必要选项。

简单来说就是:apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合。

apt与apt-get之间的区别
通过 apt 命令,用户可以在同一地方集中得到所有必要的工具,apt 的主要目的是提供一种以「让终端用户满意」的方式来处理 Linux 软件包的有效方式。

apt 具有更精减但足够的命令选项,而且参数选项的组织方式更为有效。除此之外,它默认启用的几个特性对最终用户也非常有帮助。例如,可以在使用 apt 命令安装或删除程序时看到进度条。

apt 还会在更新存储库数据库时提示用户可升级的软件包个数。

如果你使用 apt 的其它命令选项,也可以实现与使用 apt-get 时相同的操作。

apt和apt-get命令差异

虽然 apt 与 apt-get 有一些类似的命令选项,但它并不能完全向下兼容 apt-get 命令。也就是说,可以用 apt 替换部分 apt-get 系列命令,但不是全部。

apt 命令取代的命令命令的功能
apt installapt-get install安装软件包
apt removeapt-get remove移除软件包
apt purgeapt-get purge移除软件包及配置文件
apt updateapt-get update刷新存储库索引
apt upgradeapt-get upgrade升级所有可升级的软件包
apt autoremoveapt-get autoremove自动删除不需要的包
apt full-upgradeapt-get dist-upgrade在升级软件包时自动处理依赖关系
apt searchapt-cache search搜索应用程序
apt showapt-cache show显示装细节

apt 还有一些自己的命令:

需要大家注意的是:apt 命令也还在不断发展, 因此,你可能会在将来的版本中看到新的选项。

新的apt命令命令的功能
apt list列出包含条件的包(已安装,可升级等)
apt edit-sources编辑源列表

apt-get 安装文件路径

ubuntu中由apt-get获得的文件包保存在
/var/cache/apt/archives;

通过apt-get命令下载的软件包,放在
/var/cache/apt/archives 目录下;

下载文件位置可以在
/etc/apt/source.list文件中指定。

apt-get常用命令和参数

用法

apt-get [选项] 命令 apt-get [选项] install|remove pkg1 [pkg2 ...]
apt-get [选项] source pkg1 [pkg2 ...]
apt-get 是一个下载安装软件包的简单命令行接口。 最常用的命令是update(更新) 和install(安装)。

命令和选项

命令:
    update - 重新获取软件包列表 
    upgrade - 更新指定的软件 
    install - 安装新的软件包 
    remove - 移除软件包,只删除软件,配置文件和依赖什么的都不动.
    autoremove - 自动移除全部不使用或无效的依赖包,有人说要慎用可能会删除当前软件不用而其他软件还在用的包,导致系统故障.
                 但是我认为不会,比如remove写在nginx的时候nginx就会提示如果要如果要卸载NGINX的依赖,要执行autoremove
    purge - 移除软件包和配置文件 
    source - 下载源码档案
    build-dep - 为源码包配置编译依赖 
    dist-upgrade - 发行版升级
    dselect-upgrade - 依照 dselect 的选择更新 
    clean - 清除下载的归档文件 
    autoclean - 清除旧的的已下载的归档文件 
    check - 检验是否有损坏的依赖 

选项: 
    -h 本帮助文件。 
    -q 输出到日志 - 无进展指示 
    -qq 不输出信息,错误除外 
    -d 仅下载 - 不安装或解压归档文件 
    -s 不实际安装。模拟执行命令
    -y 假定对所有的询问选是,不提示 
    -f 尝试修正系统依赖损坏处 
    -m 如果归档无法定位,尝试继续
    -u 同时显示更新软件包的列表 
    -b 获取源码包后编译 -V 显示详细的版本号
    -c=? 阅读此配置文件
    -o=? 设置自定的配置选项,如 -o dir::cache=/tmp

常用实例

apt-cdrom [参数] 命令   通过挂载ISO文件进行安装
apt-cache search packagename 搜索包
apt-cache show packagename 获取包的相关信息,如说明、大小、版本等
apt-get install packagename 安装指定的包
apt-get install packagename --reinstall 重新安装包
apt-get -f install 修复安装”-f = –fix-missing”
apt-get remove packagename 仅删除安装包
apt-get remove packagename --purge 删除包,包括删除配置文件等
apt-get update 更新源
apt-get upgrade [packagename] 更新已安装的包
apt-get dist-upgrade 升级系统
apt-get dselect-upgrade 使用 dselect 升级
apt-cache depends packagename 了解使用依赖
apt-cache rdepends packagename 是查看该包被哪些包依赖
apt-get build-dep packagename 安装相关的编译环境
apt-get source packagename 下载该包的源代码
apt-get clean 清理无用的包缓存中的所有包
apt-get autoclean [packagename] 清理包缓存中的所有包
apt-get check 检查是否有损坏的依赖
apt-get install -y redis-server mysql-server-5.7  mongodb-server composer   一次安装多个应用

彻底卸载

删除软件及其配置文件
apt-get --purge remove <package>

删除没用的依赖包
apt-get autoremove <package>

其中 rc 状态的包即卸载了包却保留了配置文件。
此时dpkg的列表中有“rc”状态的软件包,可以执行如下命令做最后清理:
dpkg -l | grep ^rc | awk '{print $2}' | sudo xargs dpkg -P

如果要删除暂存的软件安装包,再使用clean命令。

我的卸载案例

apt purge nginx
apt autoremove nginx
dpkg -l |grep ^rc |awk '{print $2}' | sudo xargs dpkg -P

dpkg

注意

Ubuntu,不知道软件给安到哪里。可以用下面的dpkg -L命令来查看.

  • ii 表示软件正常安装
  • rc 表示软件已卸载,可是配置文件还在。

一个一个查找删除已失效的包非常的麻烦,好在我们可以通过grep 命令来做,可以通过以下命令进行清理已失效的软件包。

dpkg -l | grep ^rc | cut -d' ' -f3 | sudo xargs dpkg --purge

apt和dpkg两者的区别

  • 是dpkg绕过apt包管理数据库对软件包进行操作,所以用dpkg安装过的软件包用apt可以再安装一遍,将会覆盖之前dpkg的安装。
  • apt是会解决和安装模块的依赖问题,并会咨询软件仓库,是在线安装。
  • dpkg只能安装本地的deb文件,不会关心Ubuntu的软件仓库内的软件,不会解决模块的依赖关系。
  • dpkg安装是不会自动搜索安装该软件包的依赖项,如果安装该软件包有问题的话建议在执行依赖修复sudo apt-get install -f(尝试修正系统依赖损坏处)再用dpkg安装deb软件包

dpkg常用命令

常用参数

-i <.deb file name> 安装软件
-R  安装一个目录下面所有的软件包
–unpack package_file    释放软件包,但是不进行配置(如果和-R一起使用,参数可以是一个目录)
–configure package_file    重新配置和释放软件包(如果和-a一起使用,将配置所有没有配置的软件包)
-r  删除软件包(保留其配置信息)
–update-avail <Packages-file>   替代软件包的信息
–merge-avail <Packages-file>    合并软件包信息
-A package_file 从软件包里面读取软件的信息
-P  删除一个包(包括配置信息)
–forget-old-unavail 丢失所有的Uninstall的软件包信息
–clear-avail    删除软件包的Avaliable信息
-C  查找只有部分安装的软件包信息
–compare-versions ver1 op ver2  比较同一个包的不同版本之间的差别
–help   显示帮助信息
–licence (or) dpkg –license 显示dpkg的Licence
–version    显示dpkg的版本号
-b direc×y [filename]   建立一个deb文件
-c filename 显示一个Deb文件的目录
-I filename [control-file]  显示一个Deb的说明
-l package-name-pattern 搜索Deb包
-l  显示所有已经安装的Deb包,同时显示版本号以及简短说明
-s package-name 报告指定包的状态信息
-L package-Name 显示一个包安装到系统里面的文件目录信息
-S filename-search-pattern  搜索指定包里面的文件(模糊查询)
-p package-name 显示包的具体信息

常用参数的案例

  • 安装软件
  1. 命令行:dpkg -i <.deb file name>
  2. 示例:dpkg -i avg71flm_r28-1_i386.deb
  • 安装一个目录下面所有的软件包
  1. 命令行:dpkg -R
  2. 示例:dpkg -R /usr/local/src
  • 释放软件包,但是不进行配置
  1. 命令行:dpkg –unpack package_file 如果和-R一起使用,参数可以是一个目录
  2. 示例:dpkg –unpack avg71flm_r28-1_i386.deb
  • 重新配置和释放软件包
  1. 命令行:dpkg –configure package_file 如果和-a一起使用,将配置所有没有配置的软件包
  2. 示例:dpkg –configure avg71flm_r28-1_i386.deb
  • 删除软件包(保留其配置信息)
  1. 命令行:dpkg -r
  2. 示例:dpkg -r avg71flm
  • 替代软件包的信息
  1. 命令行:dpkg –update-avail <Packages-file>
  • 合并软件包信息 dpkg –merge-avail <Packages-file>
  • 从软件包里面读取软件的信息
  1. 命令行:dpkg -A package_file
  • 删除一个包(包括配置信息)
  1. 命令行:dpkg -P
  • 丢失所有的Uninstall的软件包信息
  1. 命令行:dpkg –forget-old-unavail
  • 删除软件包的Avaliable信息
  1. 命令行:dpkg –clear-avail
  • 查找只有部分安装的软件包信息
  1. 命令行:dpkg -C
  • 比较同一个包的不同版本之间的差别
  1. 命令行:dpkg –compare-versions ver1 op ver2
  • 显示帮助信息
  1. 命令行:dpkg –help
  • 显示dpkg的Licence
  1. 命令行:dpkg –licence (or) dpkg –license
  • 显示dpkg的版本号
  1. 命令行:dpkg –version
  • 建立一个deb文件
  1. 命令行:dpkg -b direc×y [filename]
  • 显示一个Deb文件的目录
  1. 命令行:dpkg -c filename
  • 显示一个Deb的说明
  1. 命令行:dpkg -I filename [control-file]
  • 搜索Deb包
  1. 命令行:dpkg -l package-name-pattern
  2. 示例:dpkg -I vim
  • 显示所有已经安装的Deb包,同时显示版本号以及简短说明
  1. 命令行:dpkg -l
  • 报告指定包的状态信息
  1. 命令行:dpkg -s package-name
  2. 示例:dpkg -s ssh
  • 显示一个包安装到系统里面的文件目录信息
  1. 命令行:dpkg -L package-Name
  2. 示例:dpkg -L apache2
  • 搜索指定包里面的文件(模糊查询)
  1. 命令行:dpkg -S filename-search-pattern
  • 显示包的具体信息
  1. 命令行:dpkg -p package-name
  2. 示例:dpkg -p cacti

dpkg和apt命令对比

安装:

#本地安装
dpkg -i package.deb
#在线安装
apt-get install package
#同上
aptitude install package

卸载:

#删除软件
dpkg -r package
#同上
apt-get remove package
#同上
aptitude remove package
#删除软件和配置文件
dpkg -P package
#同上
apt-get remove package --purge
#同上
aptitude purge package
#卸载软件包
remove
#卸载所有自动安装且不再使用的软件包
autoremove
#卸载并清除软件包的配置
purge

Ubuntu常用源

16.04 apt源 > 官方

    deb http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
    deb http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
    deb http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
    deb http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
    ##测试版源
    deb http://cn.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse
    # 源码
    deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
    deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
    deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
    deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
    ##测试版源
    deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse

16.04 apt源 > 163

deb http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
##测试版源
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse
# 源码
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
##测试版源
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse

16.04 apt源 > aliyun

deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse

16.04 apt源 > 集合

deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
# 源码
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

deb http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
##测试版源
deb http://cn.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse
# 源码
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
##测试版源
deb-src http://cn.archive.ubuntu.com/ubuntu/ xenial-proposed main restricted universe multiverse

18.04 apt源 > 163

通过重定向直接输出到sources.list中,在docker中初始化时也能用

apt-get -y clean\
	&& echo "deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse" > /etc/apt/sources.list \
	&& echo "deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse" >> /etc/apt/sources.list \
	&& echo "deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse" >> /etc/apt/sources.list \
&& apt-get -y update \
&& apt-get -y install sudo git vim curl wget net-tools iputils-ping\
&& echo "set paste" >> ~/.vimrc \
&& echo "set encoding=utf-8" >> ~/.vimrc \
&& echo "set fileencodings=gb2312,utf-8" >> ~/.vimrc \
&& echo "set fileencoding=gb2312" >> ~/.vimrc \
&& echo "set termencoding=utf-8" >> ~/.vimrc \
&& echo "set nu" >> ~/.vimrc \
&& echo "set ts=4" >> ~/.vimrc \
&& echo "set confirm" >> ~/.vimrc \
&& echo "syntax on" >> ~/.vimrc \
&& echo "set showmatch" >> ~/.vimrc \
&& echo "set encoding=utf-8" >> ~/.vimrc \
&& echo "set shiftwidth=4" >> ~/.vimrc \
&& echo "set ai" >> ~/.vimrc \
&& echo "set ruler" >> ~/.vimrc \
&& echo "set helplang=cn" >> ~/.vimrc \
&& echo "set hlsearch" >> ~/.vimrc \
&& echo "set cursorline" >> ~/.vimrc \
&& echo "set laststatus=2" >> ~/.vimrc \
&& echo "set flash" >> ~/.vimrc \
&& echo "set autoindent" >> ~/.vimrc \
&& echo "set smartindent" >> ~/.vimrc \
&& echo "set hls" >> ~/.vimrc \
&& echo "set hlsearch" >> ~/.vimrc \
&& echo "set lbr" >> ~/.vimrc \
&& echo "set nowrap" >> ~/.vimrc \
&& echo "set nows" >> ~/.vimrc \
&& echo "filetype plugin on" >> ~/.vimrc \
&& echo "autocmd FileType php set omnifunc=phpcomplete#CompletePHP" >> ~/.vimrc \
&& echo "autocmd FileType lua set omnifunc=luacomplete#CompleteLUA" >> ~/.vimrc \
&& echo "autocmd FileType python set omnifunc=pythoncomplete#CompletePYTHON" >> ~/.vimrc \
&& echo "autocmd FileType bash set omnifunc=bashcomplete#CompleteBASH" >> ~/.vimrc 

普通链接

deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse

18.04 apt源 > 阿里云

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

18.04 apt源 > 中科大

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

转载于:https://my.oschina.net/chinaliuhan/blog/3065297

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值