用户和组相关的一些文件。
用户文件:
/etc/passwd
/etc/shadow
组文件:
/etc/group
------------------------------------------------------------------------------------------------
/etc/passwd文件内容说明:
bob:x:502:502::/home/bob:/bin/bash
每行都是以“:”分隔的若干部分,各部分内容别是:
bob  用户
x    相当于密码,但实际密码不存储于此,而是存储另一个文件/etc/shadow
502  是用户的ID(唯一标识符)相当于×××号码。
502  用户所在组的组ID。
     空的没有内容表示用户的信息描述。
/home/bob     这个用户的家在哪里
/bin/bash     这个用户所使用的shell类型
------------------------------------------------------------------------------------------------
/etc/shadow文件内容说明:
root:$1$E.N2NmMT$WUQ2HZ.G6sFdZAXxoAb2x0:15210:0:99999:7:::
每行也是以“:”分隔的若干部分,各部分说明如下:
root         用户名
一串乱码     加密后的密码、
15210        从1970年1月1日算起,密码最近一次修改的时间单位是天。
0            密码应该在下次那个时间修改,如果大家用vim把这个值改为30,就意味着要求用户在30天之内修改密码。含义是每30天修改一次(只是要求修改)
99999        下次密码必须在多少天后修改,如果把这个值改为40,就意味着强制用户在40天之内修改密码(必须强制修改)
其他内容请参考内容man 5 shadow
-------------------------------------------------------------------------------------------------------------------/
/etc/group
root:x:0:root
root    代表了组的名字
X       代表有密码
0       组的ID号码
root    代表组的成员
-------------------------------------------------------------------------------------------------------------------
实际工作中一般用命令来创建、修改和删除用户,如果先对用户或组进行更详细的设置。
命令:
useradd         “添加一个新用户”
userdel         “删除一个用户”
usermod         “修改一个用户的信息”

groupadd        “添加一个组”
groupdel        “删除组”
groupmod        “修改一个组的信息”
-------------------------------------------------------------------------------------------------------------------
useradd的常用选项
-u      “手工指定该用户的ID号码”
Linux中用户的ID号码范围是0-65535,其中0-499是默认用户的ID号码。自建用户ID范围应该是>=500的。如果创建用户时,没有指定用户的ID号码,系统会自动在最后一个自建用户的ID号上加1。

-g      “指定用户所属的组”
在windows中,新建的用户会自动加入一个叫everyone的组。
在linux中,新建的用户会自动加入一个同名组,例如创建一个用户叫Kitty,没制定这个用户在哪个组中,那么系统会自动创建一个组,组名也叫Kitty,并把改组用户加入该组。

-G      “指定用户所属的其他组”
在Linux中,一个用户也可以加入多个组。

-d      “指定用户的家”
如果不指定此选项,默认会放在/home地下创建一个同名的目录
-------------------------------------------------------------------------------------------------------------------
小实验:
1、创建四个组叫sales,eng,mgr,hr
groupadd sales
groupadd eng
groupadd mgr
groupadd hr
2、仅使用一条命令、创建一个用户,实现这个用户名字叫做tony,同时加入sales、eng和mgr这三个组,用户的ID值9999,指定用户的家为/tony
useradd -g sales -G eng,mgr -u 9999 -d /tony tony
-g:主组
-G:从组  创建多个从组用“,”分隔开来,
-u:用户ID号
-d:用户家

两者之间没什么问题但主组只能有一个。
3、查看/etc/passwd和/etc/group检查刚才的设置是否正确。
tail /etc/passwd
tail /etc/groupx
-------------------------------------------------------------------------------------------------------------------
userdel 常用选项:
-r     在删除用户的同时,删除掉该用户的“家”,此选项要慎用如果加-r删除将会连用户家保存的数据都会删掉,要想回复将非常复杂,因此最好不要经常使用。
-------------------------------------------------------------------------------------------------------------------
usermod选项
它与useradd所有选项都相同
usermod -u 6666 tony
-------------------------------------------------------------------------------------------------------------------
修改用户的密码
管理员修改用户密码:
passwd 用户
两次输入密码

