可能的重复:
将标准输出重定向到您没有写入权限的文件
我正在尝试md5sum
为使用 Ubuntu 自定义工具包工具创建的 ISO 映像创建一个 。 ISO 由工具创建,必须使用sudo
, 在中运行
~/tmp/remaster-new-files/
其拥有权限:
drwxr-xr-x 2 root root remaster-new-files
所以我cd
到该目录并运行
sudo md5sum my.iso > my.iso.md5
我收到以下错误:
bash: my.iso.md5: Permission denied
我可以在其他地方创建 md5 和,然后sudo mv
将其移动到位,即命令成功时的位置sudo md5sum
。另外,如果我将用户更改为root
with sudo su root
,我可以md5sum
成功运行该命令。sudo
既然我可以用来sudo
将文件移动到该目录,为什么我不能用来在此目录中创建文件?
答案1
问题是重定向是从 shell 完成的前由于是当前用户运行该命令,所以sudo
不发挥作用。
改用
md5sum my.iso | sudo tee my.iso.md5