Que*_*ark 2 bash permissions debian sudo not-root-user
我sudoer在我的 Debian 机器上设置为 a ,并且我一直使用它来安装软件等......我遇到了这个有趣的情况,我正在挠头:
我尝试使用以下命令在 apt 中启用精美的进度条:
sudo echo 'Dpkg::Progress-Fancy "1";' > /etc/apt/apt.conf.d/99progressbar
Run Code Online (Sandbox Code Playgroud)
我有权限问题:
/etc/apt/apt.conf.d/99progressbar: Permission denied
Run Code Online (Sandbox Code Playgroud)
但是,如果 I su,则运行该命令,一切正常。
为什么会这样?
因为
sudo cmd > file
Run Code Online (Sandbox Code Playgroud)
被解释为
(sudo cmd) > file
Run Code Online (Sandbox Code Playgroud)
通过你的外壳。即重定向是作为您自己的用户完成的。
我绕过的方式是使用
cmd | sudo tee file
Run Code Online (Sandbox Code Playgroud)
另外:这也将cmd在您的控制台上显示输出,如果您不希望您必须重定向它。
| 归档时间: |
|
| 查看次数: |
1316 次 |
| 最近记录: |