用户修改自己密码:
passwd
先输入自己当前的密码
两次输入新密
-------------------------------------------------------------------------------------------------------------------
用户权限的实验:
1创建一个组叫software
 创建一个组叫hardware
2、创建三个用户分别叫foxmail 、firefox、p4
并且把foxmail和firefox用户加入software,p4加入hardware这个组
3、创建一个目录/lab/lab1
编辑lab.txt文件 vim /lab/lab1/lab.txt随意输入一些内容。
4、合理设置权限实现一下要求:
(1)三个用户都可以进入/lab/lab1这个目录,但foxmail可以在里面创建或删除文件,而firefox和p4不可以
(2)foxmail可以查看和修改lab.txt这个文件,firefox可以查看lab.txt这个文件但不能修改,而p4不可以查看lab.txt文件。
-------------------------------------------------------------------------------------------------------------------
权限的详细说明:
对目录:r+x,同时拥有这2个权限才可以进入目录
r+w+x,就可以进入目录,并可以在目录中创建文件或删除文件。

你对目录有读写执行权限就可以删除wenjian,与你针对于文件的权限没有任何关系
对于文件:r,拥有读权限就可以查看文件的内容,但不能改。
        rw,拥有这2个权限意味着可以看文件也可以该文件。
         x,拥有执行权限意味着可以执行它
-------------------------------------------------------------------------------------------------------------------
实验4步详解
1、chown foxmail /lab/lab1
2、chown foxmail /lab/lab1/lab.txt
这两句意思是把目录和文件的所有者改为foxmial这个用户,因为在默认状态下文件和目录都是root创建的所有者为root,所以得指定其他用户才能修改权限。
3、chgrp software /lab/lab1
4、chgrp software /lab/lab1/lab.txt

chomd 755 /lab/lab1
chomd 640 /lab/lab1/lab.txt

测试
234控制台以三个用户的身份登录查看实际权限是否与要求一致
-------------------------------------------------------------------------------------------------------------------
linux常用命令的第二节:
cp   复制命令
mv   移动改名
rm   删除
-------------------------------------------------------------------------------------------------------------------
cp的常用选项:
-r     默认cp只能复制文件,而不能复制目录,加此选项启动复制目录的功能。
-f     如果目的地由同名文件,直接覆盖掉而不提示。请千万慎用此选项。(危险操作)

rm的常用选项:
-r   
-f    作用与cp的选项完全相同,请千万慎用此选项。(危险操作)
-------------------------------------------------------------------------------------------------------------------
小实验:复制、移动和删除
1、mkdir    /lab    “创建一个目录
2、cp /etc  /lab    “能成功吗?为什么?             
3、cp -r /etc /lab   “把整个目录复制到lab”        复制不改名
4、cp -r /etc /lab/etcback “这个与前一个有何区别” 意思是复制并且改名。
5、mv /lab/etcbak ~     “这是什么意思”            移动不改名
6、mv /lab/etc ~/etcback    “与前一个有何区别”    移动并改名
7、rm ~/etc*        “你遇到什么问题了”
   rm -r ~/etc   “你有遇到什么问题了”
   rm -rf ~/etc*   “这一次呢?”
-------------------------------------------------------------------------------------------------------------------
主要的用户配置文件:
1、/etc/default/useradd
2、/etc/login.defs
3、/etc/passwd
4、/etc/group
5、/etc/shadow
6、/etc/skel
注释:
1、skel文件夹的用处:
如果在这个目录中建立或放入文件,那么新建的用户的家目录中就会有这些目录或文件,如果修改目录中的用户配置文件,登录脚本内容,那么新建用户的用户配置文件、登录脚本也会采用修改后的内容