基础常用命令
1、认识/etc/passwd
#cat /etc/passwd | head
命令的字段含义
1.第一个字段为用户名,代表用户账号的字符串
2.第二个字段存放的是该账号的口令
3.第三个字段为一个数字,这个数字代表永和标识号,也称uid
4.第四个字段也是数字,表示组标识号,称gid
5.第五个字段为注释说明,没意义
6.第六个字段为用户的家目录,当用户登录是,就处在这个目录下
7.最后一个字段为用户的shell
2、认识/etc/shadow
#cat /etc/shadow | head -n 3
1.第一个字段为用户名,也/etc/passwd对应
2.第二个字段为用户密码
3.第三个字段为上次更改密码的日期
4.第四个字段要过多少天才可以改密码
5.第五个字段为密码多少天过期
6.第六个字段为密码到期钱的警告日期
7.第七个字段为账号失效期限
8.第八个字段为账号的生命周期
9.第九个字段为保留用的没意义
3、新增或删除组的命令groupadd(groupdel)
#groupadd [-g GID] groupname
如果不加-g选项 就按照系统默认的gid创建组,gid从1000开始
#groupadd -g 1008 gyctest2(自定义gid标识号)
#groupdel gyctest1
注意:被删除的用户里不能包含账户否组不能删除
4、增加或者删除用户的命令useradd
#useradd [-u UID][-g GID][-d HOME][-M][-S]
选项含义:
1.-u表示自定义uid
2.-g表示是新增瀛湖数以已经存在的某个组,后面可以跟组id或者组名。
3.-d表示自定义用户的家目录
4.-m表示不建立家目录
5-s表示自定义shell
使用前提 必须有相符的gid标识符存在才能创建
#userdel[-r ]username -r表示一并删除该用户的家目录,不加则只删除其目录
#ls -ld /home/user12 查看此用户家目录
5、命令passwd、mkpasswd
#passwd[username]
注意:密码要尽可能得复杂,只有root才可以修改其他账户密码,普通账户只能修改自己得密码
想不出密码时,哎呦此时就有个好东西:mkpasswd
#yum install -y expect
#mkpasswd -L * *代表密码长度
另外还有-s指定特殊字符个数、 -d指定数字个数
6、用户身份切换,命令su、sudo
#su - [usename]
引发问题;为啥他说我的用户不可用
#yum install -y sudo
#vi /etc/sudoers
课后练习题
1、写出一个你认为很强大的密码- -!
sfaAJ#@215?
2、查资料弄清楚/sbin/nologin和/bin/false的区
别。你知道它们分别用在什么场合吗?
百度:/bin/false是最严格的禁止login选项,一切服务都不能用,而/sbin/nologin只是不允许系统login,可以使
用其他ftp等服务 如果想要用false在禁止login的同时允许ftp,则必须在/etc/shells里增加一行/bin/false。
3.当我们创建一个新的账号是,系统会修改那几个文件呢?
/etc/passwd
/etc/shadow
/etc/group
4、假如我们已经创建了一个普通用户userl,默认这个用户的家目录为/home/user1,做试验证明能否直接修改/etc/passwd配置文件中user1的家目录那个字段而改变user1的家目录呢?(提示:你可以使用cd~命令进入当前用户的家目录来验证)
好像不能改。。。。
5、/etc/passwd文件以:为分隔符,第3、4个字段表示什么含义?如果把某一行的第3个字段改为0,会发生什么呢?
第三个字段表示用户id,改为0的话表示root
6、如何在删除某个账户是一并删除账户家目录?
#userdel -r
7、如果没有mkpasswd命令咋办?
#yum install -y expect
8、普通用户可以修改自己密码嘛?
可以 passwd [username]