linux文件系统管理

 1.硬盘的逻辑结构

红色:0磁道0扇区,放置启动引导程序。

蓝色 :扇区,存放数据,固定大小512Byte。最小存储单位。

机械磁盘:转速7200或5400,速度决定了读写数据的快慢。已损坏。

固态硬盘

2.硬盘接口

IDE接口,Intergrated Drive Electronics,电子集成驱动器,ATA/PATA硬盘,早期机械硬盘的主要接口。理论读取速度133MB/S。

SATA接口,Serial ATA,理论传输速度600MB/S。目前主流接口。

SCSI接口,Small Computer System Interface,小型计算机系统接口,速度达到320MB/S。

cpu速度快,因此采取分级缓存的方式,存储数据,内存(DDR4的内存条,理论读取速度每秒2400MB/S。)最主要数据放缓存,主要数据放内存,不重要放硬盘。一般服务器CPU的L1缓存的容量通常在32—256KB。

3.linux文件系统的特性

超级块:存档整个分区,总节点数,已用和未用节点数,总数据块数,已用和未用数据块数,以及数据组的信息,可以通过命令 dumpe2fs -h /dev/sda1 查询数据

数据块:

节点:记录文件的权限,rwx,文件的所属组,所有者,文件的状态改变时间,文件最近一次读取时间

# 查看 sda硬盘第一个分区的超级块的信息
yanyanzhang@ubuntu:~/shell_study$ dumpe2fs -h /dev/sda1 dumpe2fs 1.42.13 (17-May-2015) dumpe2fs: Permission denied while trying to open /dev/sda1 Couldn't find valid filesystem superblock. yanyanzhang@ubuntu:~/shell_study$ su Password: root@ubuntu:/home/yanyanzhang/shell_study# dumpe2fs -h /dev/sda1 dumpe2fs 1.42.13 (17-May-2015) Filesystem volume name: <none> Last mounted on: / Filesystem UUID: 558ad55d-011d-4fc3-a8c2-bea044044f2e Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash Default mount options: user_xattr acl Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 1248480 # 节点数量 Block count: 4992512 # 数据块数量 Reserved block count: 249625 Free blocks: 1811785 # 未使用数据块数量 Free inodes: 871316 # 未使用节点数量 First block: 0 Block size: 4096 # 数据块大小4kb Fragment size: 4096 Reserved GDT blocks: 1022 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8160 Inode blocks per group: 510 Flex block group size: 16 Filesystem created: Tue Dec 22 22:20:47 2020 Last mount time: Tue May 4 17:01:04 2021 Last write time: Tue May 4 17:01:04 2021 Mount count: 9 Maximum mount count: -1 Last checked: Tue Dec 22 22:20:47 2020 Check interval: 0 (<none>) Lifetime writes: 63 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 673270 Default directory hash: half_md4 Directory Hash Seed: 9db19dd8-1f1d-4a0f-9afa-f3a39c4e403e Journal backup: inode blocks Journal features: journal_incompat_revoke Journal size: 128M Journal length: 32768 Journal sequence: 0x0001410a Journal start: 8194

centos7使用的是xfs文件系统。

win下的是NTFS文件系统,linux默认不识别NTFS文件系统,如需要识别,需要重新编译内核。

4.常用的硬盘命令

df命令 -a显示特殊文件系统,这些文件系统几乎是保存在内存中的,如/proc,因为是挂载在内存中, -h 单位换算成习惯单位,-T多出文件系统类型一列

root@ubuntu:/home/yanyanzhang/shell_study# df -a
Filesystem     1K-blocks     Used Available Use% Mounted on
sysfs                  0        0         0    - /sys
proc                   0        0         0    - /proc
udev             1977208        0   1977208   0% /dev
devpts                 0        0         0    - /dev/pts
tmpfs             401592    16408    385184   5% /run
/dev/sda1       19525500 12275696   6234920  67% /
securityfs             0        0         0    - /sys/kernel/security
tmpfs            2007948      216   2007732   1% /dev/shm
tmpfs               5120        4      5116   1% /run/lock
tmpfs            2007948        0   2007948   0% /sys/fs/cgroup
cgroup                 0        0         0    - /sys/fs/cgroup/systemd
pstore                 0        0         0    - /sys/fs/pstore
cgroup                 0        0         0    - /sys/fs/cgroup/net_cls,net_prio
cgroup                 0        0         0    - /sys/fs/cgroup/blkio
cgroup                 0        0         0    - /sys/fs/cgroup/cpu,cpuacct
cgroup                 0        0         0    - /sys/fs/cgroup/hugetlb
cgroup                 0        0         0    - /sys/fs/cgroup/pids
cgroup                 0        0         0    - /sys/fs/cgroup/perf_event
cgroup                 0        0         0    - /sys/fs/cgroup/cpuset
cgroup                 0        0         0    - /sys/fs/cgroup/devices
cgroup                 0        0         0    - /sys/fs/cgroup/memory
cgroup                 0        0         0    - /sys/fs/cgroup/freezer
cgroup                 0        0         0    - /sys/fs/cgroup/rdma
systemd-1              0        0         0    - /proc/sys/fs/binfmt_misc
debugfs                0        0         0    - /sys/kernel/debug
mqueue                 0        0         0    - /dev/mqueue
hugetlbfs              0        0         0    - /dev/hugepages
configfs               0        0         0    - /sys/kernel/config
fusectl                0        0         0    - /sys/fs/fuse/connections
vmware-vmblock         0        0         0    - /run/vmblock-fuse
tmpfs             401592       64    401528   1% /run/user/1000
gvfsd-fuse             0        0         0    - /run/user/1000/gvfs

df -h:人性化显示使用情况

root@ubuntu:/home/yanyanzhang/shell_study# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            1.9G     0  1.9G   0% /dev
tmpfs           393M   17M  377M   5% /run
/dev/sda1        19G   12G  6.0G  67% /
tmpfs           2.0G  216K  2.0G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
tmpfs           393M   64K  393M   1% /run/user/1000

# TODO

原文地址:https://www.cnblogs.com/meloncodezhang/p/14737434.html