第二章 用户和组管理
2.27 Linux和windows互传文件
注: 只能在Xshell环境下使用,lrzsz工具
Yum install –y lrzsz ##安装包
Sz 1.txt ##linux传Windows文件,空文件有时会传输失败
rz ##回车 选文件 电脑传liunx
第三章 用户和组管理
3.1 用户配置文件和密码配置文件
1)用户配置文件
[root@3 ~]# cat /etc/passwd | headroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin
关于“|”:
head前面的“|”叫做管道符。它的作用是把前面命令的输出再输入给后面的命令。注意: 1)管道命令只处理前一个命令正确输出,不处理错误输出 2)管道命令右边命令,必须能够接收标准输入流命令才行。用户配置文件解析:/etc/passwd 由“:”分割成 7 个字段,每个字段的具体含义是:
(1) 用户名(如第一行中的 root 就是用户名),代表用户账号的字符串。用户名字符可以是大小写字母、数字、减号(不能出现在首位)、点以及下划线,其他字符不合法。虽然用户名中可以出现点,但不建议使用,尤其是首位为点时,另外减号也不建议使用,因为容易造成混淆。 (2) 第二个字段存放的是该账号的口令。这里为什么是“x”呢?早期的 Unix 系统口令确实是存放在这里,但基于安全因素,后来就将其存放到“/etc/shadow”中了,在这里只用一个“x”代替。 (3) 这个数字代表用户标识号,也叫做 uid。系统识别用户身份就是通过这个数字来的, 0 就是 root,也就是说我们可以修改 test 用户的 uid 为 0,那么系统会认为 root 和 test 为同一个账户。 uid 的取值范围是0~65535(但实际上已经可以支持到 4294967294), 0 是超级用户(root)的标识号, 1~499 由系统保留,作为管理账号,普通用户的标识号从 500 开始,如果我们自定义建立一个普通用户,你会看到该账户的标识号是大于或等于 500 的。 (4) 表示组标识号,也叫做 gid。这个字段对应着/etc/group 中的一条记录,其实/etc/group 和/etc/passwd基本上类似。 (5) 注释说明,该字段没有实际意义。通常记录该用户的一些属性,例如姓名、电话、地址等等。不过,当你使用 finger 的功能时就会显示这些信息的(稍后做介绍)。 (6) 用户的家目录,当用户登录时就处在这个目录下。 root 的家目录是/root,普通用户的家目录则为/home/username,用户家目录是可以自定义的。比如,建立一个普通用户 test1,要想让 test1 的家目录在/data目录下,只要修改/etc/passwd 文件中对应该用户那行中的本字段为/data 即可。 (7) 用户的 shell。用户登录后要启动一个进程,用来将用户下达的指令传给内核,这就是 shell。 Linux的 shell 有很多种 sh、 csh、 ksh、 tcsh、 bash 等。而 Redhat/CentOS 的 shell 就是 bash。查看/etc/passwd 文件,该字段中除了/bin/bash 外还有/sbin/nologin 比较多,它表示不允许该账号登录。如果想建立一个账号不让他登录,那么就可以把该字段改成/sbin/nologin,默认是/bin/bash。2)密码配置文件
[root@3 ~]# cat /etc/shadow | head -n3root:$6$SMvrA/u3SwTTikIa$TcmVJk9wYHfDaPP47SOyTXKkKoQlMbmnzEu3tBi/y8/JkPt2CSe2jDJeLL6TTn0CoCITTonxAE28Gbd6PruFg.::0:99999:7:::bin:*:17110:0:99999:7:::daemon:*:17110:0:99999:7:::
密码配置文件解析:
3.2 用户组管理
组文件:/etc/group 组密码:/etc/gshadow
groupadd命令
语法: groupadd [-g] groupname
[root@3 ~]# groupadd grptest001 创建组[root@3 ~]# tail -n1 /etc/groupgrptest001:x:1002:
选项:
-g:指定组权限(gid)[root@3 ~]# groupadd -g 511 grptest002 创建组的同时指定其权限[root@3 ~]# tail -n2 /etc/groupgrptest001:x:1002:grptest002:x:511:
groupdel命令
[root@3 ~]# groupdel grptest002 删除组[root@3 ~]# tail -n3 /etc/groupuser1:x:1001:slocate:x:21:grptest001:x:1002:[root@3 ~]# groupdel user1groupdel:不能移除用户“user1”的主组 组user1内有用户user1,无法删除
说明: 该命令没有特殊选项,只能删除空白组!
3.3 用户管理
useradd命令
语法: useradd [-u] [-g] [-d] [-M] [-s] [username]
选项: -u:指定uid -g:指定其所属组 -d:自定义用户家目录 -M:不建立家目录 -s:自定义shelleg:[root@3 ~]# useradd test1[root@3 ~]# tail -n1 /etc/passwdtest1:x:1002:1002::/home/test1:/bin/bash[root@3 ~]# tail -n1 /etc/grouptest1:x:1002:
useradd不加任何选项直接跟用户名,则会创建一个跟用户名同样名字的组!
[root@3 ~]# useradd -u754 -gtest1 -M -s /sbin/nologin user001[root@3 ~]# tail -n2 /etc/passwdtest1:x:1002:1002::/home/test1:/bin/bashuser001:x:754:1002::/home/user001:/sbin/nologin[root@3 ~]# tail -n2 /etc/groupslocate:x:21:test1:x:1002:[root@3 ~]# ls /home/user001ls: 无法访问/home/user001: 没有那个文件或目录
说明: -M选项是不创建目录,但是在/etc/passwd文件中仍有这个字段,但是用ls /home/user001查看时提示目录不存在,所以-M选项的作用只是不创建那个目录。
userdel命令
语法: userdel [-r] username
[root@3 ~]# ls -ld /home/user002drwx------ 2 user002 test1 62 6月 12 21:27 /home/user002[root@3 ~]# userdel user002[root@3 ~]# ls -ld /home/user002/drwx------ 2 755 test1 62 6月 12 21:27 /home/user002[root@3 ~]# userdel -r test1[root@3 ~]# ls -ld /home/test1/ls无法访问/home/test1:没有那个文件或目录
即:-r选项的作用时删除账户的时候连带账户的家目录一起删除。