1、磁盘(房子)
2、分区(划分隔断)
3、格式化创建文件系统(装修)
4、挂载(安装门窗)
5、存放文件(住人)
索引节点(index node)
通过文件名找到inode号码
格式化创建文件系统 生成inode和block。
inode索引节点号码就相当于家庭住址
inode是一个小空间存放文件属性和block的位置
先通过文件名找到inode号码
再读取inode中存放的block位置信息
最后显示block内容,就是显示文件的内容。
1)在系统中创建一个非空的文件占用一个inode和至少一个block
2)在同一个分区中(文件系统),如果两个文件的inode号码相同这两个文件互为硬链接
3)inode大小 256字节 (再centos6.x系统中),分区小于500M时为128字节
格式化创建文件系统与inode一起产生
存放数据(文件内容)
block是用来存放文件内容
1、大小 block 默认4k(centos6.x)
2、如果文件很大,会占用多个block,如果文件很小,剩余空间无法使用
3、磁盘进行读写 io 是按照block为单位的 读取一次block 算一次io
查看文件大小
block的大小,其实就是磁盘物理空间的大小。
[root@znix ~]# ls -lh
total 692K
-rw-r--r-- 1 root root 0 Aug 29 09:34 1
-rw-------. 1 root root 1.1K Aug 10 18:39 anaconda-ks.cfg
使用ls -lhi 命令
l显示详细信息
h 以人类可读的方式显示
i 显示inode号码
[root@znix ~]# ls -lhi
total 692K
42 -rw-r--r-- 1 root root 0 Aug 29 09:34 1
15199 -rw-------. 1 root root 1.1K Aug 10 18:39 anaconda-ks.cfg
57 -rw-r--r--. 1 root root 292 Aug 17 16:23 ett.txt
49 -rw-r--r--. 1 root root 0 Aug 16 16:28 find
使用 stat 命令可以查看文件的详细信息
[root@znix ~]# stat /etc/hosts
File: `/etc/hosts'
Size: 250 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 390175 Links: 2
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2017-08-28 11:32:03.002850494 +0800
Modify: 2017-08-28 11:31:58.819852365 +0800
Change: 2017-08-28 11:31:58.821852222 +0800
df 命令查看,可以加-h 以人类可读的方式显示
[root@znix ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 9213440 1590408 7148360 19% /
tmpfs 242992 0 242992 0% /dev/shm
/dev/sda1 194241 40002 143999 22% /boot
加-h 以人类可读的方式显示
[root@znix ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 8.8G 1.6G 6.9G 19% /
tmpfs 238M 0 238M 0% /dev/shm
/dev/sda1 190M 40M 141M 22% /boot
df -i参数,显示inode的数量及使用情况。
[root@znix ~]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda3 593344 58495 534849 10% /
tmpfs 60748 1 60747 1% /dev/shm
/dev/sda1 51200 39 51161 1% /boot
使用dumpe2fs命令查看分区里的inode信息
[root@znix ~]# dumpe2fs /dev/sda3|grep "Inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size: 256
grep -i 不区分大小写
[root@znix ~]# dumpe2fs /dev/sda3|grep -i "inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size: 256
1、创建一个文件 要占用一个inode和至少一个block
2、文件大小 占用一个block 剩余空间不能使用
如果向磁盘写入数据提示如下错误:No space left on device(磁盘空间不足),通过df -h查看磁盘空间,发现没满,请问可能原因是什么?企业场景什么情况下会导致这个问题发生?
情况1 --常见 block
实际的存储空间使用完
使用df -h 查看使用率到100%
解决:
找到系统中的大文件,确认无用后删除,释放磁盘空间
情况2 ---inode用光了
使用df -i 查看会发现inode剩余为0
解决:
inode用光有可能是小文件过多,删除无用的小文件。
查看日志文件是否过多,删除无用的日志文件。
drwxrwxrwt. 10 root root 4096 Aug 29 09:29 tmp
-rw-r--r-- 1 root root 237 Aug 28 11:45 oldboy.txt
lrwxrwxrwx. 1 root root 13 Aug 10 18:36 rc.local -> rc.d/rc.local
- 普通文件 file
d 目录 directory
l 软连接 soft link
在windows中是区分不同的文件类型的
在linux有没有扩展名都可以都行,给人类看的,为了让使用者能够区分不同文件
flie命令能够查看文件的具体类型
[root@znix ~]# file /tmp/etc.tar.gz
/tmp/etc.tar.gz: gzip compressed data, from Unix, last modified: Fri Aug 25 09:34:00 2017
命令,二进制文件 /bin/ls
文本文件 /etc/hosts
数据文件 /tmp/etc.tar.gz
zcat 和zless 可以查看压缩包里的内容
[root@znix ~]# zcat /tmp/ser.tar.gz
[root@znix rc.d]# zless /tmp/ser.tar.gz
过大的文件可以使用 less 查看。
[root@znix ~]# less /etc/services
大文件不要使用cat看。使用以下命令,减少资源占用,方便查看。
less 向上向下都可以
head
tail
grep
more 只能向下看
电脑-查看电脑里面的内容 向电脑里面添加内容 运行软件的权限
r(read) w(write) x(execute)
主人 家人 隔壁老王 oldboy-notepad
所有者 属于用户组 陌生人 其他人
rw- r-- r--
r===4
w===2
x===1
-===0
r读取
w修改
x执行 命令或脚本
linux是一个多任务、多用户(同时有多个用户,连接到你的系统中,他们之间的操作不干扰)。
UID 用户的ID user id
GID 用户组的ID group id
对root用户加以限制保证系统更加安全:
1、禁止root远程登陆,不让你以root用户的身份连接到系统中
2、更改sshd默认端口号
虚拟用户是没有办法使用
产生虚拟用户是满足一个需求: linux下面每个软件/服务运行的时候都需要一个用户
/etc/passwd 用户的信息
/etc/shadow 用户的密码信息
/etc/group 用户组的信息
/etc/gshadow 用户组的密码()
root :x :0 :0 :root :/root :/bin/bash
nobody :x :99 :99 :Nobody :/ :/sbin/nologin
oldboy :x :500 :500 : :/home/oldboy :/bin/bash
用户名 原来密码的位置 UID GID 用户的说明信息 用户的家目录 命令解释器
/bin/bash 默认
/sbin/nologin 无法登陆系统--虚拟用户
[root@znix ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
column 可以让文档内容自动对齐
-t 根据空格让每一列对齐
-s指定分隔符
[root@znix ~]# column -t -s ":" /etc/passwd
root x 0 0 root /root /bin/bash