Ubuntu的apt-get命令以及一些常见错误

apt-get基本命令

常用命令

命令 含义
apt-cache search package 搜索包
apt-cache show package 获取包的相关信息,如说明、大小、版本等
apt-cache depends package 了解使用依赖
apt-cache rdepends 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 package –purge 删除包,包括删除配置文件
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安装的包
sudo apt-get dist-upgrade 升级系统
sudo apt-get dselect-upgrade 使用dselect升级
sudo apt-get build-dep package 安装相关的编译环境
apt-get sourcepackage 下载该包的源代码
sudo apt-get clean && sudo apt-get autoclean 清理无用的包
apt-key add filename 增加软件包的公钥信息,如果filename为“-”,则从标准输入中导入公钥信息
apt-key del keyid 从可信公钥中移除指定keyid的公钥
apt-key list 方法查看已有公钥信息,/etc/apt/sources.list 存储软件源二进制包更新地址

apt仓库增加新的软件包

$wget -O - http://packages.elasticsearch.org/GPG-KEY-elasticsearch | sudo apt-key add -

$sudo echo "deb http://packages.elasticsearch.org/elasticsearch/1.1/debian stable main" >> /etc/apt/sources.list

$ sudo apt-get update
$ sudo apt-get install elasticsearch

系统和和软件更新

// 优先更新仓库源
# apt-get update
# apt-get upgrade

更新指定软件版本

// 已安装python2,想升级到python3
# apt-get update
# apt-get install python3

卸载指定软件

// 删除python3 软件包,不包括配置文件
# apt-get remove python3
// 删除python3 软件包,包括配置文件
# apt-get purge python3
// 删除python3 软件包和其依赖软件包
# apt-get autoremove python3
// 删除python3 软件包和其依赖软件包、配置文件
# apt-get --purge autoremove python3

重装指定软件

// 重装指定软件,这里重装桌面
# apt-get --reinstall install ubuntu-desktop

在软件仓库中检索某软件

// 在apt仓库中检索python3 
# apt-cache search python3

Ubuntu使用apt-get时常见错误

apt-get “Reading package lists… Error!”

/* 
    解决方法:
        更新源,再重新执行apt-get命令
*/
$ sudo apt-get update

“The volume “boot” has only 0 bytes disk space remaining” error

/* 
    解决方法:
        使用 apt-get  autoremove 命令清理无用的安装依赖
*/
// 清理前,boot使用率达到%96
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            474M     0  474M   0% /dev
tmpfs            99M  6.3M   93M   7% /run
/dev/sda3        18G  7.5G  9.3G  45% /
tmpfs           492M  212K  492M   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           492M     0  492M   0% /sys/fs/cgroup
/dev/sda1       180M  159M  8.3M  96% /boot
tmpfs            99M   64K   99M   1% /run/user/1000

$ sudo apt-get update
$ sudo apt-get autoremove

// 清理过之后,boot使用率降到了61%
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            474M     0  474M   0% /dev
tmpfs            99M  6.3M   93M   7% /run
/dev/sda3        18G  7.2G  9.5G  44% /
tmpfs           492M  212K  492M   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           492M     0  492M   0% /sys/fs/cgroup
/dev/sda1       180M  101M   67M  61% /boot
tmpfs            99M   68K   99M   1% /run/user/1000

apt-get install时安装依赖问题

如下面所示:

# apt-get install python3-pip
The following packages have unmet dependencies:
 python3-pip : Depends: python3-setuptools but it is not going to be installed
               Recommends: build-essential but it is not going to be installed
               Recommends: python3-dev (>= 3.2) but it is not going to be installed

解决方案1:

// 更新源,如果不行,多更新几次试试重新安装
# apt-get update 

解决方案2:

// 安装aptitude工具,实现依赖自动安装,依赖版本自动降级或升级
# apt-get install aptitude
# aptitude install python3-pip

使用apt-get安装软件包时中途杀死进行后出错

// 清除 /var/cache/apt/archive目录下缓存的deb文件
# apt-get clean
// 删除/var/cache/apt/archive/lock文件和/var/lib/dpkg/lock文件
# rm /var/cache/apt/archive/lock
# rm /var/lib/dpkg/lock

// 删除未完成安装的软件包和配置文件
# dpkg --remove --force-all  软件包名
# dpkg --force-remove-reinstreq 软件包名

apt是一个高层的管理工具,负责deb包源的管理,可以进行安装卸载软件包,其低层调用了dpkg负责deb包的安装卸载。其中deb在整个安装过程中有很多个状态 not-installed, half-installed, installed 等等,具体可查阅dpkg信息。因此deb安装的整个过程被详细的记录在apt或dpkg的状态文件中,所以,遇到安装问题时首先使用apt管理工具处理源相关问题或者deb包下载、安装和卸载问题,当遇到关于dpkg相关问题时优先查阅dpkg文档进行解决。

很多时候,网上检索相似问题可以得到答案,如果没有头绪,可以查阅命令的帮助文件,一般都可以解决。

参考

ubuntu安装和查看已安装
官方资料

你可能感兴趣的:(Linux)