我正在尝试为Linux内核中所做的修改创建一个补丁文件。
原始目录为/usr/src/linux.vanilla ,新内核为/usr/src/linux-master 。
我使用的命令是
h@ubuntu:/usr/src$ sudo diff -rupN linux-master/ linux.vanilla/ > original.patch
但是我得到一个错误说明
bash: original.patch: Permission denied
谁能指出我要去哪里了。我正在使用Ubuntu和Linux内核版本3.15.0。
谢谢。
最佳答案
您在终端中键入的命令是这样的:
sudo diff -rupN linux-master/ linux.vanilla/ > original.patch
这将以root身份运行:
diff -rupN linux-master/ linux.vanilla/
然后使用普通用户帐户,将输出内容写入
original.patch
但是,您没有对
original.patch
的写入权限。修复1
在root shell下进行工作。
sudo su
diff -rupN linux-master/ linux.vanilla/ > original.patch
修复2
使用
tee
重定向到文件。sudo diff -rupN linux-master/ linux.vanilla/ | sudo tee original.patch
修复3
将文件写入主目录(或您具有写许可权的其他位置)。
sudo diff -rupN linux-master/ linux.vanilla/ > ~/original.patch