![我对 bashrc 或 UNIX 中的某些内容做了一些操作,不再在 sudoers 文件中列出,并且无法访问目录](https://linux22.com/image/172048/%E6%88%91%E5%AF%B9%20bashrc%20%E6%88%96%20UNIX%20%E4%B8%AD%E7%9A%84%E6%9F%90%E4%BA%9B%E5%86%85%E5%AE%B9%E5%81%9A%E4%BA%86%E4%B8%80%E4%BA%9B%E6%93%8D%E4%BD%9C%EF%BC%8C%E4%B8%8D%E5%86%8D%E5%9C%A8%20sudoers%20%E6%96%87%E4%BB%B6%E4%B8%AD%E5%88%97%E5%87%BA%EF%BC%8C%E5%B9%B6%E4%B8%94%E6%97%A0%E6%B3%95%E8%AE%BF%E9%97%AE%E7%9B%AE%E5%BD%95.png)
我使用的是 REDHAT/CENTOS 6.5。
我曾经可以访问目录,但现在当我在 UNIX 重新启动后尝试进入它们时,它告诉我权限被拒绝。
在这些目录上使用 stat 命令,似乎我的用户(不是 root)无法再访问这些目录,即使我用这个用户创建了它们。我可能已经损坏、删除了我的.bashrc
文件或其他文件或对其进行了某些操作 - 我是 UNIX 新手。
然后,我尝试sudo chmod go+rx
该目录,它要求输入用户名密码,我输入它,它说“user”(用户是我本地的用户名)不在 sudoers 文件中,并且将报告此事件。
我想我删除了根目录中的一些文件。
我做了什么或删除了什么导致发生这种情况以及如何修复它?
另外,当我现在更改为 root 用户时,命令行只显示 -bash-4.1 而没有其他内容。我一定是删除了根目录中的某些内容或其他内容。我是 UNIX 新手,所以我不确定。
这个问题可以解决吗?
更新:现在看来我也无法在目录中写入任何内容。
答案1
首先,使用 root 身份su -
修复根目录的 homedir:
mkdir /root
cp -a /etc/skel/.* /root/
确保您自己的用户名在wheel
组中:
usermod -a -G wheel yourusername
确保wheel组可以sudo。/etc/sudoers
使用以下命令打开visudo
并确保此行存在且未注释(#
行开头没有注释):
%wheel ALL=(ALL) ALL
重启。