用户和组相关的一些文件。
用户文件:
/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文件夹的用处:
如果在这个目录中建立或放入文件,那么新建的用户的家目录中就会有这些目录或文件,如果修改目录中的用户配置文件,登录脚本内容,那么新建用户的用户配置文件、登录脚本也会采用修改后的内容