/etc/dpkg/dpkg.cfg.d/multiarch:权限被拒绝

/etc/dpkg/dpkg.cfg.d/multiarch:权限被拒绝

我有 Ubuntu 14.04,我正在尝试安装 wine:i386 来使用 PlayOnLinux,如下所示本文。但是,当我运行:

sudo echo "foreign-i386 architecture"> /etc/dpkg/dpkg.cfg.d/multiarch

我收到这个错误/etc/dpkg/dpkg.cfg.d/multiarch: Permission denied

因为我还是 Ubuntu 新手,所以不知道手动更改权限来解决这个问题是否安全(或是否可取)。我应该怎么做才能解决这个问题?

编辑 这个问题的主要目的是安装 Wine,而不是语法本身(尽管语法是问题所在),接受的答案提供了更好的解决方法。

答案1

你有两个问题:

  • /etc/dpkg/dpkg.cfg.d/multiarch在命令运行之前,shell 以非特权用户身份打开文件echo,因此权限错误为仅root应能够创建文件或在其中写入。sudo仅适用于echo命令。

  • 该字符串foreign-i386 architecture对于启用架构的多架构支持不正确i386,正确的字符串是foreign-architecture i386

要修复这些问题,您可以执行以下操作:

sudo bash -c 'echo "foreign-architecture i386" >>/etc/dpkg/dpkg.cfg.d/multiarch'

或者

echo "foreign-architecture i386" | sudo tee -a /etc/dpkg/dpkg.cfg.d/multiarch

请注意,启用多架构并添加架构的最简单方法i386是:

sudo dpkg --add-architecture i386

sudo apt-get update启用多架构后不要忘记运行。

相关内容