mkdir -p 当目录父目录不存在时候创建父目录
wc -l 统计个数 ls | wc -1
Linux用户权限解析
我们linux服务器上有严格的权限等级,如果权限过高导致误操作会增加服务器的风险。所以对于了解linux系统中的各种权限及要给用户,服务等分配合理的权限十分重要
基本权限 UGO
6 4 4
- rw- r-- r--
U G Ou user 属主权限
g group 属组权限
o other 其他人r 只读 4
w 可写 2
x 可执行 1
案例:
r w x rw- r-- alice hr file1.txt
属主权限 属组权限 其他*限 属主 属组 文件前提条件:jack属于hr组
一 alice对file1.txt文件有什么权限?
二 jack对file1.txt文件有什么权限?
a. jack是所有者吗?
b. jack属于hr组吗?
三 tom对file1.txt文件有什么权限?
a. tom是所有者吗?
b. tom属于hr组吗?
c. tom为其他人吗?
设置权限:
chown:改变文件或目录的所属主以及所属组
chmod:为文件或目录设置访问权限
chown:
[root@linux-server ~]# chown alice.hr file1.txt //修改属主、属组
[root@linux-server ~]# chown tom file1.txt //修改属主
[root@linux-server ~]# chown .it file1.txt //只改属组
[root@linux-server ~]# chown -R alice.hr dir1 //递归修改---针对目录
chmod:
groupadd hr 创建一个组
用户 组
useradd hr01 -G hr 创建一个用户指定到一个组
useradd hr02 创建一个组
mkdir /home/hr 创建一个目录chgrp hr /home/hr ## 修改目录的属组为hr
chmod 770 /home/hr 修改目录的权限
验证:hr01 可以进入用户
passwd hr01
cd /home/hr ##成功进入目录
添加hr02用户并设置密码后登陆
cd /home/hr 没有权限
想再次确认:
chmod 777 /home/hr (使用root账号操作)
cd /home/hr 可以进入 ##hr02用户。可以进入chmod 700 /home/hr
hr01 hr02 都进不去了 只有root可以进去。
a. 使用符号
[root@linux-server ~]# chmod u+x file1.txt //属主增加执行
[root@linux-server ~]# chmod a=rwx file1.txt //所有人等于读写执行
[root@linux-server ~]# chmod a=- file1.txt //所有人都没有权限
[root@linux-server ~]# chmod ug=rw,o=r file1.txt //属主属组等于读写,其他人只读
[root@linux-server ~]# ll
-rw-rw-r--. 1 tom it 0 Nov 1 15:30 file1.txt
b.使用数字
[root@linux-server ~]# chmod 644 file1.txt
[root@linux-server ~]# ll file1.txt
-rw-r--r--. 1 tom it 0 Nov 1 15:30 file1.txt[root@linux-server ~]# chmod 755 file1.txt
[root@linux-server ~]# ll
-rwxr-xr-x 1 root root 0 Jul 23 22:40 file1.txt[root@linux-server ~]# chmod 521 file1.txt
[root@linux-server ~]# ll
-r-x-w---x 1 root root 0 Jul 23 22:40 file1.txt
高级权限:
suid 给命令文件提权
chmod u+s /usr/bin/cat 针对文件(命令)
which rm
/usr/bin/rm
使普通用户能够使用sgid 给目录提权继承属组
chmod g+s /home/hr
针对目录
添加完高级权限后,新建的文件会继承目录的属组sticky 给目录提权只能删除自己文件
chmod o+t /home/dir1
针对目录
添加完高级权限以后,用户只能够删除自己创建的文件
补充内容:
ll -d :查看目录
ll : 查看文件
为用户添加组或覆盖掉用户之前所拥有的组
usermod -G hr,hr01 niuniu 覆盖原有组
usermod -aG hr,hr01 niuniu 添加新的组
五天总作业练习:
1创建用户jack和tom属于hr,wc组
2创建用户tony,属于hr组,并且将tony的密码修改为 hx。
3 账号添加 组添加 账号删除 组删除用什么命令?
4 给你的同桌账号提权(同桌登陆不上的。添加账号提权即可)
5 将jack 属于hr wc 组 现在人员调动,请删除服务器相关【所有信息】 请问你都删什么?
6 tom 现在属于wc组,现在升职了,请添加 it fd组。
7 账号添加不上是什么原因
8 你在企业里使用过什么操作系统?具体版本?请说出多个。
9 root用户的gid多少?
10 which命令干嘛的? 如果命令存储的文件被删除了,还可以使用么?
11修改普通用户xiaowang 和root的密码
12怎么判断一个账户是否存在??
13你为什么要修改SSH的默认端口??将现有端口修改为2000. 使用新端口登录
14 /etc/ /tmp/ /home /root 分别是什么??
15怎么查看组内成员信息??? 怎么查看用户在哪些组里?
16修改 /tmp 下1的文件权限为700 使用数字
17修改 /tmp下 2的目录 权限为765 使用字母
18 请查看 1 2 的权限
19 linux系统下 默认创建的文件及目录权限分别是多少?
20 使用字母给 1文件加执行权限
21 r w x 分别代表数字是多少?
22修改属主 , 属组命令是什么?
23 创建一个文件 /tmp/gongzi.txt 要求:此文件属于RS组,并且只有root和组成员能够读写执行。
24 创建一个文件 /tmp/shebei.txt 要求只有IT组的成员和root能够读写执行,其他人有只读权限
25 修改/tmp/shebei.txt权限为750 先使用chmod 777 shebei.txt 然后用字母去减 变成750
26 修改/tmp/gongzi.txt权限为700 使用英文字母 表示
27 添加zhangsan用户指定其家目录为 /zhangsan
28 root用户的UID 是多少?
29 root用户的gid多少?
30 针对hr部门的访问目录/home/it设置权限,要求如下:
root用户和hr组的员工可以读、写 其他用户无权限