Linux学习笔记(2)_用户、用户组、文件权限
关于Linux用户和用户组的管理以及文件权限设置
####################################################
# 1.用户
###################################################
(1)用户就是系统使用者的身份
(2)在系统中用户存储为若干窜字符+若干个系统配置文件
------------------------------------------------------------
用户信息涉及到的系统配置文件:
(3)/etc/passwd ###用户信息
kiosk:x:1000:1000:kiosk:/home/kiosk:/bin/bash
用户:密码:uid:gid:说明:家目录:用户使用的shell
-------------------------------------------------------------
(4)/etc/shadow ###用户认证信息
kiosk:$6$THuBGN5mEx7U1BKW$ogf5D.172AelFAm9VVlfS8xBRVnqI6bGruy66FPWju9vne2IgQWuHyOaqsllwg.51/hh69uHlV44U6rn0CAac0::0:99999:7:::
用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日
------------------------------------------------------------
(5)/etc/group ###组信息
kiosk:x:1000:kiosk
组名称:组密码:组id:附加组成员
------------------------------------------------------------
(6)/etc/gshadow ###组认证信息
(7)/home/username ###用户家目录
(8)/etc/skel/.* ###用户骨架文件
###################################################
# 2.用户组的建立、删除
###################################################
#监控命令:
watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo ====;ls -l /home;echo ===;ls -l /mnt'
groupadd +不存在用户组#创建用户组
groupadd -g id +不存在用户组#创建制定id的用户组
groupdel +存在的用户组#删除用户组
###################################################
# 3.用户的建立和删除
###################################################
/etc/shells ##查看系统的shell
useradd 用户名 ##创建用户
userdel 用户名 ##仅仅删除用户,不删除配置文件,还要自己手动删除
userdel -r 用户名 ##删除用户以及配置文件 -r:删除配置文件
###################################################
# 4.id命令查看用户
###################################################
id 参数 用户
-u ##用户uid
-g ##用户初始组id
-G ##用户所有所在组id
-n ##显示名称而不是id数字
-a ##显示所有信息
###################################################
# 5.修改用户信息操作
###################################################
passwd -S ##查看是否加锁
usermod 参数 用户
usermod -L ##加锁
usermod -U ##解锁
usermod -s ##改变shell
usermod -l ##修改用户名字
usermod -u ##修改用户uid
usermod -g ##修改用户gid
usermod -G ##更改用户附加组
usermod -aG ##添加附加组
usermod -c ##更改说明
usermod -d ##改变家目录指向
usermod -md ##改变家目录指向以以及家目录名称
###########################################################
# 6.用户认证信息的修改
##########################################################
监控命令:
watch -n 1 'tail -n 3 /etc/shadow;echo ============; passwd -S ag'
passwd username ##修改密码
passwd -e username ##强制用户登陆必须修改密码
passwd -n username ##修改用户最小有效时间
passwd -x username ##修改用户最大有效时间
passwd -l username ##加锁,用“usermod -U username”解锁要解两次
passwd -u username ##解锁
passwd -w username ##修改警告期
passwd -i username ##修改用户非活跃期时间
passwd -S username ##查看用户当前状态
chage -E "YYYY-MM-dd" username ##修改用户的有效时间
##########################################################
# 7.权力下放给普通用户
##########################################################
visudo ##进入 /etc/sudoers编辑模式,会有语法报错
hostname ##获取主机名
ag desttop5.example.com=(root) NOPASSWD: /usr/sbin/useradd, /user/sbin/userdel
ag 在desttop5.example.com主机上以root用户权限不需要密码进行增加和删除用户
sudo useradd ag01 ##调用命令
###########################################################
# 8.对文件的权限修改
###########################################################
监控命令:
watch -n 1 ls -lR /mnt/ #监控/mnt目录下文件以及目录的子文件
----------------------------------------------------------
查看文件属性:
ls -l filename
-|rw-r--r--.|1| root| root| 46 |Oct 1 05:03 |filename
— ————————— — ———— ———— ——
1 2 3 4 5 6 7 8
1."-":文件类型
-##普通文件
d##目录
c##字符设备
s##套接字
p##管道
b##快设备
l##软连接
2."rw-r--r--":文件读写权限
rw-|r--|r--
* $ @
*所有人的权限
$所有组的权限
@其他人的权限
3."1":
对文件:文件内容被系统记录的次数
对目录:目录中文件属性的字节数
4."root":文件所有人
5."root":文件所有组
6."46":文件内容的大小
7."Oct 1 05:03":文件最后一次被修改的时间
8."filename":文件名字
-------------------------------------------------------------
文件权限操作
rw-|r--|r--
u g o
u:文件所有人对文件可以读写
g:文件组成员对文件可读
o:其他人对文件可读
u优先匹配,g次优先,o当u,g不匹配时匹配
------------------------------------------------------------------
(1)r
对文件:可以查看文件中的字符
对目录:可以查看目录中文件的信息
(2)w
对文件:可以更改文件内字符
对目录:可以在目录中添加删除文件
(3)x
对文件:可以运行文件内记录的程序动作
对目录:可以进入目录中
-------------------------------------------------------------------
chown username file|dir ##修改文件或目录的所有者
chgrp groupname file|dir ##修改文件或目录组
chown username:groupname file|group ##同时修改文件或目录的所有者和组
chown -R username dir ##修改目录以及子文件的所有者
--------------------------------------------------------------------------
chmod <u|g|o><+|-|=><r|w|x> 文件名 ##修改(所有者|组|其他人)权限
chmod 数组 文件名 #修改(所有者|组|其他人)权限
chmod -R 数组 路径 #修改路径以及子文件(所有者|组|其他人)的权限
----------------------------------------------------------------------
字符方式修改该文件权限
chmod [-R] <u|g|o><+|-|=><r|w|x> file|dir ##-R表示递归,即修改目录下所有文件的权限
命令 参数 文件名
chmod u-x file1 ##file1拥有者去掉x权限
chmod g+w file1 ##file1拥有组添加w权限
chmod u-x,g+w file1##file1拥有者去掉x权,file1拥有组添加w权限
chmod ugo-r file2 ##file2的用户组其他人去掉r权限
chmod ug+x,o-r file3 ##file3用户和组添加x权限,其他人去掉r权限
----------------------------------------------------------------------------
数字和权限的关系:
rwx=7
rw-=6
r-x=5
r--=4
-wx=3
-w-=2
--x=1
r=4
w=2
x=1
----------------------------------------------------------
示例:
chmod 修改后权限值 file
chmod 777 file
释义:把读写操作的权利给file文件的所有者、组,以及其他组外用户