前言

遇到这个问题是因为在安装ftp时,创建的ftper用户家目录是默认的/home/ftper,想要更改为/home/sillp

更新历史

2022-11-09 10:14

先了解useradd

先了解一下linux是怎么创建用户的命令useradd

语法:
useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>][-u <uid>][用户帐号]
useradd -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>]

参数说明:

-c<备注>  加上备注文字。备注文字会保存在passwd的备注栏位中。
-d<登入目录>  指定用户登入时的起始目录。
-D  变更预设值.
-e<有效期限>  指定帐号的有效期限。
-f<缓冲天数>  指定在密码过期后多少天即关闭该帐号。
-g<群组>  指定用户所属的群组。
-G<群组>  指定用户所属的附加群组。
-m  制定用户的登入目录。
-M  不要自动建立用户的登入目录。
-n  取消建立以用户名称为名的群组.
-r  建立系统帐号。
-s
   指定用户登入后所使用的shell。

-u

 指定用户ID。

例子1:
创建一个家目录为/usr/local/apache,shells为/bin/false(不能登录系统),uid为1000的用户apache
useradd -d /usr/local/apache -s /bin/false -u 1000 apache

可在/etc/passwd中查看结果

[root@localhost ~]# cat /etc/passwd |grep apache
apache:x:1000:1000::/usr/local/apache:/bin/false

可检查对应家目录,已经自动创建,并修改了文件所属权限为 apache:apache

[root@localhost ~]# ll /usr/local/ |grep apache
drwx------. 2 apache apache 62 11月 19 10:22 apache

例子2:

创建一个家目录为/hoe/sillp,不能登录系统的用户fpter
useradd -d /home/sillp -s /bin/nologin ftper

[root@localhost ~]# cat /etc/passwd |grep ftper
ftper:x:1001:1001::/home/sillp:/bin/nologin

正片儿usermod

usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]

参数说明:

-c<备注>  修改用户帐号的备注文字。
-d登入目录>  修改用户登入时的目录。
-e<有效期限>  修改帐号的有效期限。
-f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
-g<群组>  修改用户所属的群组。
-G<群组>  修改用户所属的附加群组。
-l<帐号名称>  修改用户帐号名称。
-L  锁定用户密码,使密码无效。
-s
 修改用户登入后所使用的shell。

-u

 修改用户ID。

-U  解除密码锁定。

例子:
更改登录目录
usermod -d /home/hnlinux root

改变用户的uid
usermod -u 777 root

修改为不能登录的用户
usermod -s | -shell /bin/false username
usermod -s | --shell /usr/sbin/nologin username

补充

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

/usr/sbin/nologin
nologin 会礼貌的向用户显示一条信息,并拒绝用户登录:

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

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

参考资料

https://www.runoob.com/linux/linux-comm-useradd.html
https://www.runoob.com/linux/linux-comm-usermod.html

原文地址:http://www.cnblogs.com/dawandanchaofan/p/16905625.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性