bashrc 和 bash_profile 似乎都无法获取?VirtualMin 全新安装

bashrc 和 bash_profile 似乎都无法获取?VirtualMin 全新安装

我不太熟悉 nix 服务器上这种级别的管理,但是我无法在登录时获取 bashrc 或 bash_profile 源。

有关服务器的详细信息:

  • Centos 6.0 - 基本 GUI 安装
  • Virtualmin 服务器管理器

我通过 Windows PC 上的 ssh 和 putty 以我在 Virtualmin 模块中创建的用户身份登录。.bash_profile 中包含以下内容:

 PATH=$PATH:$HOME/bin
 export PATH

我在该用户的主目录中创建了一个 bin 目录,并将我的应用程序放在其中,但是注销并登录后没有任何变化。当我发现它在 bash 配置文件中不起作用时,我也尝试在 bashrc 文件中添加相同的两行。

到目前为止,我可以通过输入 source .bash_profile 来解决这个问题,但这很繁琐。我以为我可以通过制作 bash shell 脚本来节省一些时间,但遗憾的是我不能简单地输入 ./script.sh,我必须输入 source ~/script.sh 才能使其在当前 shell 下生效。

我如何加载这些脚本?是不是因为 virtualmin 禁用了用户配置文件?是不是因为通过 ssh 登录会阻止它们加载?是不是因为使用 gui 安装 Centos 6 会禁用终端中的配置文件加载,无论它们是否通过 ssh 进行隧道传输?

感谢您的帮助。

Bash Profile 的全部内容:

 # .bash_profile

 # Get the aliases and functions
 if [ -f ~/.bashrc ]; then
         . ~/.bashrc
 fi

 # User specific environment and startup programs


 PATH=$PATH:$HOME/bin
 export PATH

答案1

这里有很多问题,但提供的信息并不多。不过,以下是一些尝试:

我要检查的第一件事是查看登录时 PATH 是否已设置。要检查这一点,请登录终端并输入echo $PATH。如果您添加的内容在那里,那么很好,继续下一个问题。如果它们不在那里,那么我会验证您是否确实使用 运行 bash echo $SHELL。如果是,您能否检查 ~/.bashrc 或 ~/.bash_profile 中是否设置了任何内容?我会找一些无害的东西并进行更改,然后注销并重新登录以查看它是否生效(或者只添加类似 的内容FOO="bar";export FOO,然后在使用 登录后进行测试echo $FOO)。如果您的 .bashrc 和 .bash_profile 没有运行,我会检查 .profile 是否正在运行,然后还要检查 /etc/profile 和 /etc/rc/bash.bashrc 是否存在并正确调用用户的配置文件。

如果您发现事情确实进入了 .bash_profile,那么我会检查以确保您的脚本及其所在的目录具有适当的权限、可执行,并且该目录实际上位于您的路径中(也许在您设置路径变量后,还有其他东西在设置它并覆盖您的更改?)。

如果这些都不起作用,那么请在此处发布以下内容,也许我们能够看到更多:

env
echo $SHELL
echo $PATH
cat ~/.bashrc
cat ~/.profile
cat ~/bash_profile
cat /etc/profile
cat /etc/bash.bashrc

相关内容