Ubuntu设置环境变量错误导致系统无法登录解决方法


您的会话只持续了不到10秒钟。如果您没有注销,这就意味着Ubuntu安装可能出现了问题,或者您的磁盘空间已耗尽。可以试试以某个安全模式会话登录,以便查看是否可以解决此问题。

查看细节(~/.xsession-errors文件)
/etc/gdm/Xsession:Beginning session setup…
/etc/profile:26:id:not found
[:26:Illegal number:
/etc/gdm/Xsession:179:grep:not found
/etc/gdm/Xsession:192:ls:not found
/etc/gdm/Xsession:Executing /usr/bin/gnome-session failed,will try exec:205:x-terminal-emulator:not found

用别的会话登录也不行,报同样的错误,进安全模式终端,ls su 都无法使用
Command 'ls' is available in '/bin/ls'
The command could not be located because '/bin' is not included int the PATH environment variable
bash:ls:找不到命令
在网上找了半天,才知道是改过一次环境变量之后,重启就进不了系统。
由于在/etc/environment设置环境变量
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
export PATH=/home/yan/share/usr/local/arm/3.4.1/bin:$PATH
LANGUAGE="zh_CN:zh:en_US:en"
LANG="zh_CN.UTF-8"
错误导致无法登录系统。
将红色行删除就可以登录了。

在Ubuntu中有如下几个文件可以设置环境变量

/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.

/etc/environment:在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量

~/.profile:在登录时用到的第三个文件是.profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.

通常设置环境变量有三种方法:
一、临时设置
export PATH=/home/yan/share/usr/local/arm/3.4.1/bin:$PATH

二、当前用户的全局设置
打开~/.bashrc,添加行:
export PATH=/home/yan/share/usr/local/arm/3.4.1/bin:$PATH

使生效

source .bashrc
三、所有用户的全局设置
$ vim /etc/profile
在里面加入:
export PATH=/home/yan/share/usr/local/arm/3.4.1/bin:$PATH
使生效
source profile

测试 echo $PATH

相关内容