我在我的Web服务器(Nginx)文件夹中有五个文件:
我想结合crt文件。 但我的命令不工作。 我正在使用猫命令。 请看下面的命令。
ubuntu@ip:/etc/nginx/ssl$ sudo cat cert_www.Mydomain.com.crt subca1_www.Mydomain.com.crt rootca_www.Mydomain.com.crt > www.Mydomain.com.pem -bash: www.Mydomain.com.pem: Permission denied
我不明白,不确定发生了什么问题。
发生这种情况是因为shellredirect适用于非特权shell; 它没有得到sudo的好处。
只需获得一个常规的root shell(运行sudo -i ),然后再次运行该命令。 这样做有一些棘手的方法(比如通过sudo teepipe道),但是简单的交互式会话是不值得的。
阐释:
你有两个“权限上下文”。 所以,你的单行使用这些上下文:
(sudo cat cert_www.Mydomain.com.crt subca1_www.Mydomain.com.crt rootca_www.Mydomain.com.crt) (>www.Mydomain.com.pem) ^Running with "root" user context ^Running with "ubuntu" user context
注意:当你使用'>'时,它不会在sudo“context”内运行。
解:
sudo cat cert_www.Mydomain.com.crt subca1_www.Mydomain.com.crt rootca_www.Mydomain.com.crt | sudo tee www.Mydomain.com.pem >/dev/null