本文介绍在Ubuntu系统的ECS实例中Apt-get安装使用方法及常见问题解决方案。
如何通过Apt-get安装软件
通过Apt-get在线安装软件,下述操作以安装Nginx为例。
远程连接Ubuntu实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
执行如下命令,安装Nginx软件。
apt-get install nginx
系统显示类似如下,表示是否继续安装Nginx。
根据提示信息,输入
Y
确认后,开始安装软件,直至软件安装完成。软件安装完成后,执行如下命令,列出软件包所在的目录,及该软件包中的所有文件。
dpkg -L nginx
执行如下命令,安装Nginx。
dpkg -l nginx
Apt-get常见问题
通过Apt-get安装软件时,提示“error processing package install-info (--configure)”错误怎么办?
问题现象
在Ubuntu系统的ECS实例中,通过Apt-get安装软件时提示“error processing package install-info (--configure)”错误。
问题原因
可能是由于Ubuntu软件包损坏,导致软件安装失败。
解决方案
请参考以下操作进行apt源更新同步,重新安装软件。
远程连接Ubuntu实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
将info文件夹更名。
mv /var/lib/dpkg/info/ /var/lib/dpkg/info.bak.old/
新建一个新的info文件夹。
mkdir /var/lib/dpkg/info/
执行如下命令,进行apt源更新同步。
apt-get update
执行如下命令,重新安装xxxxx软件,若不再提示以上报错信息,则表示问题已修复。
apt-get install xxxxx
通过Apt-get安装软件或更新时,提示“Segmentation faultsts”错误怎么办?
问题现象
在Ubuntu系统的ECS实例中,通过Apt-get安装软件或更新时提示“Segmentation faultsts”错误。
问题原因
可能是由于apt的cache出现冲突,导致软件安装或更新失败。
解决方案
请参考以下操作进行apt源更新同步。
远程连接Ubuntu实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
将
/var/cache/apt/
目录进行备份。备份完成后,执行如下命令,删除
/var/cache/apt/
目录中所有.bin
文件。rm /var/cache/apt/*.bin
执行如下命令,进行apt源更新同步。
apt-get update
测试是否可以正常使用apt-get。
说明如果实例内存配置过低(比如内存大小只有512MB)的情况下,当提示“Segmentation faultsts”错误时,您还可以使用top命令检查内存使用情况,将一些非必须的进程先暂时关闭,再尝试执行apt-get。
通过Apt-get安装软件时,提示“Reading package lists... Error!”错误怎么办?
问题现象
在Ubuntu系统的ECS实例中,通过Apt-get安装软件时出现类似如下报错信息。
Reading package lists... Error! E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/AZ.archive.ubuntu.com_ubuntu_dists_natty_main_i18n _Translation-en E: The package lists or status file could not be parsed or opened.
问题原因
软件包列表损坏,导致软件安装报错。
解决方案
请参考以下操作清除已损坏的列表,重新生成更新列表。
执行如下命令,清除目录下已经损坏的列表。
rm -rf /var/lib/apt/lists/*
执行如下命令,重新生成更新列表。
apt-get update
再次安装软件,若不再提示以上报错信息,则表示问题已修复。
执行apt-get install unzip或aptitude install unzip命令时,提示“Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]”错误怎么办?
问题现象
在Ubuntu系统的ECS实例中,执行apt-get install unzip
或aptitude install unzip
命令时,提示如下错误提示。
Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]
Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]
Error http://mirrors.aliyun.com/ubuntu/ trusty-updates/main unzip amd64 6.0-9ubuntu1.1 404 Not Found [IP: 112.124.XXX.XXX 80]
问题原因
该问题通常是由于初始系统中的软件版本库与apt源中的版本不一致(即apt-get请求的资源在apt源中不存在)所导致的。
解决办法
请参考以下操作进行apt源更新同步。
远程连接Ubuntu实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
执行如下命令,进行apt源更新同步。
apt-get update
源更新同步完成后,通过使用
apt-get install
命令安装所需软件。
执行apt-get update命令时,提示“The following signatures were invalid: KEYEXPIRED 1544811256”错误怎么办?
问题现象
在Ubuntu系统的ECS实例中,执行apt-get update
命令时,提示以下信息。
The following signatures were invalid: KEYEXPIRED 1544811256
问题原因
由于使用的软件源签名到期,导致更新报错。
解决方案
请参考以下操作更新已过期的key。
远程连接Ubuntu实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
执行以下命令,获取过期的key。
sudo apt-key list | grep -A 1 expired
执行以下命令,更新过期的key。
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys [$Key]
说明[$Key]指的是之前获取到的过期的key。
重新执行以下命令,进行apt源更新同步。
apt-get update