『壹』 什么是linux的登录shell与非登录shell
Linux的登录与非登录shell的含义及区别:
1、含义:登录shell,指的是当用户登录系统时所取的那个shell,登录shell属于交互式shell。
登录shell将查找4个不同的启动文件来处理其中的命令,用户登录后,在终端上输入命令,shell立即执行用户提交的命令,当用户退出后,shell也终止了。
非交互式:即shell与用户不存在交互,而是以shellscript的方式执行的,shell读取存放在文件中的命令,并且执行它们。当它读到文件的结尾EOF,shell也就终止了。
2、完整度不同:如果启动了一个bash shell而没有登入系统(如在CLI提示符中键入bash),则启动了一个交互式非登录shell。
交互式非登录shell执行/bashrc文件中的命令,在每次执行shell脚本时,都会重新读取这个文件,所以是最完整的。
3、使用情况不同:登录shell的初始化文件(比如.bash_profile)通常会运行这个文件。这样,登录shell和非登录shell都可以使用.bashrc中的命令。
4、登陆方式不同:登录 shell 需要用户名、密码登录后进入的 shell,或者通过--login选项生成的 shell 。
非登录 shell 是指不需要输入用户名和密码即可打开的 shell,比如输入命令bash或者sh就能进入一个全新的非登录 shell,在 Gnome 或 KDE 中打开一个 “terminal” 窗口,也是一个非登录 shell。
5、数值不同:
查看$0的值,登录shell返回-bash,而非登录shell返回的是bash。
需要注意的是:执行exit命令,退出的shell可以是登录或者非登录shell;执行logout命令,则只能退出登录shell,不能退出非登录shell。
(1)linuxnonlogin扩展阅读:
登陆shell通常指的是:
1、用户通过输入用户名/密码(或证书认证)后启动的shell;
2、通过带有-l|--login参数的bash命令启动的shell。
例如,系统启动、远程登录、使用su-切换用户、通过bash--login命令启动bash等。
而其他情况启动的shell基本上就都是“非登陆shell”了。
例如,从图形界面启动终端、使用su切换用户、通过bash命令启动bash等。
『贰』 linux 系统账户设置了nologin还怎么使用
很多帐户是为了给系统服务使用的,直接由root可以su到那些账户。
由于root可以跳过内安全性检查,容如果系统的邮件服务使用root。
这样一旦邮件服务被黑,黑客就可以为所欲为了。
如果root通过setuid的方法降级mail服务,那么当黑客入侵时就可以有防护效果。
『叁』 linux下提示(none)login:什么意思
就是你在终端输入的用户名不对,密码正确
『肆』 linux下提示(none)login:什么意思
让你输入用户名
『伍』 linux系统如何创建一个不可以登入的用户
useradd ftpuser -d/ftpfile -s/sbin/nologin
ftpuser 用户名
-d/ftpfile 作用的文件
-s/sbin/nologin限制用户不能登录linux命令
特殊的/sbin/nologin
在这些shell里面,有一个shell——/sbin/nologin却比较特殊。
在我们的系统中有apache这个账号管理着www服务器,lp管理着打印服务等。还有类似很多的这样的系统服务,他们运行在系统中,由专门的账户管理着,这些账号都有一个共同的特性,那就是他们的shell都是/sbin/nologin,并且这些账号都是不能够登陆主机的,但是却能够使用系统的很多资源。那么相像一下,这样的场景是不是在很多时候都会被应用到,比如我们的邮件服务,很多时候我们的邮件服务器只需要进行收取邮件的功能,那么为了保证系统的安全,我们是不是就可以创建一个这样的账号,给它分配一个/sbin/nologin就可以了?《Linux就该这么学》一起学习linux.
假设我的系统中有一个test账号,现在我们将它的shell更改为“/sbin/nologin”(root用户下执行):
chsh -s /sbin/nologin test
『陆』 Linux:/sbin/nologin是什么意思呢
/sbin/nologin指的是不允许复login当前Linux系统。当制用户配置成/sbin/nologin时,如果再使用该用户ssh到linux操作系统,会提示如下内容:This account is currently not available。该功能类似于封掉某个帐户。