文件属性
每列的含义
[root@oldboyedu ~]# ll -i
33575029 -rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
第一列:
inode号 index node 文件索引 存放着 指向blok的指针 每个文件都占用一个inode
block 具体存放文件内容的位置
每个文件占用多个block 4k大小 最小的存储单位
block的大小
具体看业务: 生成的小文件多 还是大文件多 公司中的大文件也小文件业务
小文件 block小一些好 节省磁盘空间
生成1个小文件 不到1K ... 生成第二个小文件的时候 会重新占用一个新的block 4K
block 4k 有一个10K的文件
占用3个block
大文件10M ---> block 很多很多
读取一个block的时间为1秒
10M 占用的block的事件为 10M/4K的时间
ps:以上两个 其中一个满 无法往磁盘中写数据
读取文件内容的一个过程:
1.先找到文件名称(上级目录的block 文件名称存储在上级目录中)
2.找到文件名 就能找到对应inode
3.通过inode找到对应block
文件属性 第二列 分为三列
- |
rw-r--r-- |
. |
文件类型 |
文件的权限 |
开启了selinux生成的 |
Selinux 美国国家安全局开发的安全策略服务 不用
(阿里发起过去IOE运动)
需要关闭selinux
1.如何查看当前selinux是否开启
[root@oldboyedu ~]# getenforce
Enforcing
2.临时关闭selinux
[root@oldboyedu ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
3.永久关闭selinux
vim /etc/selinux/config
SELINUX=disabled
重启操作系统
文件类型
什么是文件类型:
windows: 以后缀名识别不同的文件类型
.exe
.txt
.mp4
.avi
.pdf
.jgp
………… 改了就不能用了
而Linux: 后缀名称只是给我们自己看的
less 使用
less 一页一页的查看文件内容 类似more 了解
特点: 查看较大的文件 如果一个文件超过600M vim或者cat查看的时候速度非常慢 为什么?
空格/f 往下翻页
b 往上翻页
100G 跳转到100行
1g 到首行
G 文件末尾
/搜索内容 回车
n 查找下一个
N 查找上一个
Linux的文件类型
- 普通文件
三种普通文件都是以 - 来表示
1.普通文件 普通文件 cat vim echo > less(一页一页的查看文件中的内容)
-rw-r--r--. 1 root root 84485563 Nov 5 10:43 hosts
2.二进制文件 可执行命令 ls pwd touch 都是二进制文件
-rwxr-xr-x. 1 root root 62568 Oct 31 2018 /usr/bin/touch
3.数据文件 压缩包 .rpm包
-rw-rw-r-- 1 root root 84280 Aug 23 2019 zziplib-0.13.62-11.el7.x86_64.rpm
-rw-r--r-- 1 root root 550 Nov 5 10:47 all.tar.gz
d 表示目录
drwxr-xr-x 2 root root 6 Nov 5 10:48 dir
l 软链接文件 softlink 类似windows的快捷方式 存着放源文件的指针 会占用一个inode
软链接的特点:
链接文件 存放着指针
rwxrwxrwx 最高的权限 看着权限最高 实际还得看源文件的权限
软链接在前面 源文件在> 后面
b 块设备 硬件设备
brw-rw---- 1 root disk 8, 0 Nov 5 10:27 /dev/sda
brw-rw---- 1 root disk 8, 1 Nov 5 10:27 /dev/sda1
c 字节设备 可以自动生成一些字符串 也可以类似黑洞 吸收很多内容
[root@oldboyedu ~]# ll /dev/urandom 吐的
crw-rw-rw- 1 root root 1, 9 Nov 5 10:27 /dev/urandom
[root@oldboyedu ~]# ll /dev/zero 吐得
crw-rw-rw- 1 root root 1, 5 Nov 5 10:27 /dev/zero
经常生成一些大的测试文件 比如生成1G的文件 配置成swap交换分区 扩展
dd if=/dev/zero of=./1g.txt bs=1M count=1000
命令
if input file
of output file
bs 每次接收多大的数据
count 总共接收多少次
[root@oldboyedu ~]# ll /dev/null 吃的
crw-rw-rw- 1 root root 1, 3 Nov 5 10:27 /dev/null
> 或者1> 标准正确输出重定向
>> 标准正确追加输出重定向
标准正确输出:
执行的命令是正确的 成功结果
比如
ls cat ping成功后的结果
[root@oldboyedu ~]# ls 1g.txt
1g.txt
[root@oldboyedu ~]# ls 1g.txt > ok.txt
[root@oldboyedu ~]# cat ok.txt
1g.txt
[root@oldboyedu ~]# ls 1g.txt >> ok.txt
[root@oldboyedu ~]# cat ok.txt
1g.txt
1g.txt
[root@oldboyedu ~]# ls 1g.txt 2>> ok.txt
1g.txt
[root@oldboyedu ~]# cat ok.txt
1g.txt
1g.txt
2> 标准错误输出重定向
2>> 标准错误追加输出重定向
标准错误输出:
命令错误 执行结果不正确
[root@oldboyedu ~]# ls 1ggg.txt 2> ok.txt
[root@oldboyedu ~]# cat ok.txt
ls: cannot access 1ggg.txt: No such file or directory
[root@oldboyedu ~]# ls 1g.txt 2> ok.txt
1g.txt
[root@oldboyedu ~]# cat ok.txt
要接收正确和错误的
[root@oldboyedu ~]# ls 1g.txt 2> ok.txt
1g.txt
[root@oldboyedu ~]# cat ok.txt
[root@oldboyedu ~]# ls 1g.txt >> ok.txt 2>> ok.txt
[root@oldboyedu ~]# cat ok.txt
1g.txt
[root@oldboyedu ~]#
[root@oldboyedu ~]# ls 1gggg.txt >> ok.txt 2>> ok.txt
[root@oldboyedu ~]# cat ok.txt
1g.txt
ls: cannot access 1gggg.txt: No such file or directory
[root@oldboyedu ~]# ls 1gggg.txt >>ok.txt 2>&1
[root@oldboyedu ~]# ls 1g.txt >>ok.txt 2>&1
[root@oldboyedu ~]# cat ok.txt
1g.txt
ls: cannot access 1gggg.txt: No such file or directory
ls: cannot access 1gggg.txt: No such file or directory
1g.txt
[root@oldboyedu ~]# ls 1g.txt &>ok.txt
[root@oldboyedu ~]# ls 1gggg.txt &>ok.txt
[root@oldboyedu ~]# cat ok.txt
ls: cannot access 1gggg.txt: No such file or directory
[root@oldboyedu ~]# ls 1gggg.txt &>>ok.txt
[root@oldboyedu ~]# ls 1g.txt &>>ok.txt
[root@oldboyedu ~]# cat ok.txt
ls: cannot access 1gggg.txt: No such file or directory
ls: cannot access 1gggg.txt: No such file or directory
1g.txt
$? ?变量中存放着上一条执行命令的结果 0为成功 非0 失败
[root@oldboyedu ~]# ping -c2 -W1 www.baidu.com &>/dev/null
[root@oldboyedu ~]# echo $?
0
[root@oldboyedu ~]# ping -c2 -W1 www.baiduaaaaaaaaaaaaaa.com &>/dev/null
[root@oldboyedu ~]# echo $?
2
了解 文件类型
s
p
文件权限: rw-r--r--
r read 读取文件 less cat
w write 写入 可以编辑 echo vim
x excute 可执行
- 代表没权限
Linux系统中文件的最高权限是rw 作为普通文件我们对它做什么操作?
x 权限可执行权限 shell脚本 rwx
rw-r--r-- # 三位为一组
前三位 文件的拥有者 属主(哪个用户创建的这个文件 比如我们自己的笔记本 属于我们自己) 拥有的权限 rw 可读 可写
中三位 文件的属组 权限 (这个文件属于哪个组 比如我们笔记本属于家庭 ) 拥有可读的权限
后三位 其他用户 陌生人(比如笔记本对应着 不是家人 也不是主人) 拥有可读的权限
33575029 -rw-r--r--. 1 root root 337 Nov 2 10:26 hosts
第三列 1 硬链接的个数 给1个文件开了多个入口 类似于超市开了多个门
作用: 提高文件的安全性
特点: 文件默认1个硬链接数
目录 默认2个硬链接
第四列 root 属主 文件的拥有者 使用哪个用户创建 默认哪个用户的属主 root用户可以修改指定文件属主属组
第五列 root 属组 文件属于哪个组 使用哪个用户创建 默认哪个用户的属主
第六列 337 文件的大小 ll -h
第七列 Nov 2 10:26 文件的时间三种 Access 访问时间cat Modify 内容修改时间 Change属性修改时间 下午测试
第八列 文件名称