find 文件(重点)
在Linux系统中,有个文件名 man_db.conf , 但是我忘记了它在什么地方。可以通过使用 find命令进行搜索查找。
根据文件名进行查找
find / -name man_db.conf
- / 表示从 根目录下开始查找。
- -name 表示查找条件 文件名。
- man_db.conf 要查找的文件名。
* 匹配文件名
有一个文件名我记不太清楚了,但是记得文件名中 mess
开头 ,现在要找这个文件。
find / -name 'mess*'
- mess* 表示以 mess开头的所有文件或者文件夹。
根据文件大小进行查找
指定文件大小
使用 -size 参数进行查找。
find / -size 5G
- -size 5G 5G大小的文件
指定区间
+300M 表示 大于300M
-1000M 表示 小于1000M
查找300M-1000M 之间的文件
find / -size +300M -size -1000M
- 在 /tmp 目录创建两个文件
fanmao.460M
fanmao.2G
- 查找 系统中文件名 包含
fan
并且文件大小 大于 1G的文件路径。
find / -name '*fan*' -size +1G
locate 查找文件
快速查找文件
注意,使用 locate 命令查找文件的时候,需要先执行 updatedb
更新索引。
安装
yum install -y mlocate
先更新索引
updatedb
查找文件名中包含 fanmao
的文件
在 /root 目录下创建文件 fanmao.txt
touch /root/fanmao.txt
执行更新db
updatedb
进行查找
locate fanmao
默认 locate 命令不会搜索 /tmp 目录下的内容
修改配置文件
vi /etc/updatedb.conf
将文件中的 /tmp 删掉 并保存。
locate 一般使用 根据文件名进行搜索。
将 updatedb.conf 文件上传到服务器 覆盖 /etc/updatedb.conf 文件。
- 使用scp 命令上传 ```
scp updatedb.conf root@ip:/etc/updatedb.conf
---
<a name="jcsIx"></a>
# 文件权限
文件的权限分为三种
- 只读权限 r 只能查看文件中的内容
- 可写权限 w 可以更改文件的内容
- 可执行权限 x 文件是可执行脚本,可以进行运行。
---
查看文件的权限
1. 在 /root 目录下 创建 Helloworld.txt 文件,文件中输入内容
hello world!
2. 使用 ls -al Helloworld.txt 查看文件详情。
[root@VM-0-14-centos tmp]# ls -al /root/Helloworld.txt -rw-r—r— 1 root root 13 Mar 3 14:34 /root/Helloworld.txt [root@VM-0-14-centos tmp]# ls -ll /root/Helloworld.txt -rw-r—r— 1 root root 13 Mar 3 14:34 /root/Helloworld.txt [root@VM-0-14-centos tmp]# ll /root/Helloworld.txt -rw-r—r— 1 root root 13 Mar 3 14:34 /root/Helloworld.txt
3. 创建一个新用户 `zhangsan`
useradd zhangsan
4. 给 `zhangsan`设置登录密码
passwd zhangsan
<br />根据提示输入密码 123456
5. 退出root 账号
exit

6. 登录zhangsan
ssh zhangsan@ip
输入密码进行登录。
7. 查看当前用户信息
whoami

8. 使用zhangsan 账号 查看 /root/ 的信息。发现没有权限。

9. 切换到root 账户
su root

---
权限值<br />
权限分为
- r 可读权限
- w 可写权限
- x 可执行权限
- - 没有权限
---
查看 /opt/zbox/zbox 文件的权限。
<a name="I3MMe"></a>
## 修改权限值
[root@iZuf6ecwnj4s31f1rle6wuZ ~]# ls -ll total 4 -rw-r—r— 1 root root 12 Mar 3 15:07 helloworld.txt
Linux中每个权限都对应有权限值<br />r --- 4<br />w --- 2<br />x --- 1<br />-没有值 0
---
rw-r--r--
- 第一组 rw- 对应的权限值为 (4+2+0 =6)
- 第二组 r-- 对应的权限值 (4+0+0=4)
- 第三组 r-- 对应的权限值 (4+0+0=4)
我现在希望将权限改为 <br />`rw-rw-rw-`<br />对应的权限值<br />rw- (4+2+0=6)<br />rw- (4+2+0=6)<br />rw- (4+2+0=6)
---
<a name="kOr8q"></a>
## chmod 修改权限值
修改方式为
chmod 666 文件名
将/root 目录下的Helloworld.txt 修改权限为 `rw-rw-rw-`<br />使用命令
chmod 666 /root/Helloworld.txt
如果要将文件的权限 修改为 `rwxrwxrwx`<br />rwx (4+2+1=7)<br />rwx (4+2+1=7)<br />rwx (4+2+1=7)
chmod 777 /root/Helloworld.txt

---
1. 使用 root 账号 在 /tmp 目录下创建文件 fanmao.txt。 请问 /tmp/fanmao.txt 的文件权限值是多少?
1. 切换 zhangsan 用户, 使用zhangsan用户 进入到 /tmp 目录,请问张三能不能修改 /tmp/fanmao.txt 文件?
1. 如果不能修改,但是 zhangsan 特别希望能够修改 /tmp/fanmao.txt, 请你帮帮他。
使用 root 账户,修改文件的权限
su root
chmod 666 /tmp/fanmao.txt
<a name="LuEIU"></a>
# 用户群组 (了解)
<a name="PwjoM"></a>
## groupadd添加群组
只有root 用户才有添加群组的权限。<br />添加fanmao 群组
groupadd fanmao
创建群组成功之后,查看群组,使用 cat 命令,默认群组都放在 /etc/group 文件中。
cat /etc/group
<br />1002 表示的群组的编号。
<a name="FpNkz"></a>
## useradd创建用户指定用户组
创建用户 指定用户组<br />创建xiaoming 指定fanmao 用户组
useradd xiaoming -g fanmao
创建xiaohong 指定fanmao用户组
useradd xiaohong -g fanmao
查看所有用户信息d
cat /etc/passwd

---
1. 切换到 xiaoming 用户
su xiaoming<br />
2. 使用xiaoming账号在 /tmp 目录下创建 xiaoming.txt
touch /tmp/xiaoming.txt
3. 请问xiaohong账号能不能修改 /tmp/xiaoming.txt 文件?

<a name="zpDda"></a>
## groupdel删除群组
删除 zhangsan 群组
groupdel zhangsan
<br />删除用户组的时候,如果用户组中有用户存在,应该先将用户删掉,才能删除群组。
<a name="F6uQG"></a>
## userdel 删除用户
删除zhangsan
userdel zhangsan
<br />如果删除用户的时候,提示用户正在被使用。<br />先结束对应的进程。<br /><br />根据提示,进程号为 **25316 不同机器上可能不一样**
kill 25316
在结束进程之后,再使用 userdel zhangsan 删除,如果删除的时候提示 进程还在,也就是说之前的进程没有成功结束。
kill -9 25316
- -9 强制结束进程
<br />再次使用
userdel zhangsan
```
请将fanmao用户组删掉
- 查看 群组信息
cat /etc/group
- 查看用户信息
cat /etc/passwd
- 根据上面的信息 删除对应的用户
userdel xiaoming
userdel xiaohong
- 删除群组
groupdel fanmao