首页 > 代码库 > 登录shell和非登录shell
登录shell和非登录shell
/bin/bash ,/bin/sh ,/bin/csh ……
一般Linux默认的用户shell都是bash ,也就是说你可以登录进去敲命令。
非登陆shell ,经典的 /bin/nologin 就是一个非登陆shell,也就是说如果一个用户默认的shell是它的话,这个用户即使登录进Linux也不无法使用Linux。
=================
shell是用户和计算机交流的中介,“登录shell”保证用户和计算机交流,“非登陆shell”无法让用户与计算机交流。
==================
关于用户的默认登录shell是在 /etc/passwd 文件中记录的。
“非登陆”shell 有它特定的用途,比如一个用Linux搭建一个ftp服务器,并且创建了很多的ftp用户,那么就可以将这些用户的默认shell改为nologin,这样一来,这些虽然是Linux上的用户可是却无法登录进Linux主机,只能登录ftp服务器了。保证了安全性。
简单说,非登录shell不能登录Linux。
登录Shell依次执行的配置文件(CentOS6):
/etc/profile ->.bash_profile -> .bashrc -> /etc/bashrc
非登录交互式Shell依次执行的配置文件:
~/.bashrc->/etc/bashrc
#解析
/etc/profile #系统全程的初始化文件,为登录的shell所执行
~/.bash_profile #个人的初始化文件,为登录的shell所执行
~/.bashrc #个人的交互式shell的起始文件
~/.bash_logout #个人登录shell的清理文件,当登录shell退出时执行
本文出自 “禅剑一如” 博客,请务必保留此出处http://yanconggod.blog.51cto.com/1351649/1883364
登录shell和非登录shell