linux创建用户,添加及修改shell

本文详细介绍Linux系统中用户管理的全过程,包括用户创建、密码设置、登录Shell修改及查看等操作。阐述登录Shell与非登录Shell的区别及其应用场景,如通过设置非登录Shell增强FTP服务器的安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、创建用户:

useradd -d /test -s /bin/bash -m test

-d:指定用户的家目录

-s:用户的登录shell

-m:创建用户家目录

创建密码:

passwd test
然后输入两遍新密码

2、查看创建的用户:

vim /etc/passwd

此文件中记录着所有用户的信息,以6个冒号分隔出7段信息:

如:root:x:0:0:root:/root:/bin/bash

3、修改用户的登录shell:

1)命令修改:

usermod -s /sbin/nologin test
usermod -s /bin/false test
...

2)直接修改/etc/passwd文件:

vim /etc/passwd

4、用户的登录shell:

shell是用户和计算机交流的媒介,登录shell保证用户和计算机交流,非登录shell无法让计算机和用户交流。     关于用户的默认登录shell是在/etc/passwd文件中记录的。

登录shell是可以用户登录使用的,比如/bin/bash ,/bin/sh ,/bin/csh......一般 Linux默认的用户shell都是bash,也就是你可以登录进去写命令。    

非登录shell:经典的/bin/nologin就是一个非登录shell,也就是说如果一个用户默认的是它,这个用户即使登录进linux也无法使用linux。

非登录shell有他特定的用途,比如一个用linux搭建的ftp服务器,并且创建了多个用户,那么就可以将这些用户默认shell改成nologin,这样一来,这些用户虽然是linux上的用户却无法登录进linux主机,只能进入ftp服务器,这样也保证了安全!

例如:

//登录shell
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
//非登录shell
/sbin/nologin
/bin/false
...

/bin/false:什么也不做只是返回一个错误状态,然后立即退出。将用户的shell设置为/bin/false,用户会无法登录,并且不会有任何提示。

/sbin/nologin:会礼貌的向用户显示一条信息,并拒绝用户登录: This account is currently not available. 有一些软件,比如一些ftp服务器软件,对于本地非虚拟账户,只有用户有有效的shell才能使用ftp服务。这时候就可以使用nologin使用户即不能登录系统,还能使用一些系统服务,比如ftp服务。/bin/false则不行,这是二者的重要区别之一。

/etc/nologin:如果存在/etc/nologin文件,则系统只允许root用户登录,其他用户全部被拒绝登录,并向他们显示/etc/nologin文件的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值