在Linux中當前用戶的主目錄可以有三種表示方法,都是等效的[正常不改配置情況下]
例如用戶名為lutigers,進入當前用戶的主目錄/home/lutigers
輸入cd ~
或輸入cd $HOME
或輸入cd /home/lutigers
這是因為源於1970年代流行的Lear-Siegler ADM-3A終端機
其鍵盤的“Home”鍵波浪號“~”鍵在同一個鍵上
Linux下~、/home與/root的區別:
1、在root用戶下,~等同於/root
2、在普通用戶下,~等同於/home/當前的普通用戶名
坑人的情況下:
~指向的目錄已經不是當前用戶的主目錄了
案例:問題是在安裝完rabbitmq之后出現的,原來,是我在啟動rabbitmq是,出現了一個錯誤,然后改變了HOME環境變量導致的,
隨便,這里提一下,在啟動rabbitmq是,報了個異常:erlexec: HOME must be set
這個是說HOME環境變量沒有設置,然后我就在/etc/profile里面添加了HOME變量:export HOME=/opt/rabbitmq
之后source /etc/profile之后,問題還存在,找了半天,發現在rabbitmq的sbin目錄下有一個rabbitmq-env文件,一看就是環境變量的配置文件,然后我就在加上HOME變量,然后rabbitmq啟動成功
然而,/etc/profile里面的HOME忘了取消掉,導致~指向問題
經驗:1、登錄后,默認進入用戶主目錄,用戶主目錄配置在/etc/passwd中,如果要修改用戶主目錄,只需要修改對應用戶的主目錄即可
2、我們一般使用~用作用戶主目錄,而~其實是指向環境變量中的HOME目錄,登錄之后,HOME變量默認指向用戶主目錄,查看環境變量,可使用env命令