1. 本文是为了帮助和我一样被网上不良帖子误导,修改path导致系统path被污染,处于所有shall命令无法使用的窘境而写的。
2. 本文需要安装了MobaXterm或者xftp,并能正常通过这两个工具访问服务器为前提,本文用MobaXterm作为例子。
3. 读本文前你应该完全知道你修改了什么,如果不知道,或者不清楚,下文不用看了。
首先我们经常可以从这些帖子里发现这些修改语句:
修改.bash_profile文件的
vim ~/.bash_profile
#文件末尾添加
export PATH=PATH:/hadoop/hadoop-2.9.0/bin
#执行使环境变量生效
source ~/.bash_profile
修改profile的
vim /etc/profile
#文件末尾添加
export PATH=PATH:/hadoop/hadoop-2.9.0/bin
#执行使环境变量生效
source /etc/profile
这些帖子通常是各种地方粘贴过来,自己也不去验证,看似有用其实害人不浅,操作前务必要先看评论(如果有的话),同样警告自己。
正题:
解决思路:修改以后,我们发现除了source命令,其他所有shall命令均不可用(如果source命令你的机器上也不能用那就没辙了),既然我们修改的是.bash_profile或者profile文件,那么我们只要找到这两个文件,并且把我们修改的东西修改回来,再运行source命令即可。
重点:怎么找到这俩文件呢
- profile文件很好找,就上上面路径所显示的,/etc/profile,如图:
把这个文件下载下来,或者直接打开,删除自己添加的东西,下载修改的要再传上去覆盖,然后source /etc/profile,重新开一个Session,进入服务器。这时新的Session应该是可用的,但是老的还不能用,关了就好了。 - .bash_profile文件在/home/appadm/这个目录下,还是隐藏的文件,位置如图。
把这个文件下载下来,或者直接打开,删除自己添加的东西,下载修改的要再传上去覆盖,然后source ~/.bash_profile,重新开一个Session,进入服务器。同样这时新的Session应该是可用的,但是老的还不能用,关了就好了。
网上有不少说这样的方法恢复:找一台一样的系统Centos,将/etc/profile文件拷贝的故障系统的/etc目录下,然后使用命令“#source /etc/profile”,就可以恢复了。
笔者没有试过,但是提出这样的方法的人简直无语,除了空的操作系统或是专门备份过的,尤其是公司里的机器操作系统版本一样就已经烧高香了,上哪里找到一个完全一样的profile?典型出点子不过脑子。
提醒,重要的事情说3遍
修改系统文件前,备份
修改系统文件前,备份
修改系统文件前,备份
按照帖子操作前,看评论
按照帖子操作前,看评论
按照帖子操作前,看评论