关于Linux adduser命令中-m、-c、-s选项作用及两条命令差异的技术咨询
Linux adduser命令中-m、-c、-s选项作用及两条命令差异的技术咨询
嗨,我来帮你理清楚这两条adduser命令的区别,还有那些参数的具体用处~
先看第一条命令:sudo adduser Alex
这是最简化的创建用户方式,它完全遵循系统的默认配置来生成用户。比如有些Linux发行版默认会自动给用户创建主目录,有些则不会;用户登录用的shell、备注信息这些也都是用系统预设的值,甚至有些系统会弹出交互式提示让你设置密码,但整体没有任何自定义的配置项。
再来看第二条命令:sudo adduser -m -c "Alex Hales" -s /bin/bash Alex
这条是带着自定义参数的创建命令,每个选项都有明确的作用:
-m:强制为用户创建主目录(也就是/home/Alex),不管系统默认是否开启这个功能。同时还会把/etc/skel目录里的默认环境配置文件(比如.bashrc、.profile)复制到这个新目录里,让用户登录后能直接用上完整的shell环境。-c:用来设置用户的备注信息(也叫GECOS字段),这里填的"Alex Hales"就是用户的真实姓名,你也可以在这里填联系邮箱、部门之类的内容,后续通过cat /etc/passwd就能看到这个字段的内容。-s:指定用户登录系统后默认使用的shell程序,这里设置的是/bin/bash。如果不指定这个参数,系统会用预设的默认shell(不同发行版可能不一样,比如有些是/bin/sh)。
总的来说,第一条命令是“随大流”按系统规则创建用户,第二条则是“定制化”创建,明确指定了主目录、用户信息和登录shell,能完全按照你的需求配置用户,避免依赖系统默认可能带来的差异。
备注:内容来源于stack exchange,提问作者Arun Kingson
相关产品推荐
相关产品推荐

