今天在输入下面一条命令时产生的这个问题:
sudo cat hosts.patch >> /etc/hosts
系统提示Permission Denied:
-bash: /etc/hosts: Permission denied
产生这个问题的过程是这样的:
这个命令被分解为两步先后执行,首先会执行
sudo cat hosts.patch
# 这一条命令是具有sudo权限的,也就是以root身份执行的
根据后面的 >> /etc/hosts,得到输出后shell需要把它重定向到hosts文件里,
但是这个过程并没有sudo的支撑,当让就不能打开hosts文件,把内容添加进去。(hosts文件需要root来操作)
所以就会出现Permission Denied错误。
要解决这个问题,是需要把整个“cat hosts.patch >> /etc/hosts”都用sudo来执行就行,
比如说:sudo sh -c "cat hosts.patch >> /etc/hosts"
或者:echo "cat hosts.patch >> /etc/hosts" | sudo sh
这里有涉及到了有关shell的执行过程的知识,我需要去恶补一下了…………
分享到:
相关推荐
linux bash shell脚本文件.sh,自动输入sudo的密码 在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码
博客附带的附件,有利于问题的解决,Ubuntu下删除 sudo文件的问题解决!
#1.root执行sudo时不需要输入密码(eudoers文件中有配置root ALL=(ALL) ALL这样一条规则) #2.欲切换的身份与执行者的身份相同,不需要输入密码 3./etc/sudoers文件设置为允许用户在不输入该用户的密码的情况下使用...
从Kali-Linux(2020.3 64位)里面提取出来的su和sudo文件,放在这里供大家使用。
主要介绍了详解Linux下的sudo及其配置文件/etc/sudoers的详细配置的相关资料,需要的朋友可以参考下
错误配置的功能,sudo和suid二进制文件的自动特权升级。 特征 使用错误配置的sudo权限自动升级特权。 使用错误配置的suid权限自动升级特权。 使用错误配置的功能自动升级特权。 支持Python 2和3。 无需第三方库...
其中包括一些建议,即 Powershell 和 Hosts 文件,但是您可以指定任何可执行文件的路径,并使用具有完全管理特权的 M2-Team NSudo 运行它。例如,您可以使用管理员权限启动命令提示符。 如果通过命令控制台启动 M2-...
一、sudo命令 概念: sudo是linux下常用的允许普通用户使用超级用户权限的工具,...3、sudo使用时间戳文件–日志 来执行类似的“检票”系统。当用户调用sudo并且输入它的密码时,用户获得了一张存活期为5分钟的票(这个
sudo1.9.5p2升级包及升级命令
须藤编辑 使用 sudo 打开文件的实用程序
sudo 与 su 两个命令的最大区别是:sudo 命令需要输入当前用户的密码...sudo 命令只允许使用提升的权限运行单个命令,而 su 命令会启动一个新的 shell,同时允许使用 root 权限运行尽可能多的命令,直到明确退出登录。
从细节上给你讲解su和sudo的区别, 1 就是说从sudo切入进去的root并不是真正的root,而是具有root的某方面权限而已.. 也就是说 从sudo切入进去的,跟输入root 再输入密码的.两种情况权限可能不相同的...对吗...
sudo.pdf
使用sudo apt-get 安装PCL
“Sudo”是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的“权利”,让他们执行一些只有超级用户或其他特许用户才能完成的任务,或者编辑一些系统配置文件。这样以来,就不仅减少...
此为centos6版的最新sudo-1.9.9.rpm包,修复修复CVE-2021-3156漏洞。 升级步骤: 1、将RPM包上传到服务器上, 2、执行升级命令: # rpm -Uvh sudo-1.9.9-1.el6.x86_64.rpm 3、执行完毕后,查询sudo版本: # sudo -V
linux不能使用sudo命令解决方案,username is not in the sudoers file
termux-sudo, 为Termux提供sudo的bash脚本 termux为Termux提供sudo的bash脚本Termux是面向Android的终端 模拟器 和Linux环境需求带su二进制的根SUDO无法在没有ldap的情况下工作安装英镑下载sudo到电话并提取打开 ...
此为centos7版的最新sudo-1.9.9.rpm包,修复修复CVE-2021-3156漏洞。 升级步骤: 1、将RPM包上传到服务器上, 2、执行升级命令: # rpm -Uvh sudo-1.9.9-1.el7.x86_64.rpm 3、执行完毕后,查询sudo版本: # sudo -V
修复sudo漏洞