![root 的 .bashrc 在哪里?](https://linux22.com/image/1271755/root%20%E7%9A%84%20.bashrc%20%E5%9C%A8%E5%93%AA%E9%87%8C%EF%BC%9F.png)
我知道这不是最佳实践,但在我的开发系统上我以 root 身份登录。.bashrc 文件的等效文件是什么,以便我可以为某些函数设置别名?
我找到了/etc/bash.bashrc
&/etc/bash.bashrc.local
但我不确定将命令放在哪里。
运行 x86_64 SUSE。
谢谢,mjb。
答案1
最好将它们放在 ~/.bashrc 中。在某些发行版中,root 似乎默认没有获得正常的权限,但你只需cp /etc/skel/.bash* ~
修复它即可。
答案2
那么 root 的主目录 /root/ 怎么样?
从某些方面来看,root 只是另一个用户(只是更好,并且允许更多)。root 有一个主目录,但它不像 /home/ 中的其他用户,而只是 /root/,所以 root:s .bashrc 就是 /root/.bashrc
/etc 中的设置是针对所有用户(包括 root)的系统特定设置。
感谢 grawity 指出您可以使用 ~root 指向根主目录,无论它在哪里。
你可以用以下方法测试
$> echo ~root
/root
因此,即使 /root 可以在 99% 的系统上运行,~root 可能更具可移植性,并且可以在 100% 的系统上运行。
~root/.bashrc
答案3
不要使用/root/.bashrc
尝试使用/root/.profile
— — 这是同样的事情,只是名称不同。
此外,如果你使用su
root 身份,它可能无法读取.bashrc
或.profile
- 仅发出su
不会运行登录脚本。尝试做
su -
答案4
通常,.bashrc
root 用户的文件应该在那里:/root/.bashrc
如果没有,您可以将以下 2 个文件复制到其中/root
,然后可以.bashrc
根据需要编辑该文件。
cp /etc/skel/.bash_profile /root
cp /etc/skel/.bashrc /root