Всем привет.
Как у вас с Linux? Так вот, некто Кирилл Семаев в youtube доходчиво рассказывает все про Linux согласно требованиям LPIC. И я не смог удержаться чтобы в качестве примера не выложить шпаргалку про профили пользователя из коментариев к его уроку.
Есть такие понятия как Login shell и Non Login Shell.
Login shell выполняет /etc/profile, ~/.profile, ~/.bash_logout (левая часть слайда)
Non Login Shell выполняет /etc/bashrc, ~/.bashrc (правая часть слайда)
Отличить один от другого можно через echo $0:
-bash (внимание на первый символ) означает Login shell
bash (просто bash) - Non Login shell
-bash (внимание на первый символ) означает Login shell
bash (просто bash) - Non Login shell
Когда мы работаем в графике, это мы уже залогинились (другим способом) и все терминалы будут запускать Non Login shell.
Если мы зайдём на удалённую машину по ssh или на своей машине перейдём на текстовую консоль (Ctrl+Alt+F1) то после ввода пароля мы попадём в Login shell.
Итого, Login shell запускается не более одного раза за "сеанс" и может подчищать за собой при завершении сеанса (bash_logout) и однократно инициализировать окружение пользователя (.profile), а Non Login может запускаться много раз за "сеанс" и выполняет (.bashrc и т.п.),
поэтому, все свои алиасы и настройки мы обычно пишем в .bashrc, а не в .profile.
поэтому, все свои алиасы и настройки мы обычно пишем в .bashrc, а не в .profile.
Кто молодец? Кирилл молодец! Рекомендую.
No comments:
Post a Comment
А что вы думаете по этому поводу?