我在尝试安装多个软件包时遇到问题
例如,当我尝试这个时:
apt-get install php5-gd php5-idn php-pear php5-imagick php5-imap php5-json etc..
我得到:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package php5-gd php5-idn php-pear php5-imagick php5-imap php5-json
但我一次安装软件包没有问题。
我做错了吗?
答案 0 :(得分:1)
您没有使用管理员权限运行apt-get。为此,请确保使用sudo
在执行apt-get之前。
这是完整的命令:
sudo apt-get install php5-gd php5-idn php-pear php5-imagick php5-imap php5-json
答案 1 :(得分:1)
我在使用干净的ubuntu安装时遇到了同样的问题。运行
apt-get update
帮助,因为它提取了最新的包裹信息。
答案 2 :(得分:0)
您的错误消息讲述了这个故事:致电
时apt-get install does not exist but bash does
结果应为:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package does
E: Unable to locate package not
E: Unable to locate package exist
E: Unable to locate package but
E: Unable to locate package does
您只获得一行,这意味着您的shell本身或在apt-get
的shell中定义的任何别名或函数不会将单个包名称作为单个参数发送到实际可执行文件,而是作为一个长包含空格的参数。我认为这是tripleee所指出的。
要了解会发生什么:
type apt-get
apt-get is /usr/bin/apt-get
apt-get is a function
或apt-get is aliased to ...
,则表示您有答案答案 3 :(得分:0)
我认为这可能是一个复制粘贴/行结尾问题。 尝试将包含长列表包的行放在自己的shell文件中,然后运行。以下似乎可靠地运作:
E.g:
gedit installer.sh
然后粘贴长行并保存:
sudo apt-get install php-gd php-pear php-imagick php-imap php-json
然后设置权限并运行:
chmod +x installer.sh
./installer.sh