linux文件系统1

Linux文件系统

硬盘在出厂时进行低级格式化后,被划分了扇区和磁道,扇区是最小的物理存储单位,每个扇区为512字节。每个盘上的扇区组成一个圆,多个盘上的圆组成一个柱面,柱面就是磁盘分区的最小单位,即相同柱面的信息一定处于一个分区。

硬盘中的第一个扇区由446字节的master bootrecord64字节的分区表patition table

分区信息每条16字节,所以最多只能有3个主分区和1个扩展分区,但是每个扩展分区又可以划分为若干个逻辑分区。

硬盘通过分区之后,划分为了彼此相互独立的空间,将分区后的磁盘再次按照文件格式和对存储的需求进行格式化,从而建立起一个独立的文件系统。

文件系统将文件的权限、属性、存取时间等通过索引innode的形式进行存取,将文件的数据按照block块的形式存取,并在inodeblock之间建立关联映射,再用目录文件将其下的所有inode信息记录在案,每次需要找到文件通过层层目录找到索引,通过索引的指向找到存储数据的块。

linux中经常见到有对应多个inode个数的文件,这又是怎么回事呢?

其实这些都是链接文件,链接文件分为硬链接和软链接两种。

硬链接:有两个或者两个以上的文件名能找到相同的inode文件,再由这个inode文件指向这个block

软链接:文件名指向第一个文件的inode,第一个inode指向第一个block,但是这个块中存取的并不是文件,而是下一个inode的路径,再有这个路径顺藤摸瓜的找到最终的文件。

硬链接:不可跨分区;不能使目录;会改变链接的个数。

软链接:可以对目录;可以跨文件系统;不会改变链接的计数。

生成链接文件:

ln源文件生成的链接文件

-v显示创建过程

-s创建软链接

硬盘分区存储情况的查看

DF

-i显示可用inode数目;

-h单位换算

du显示目录中包含文件的总大小

-s总计大小

-h单位换算

任务的定期执行

crond周期性执行使用service crond status查看服务是否开启

crondminhour day monthweek command

linux下的磁盘管理

硬盘的接口:

ATA接口:并行传输 133M/S

SATA接口:串行传输 300M/S

SCSI接口:并行传输高转速且低cpu占用率多用于企业级服务器

SAS接口:串行传输的SCSI

Linux对硬盘的识别:

主设备号:用于区分硬盘,第一块到最后一块用【a-z】来编号,能知道这个服务器有几块硬盘。

次设备号:用于分区硬盘上的每个分区用【1-n】来编号

只有IDE接口的硬盘名为SD,其他接口的均为hd

由于linux一切皆文件的思想,硬盘也不例外的是一类文件,有udev程序生成,每次启动系统udev自动生成/dev目录下的所有设备文件,所以硬盘的排列顺序可能发生改变,若要实现恒定次序,需要对/etc/udev/rule.d/目录下的文件进行修改

磁盘的分区

Fdisk 磁盘名

进入交互界面

新建一个分区

删除一个分区

查看分区信息

写入并退出

不写入直接退出

调整分区类型

fdraid

分区完成后使用partprobe后跟整个磁盘,重读磁盘分区。

文件系统的建立

格式化:

Mke4fsfilesystem

-b指定block的大小

-c检测磁盘坏块

-m 指明管理空间

手动发起自检

Fsck选项分区名称

-t手动发起自检

-a遇到错误时自动修复

设备挂载、卸载

mount选项设备挂载目录

-t文件系统ext2ext3ext4 iso9660

-r挂载设置值读

-w挂载设置可写

-n挂载但不记录在/etc/mtab

-o挂载选项

不执行任何选项为默认

Aysnc异步写入,在内存缓冲区的内容不实时写入硬盘;

Atime设备中文件不更新访问时间

exec允许执行2禁止文件

r只读

remount重新挂载

-a挂载所有文件系统

卸载使用umount命令用法与mount相同

卸载时发现进程占用无法卸载时的解决办法

Fuser磁盘名称

查看当前正在占用文件系统、服务的进程

-v详细显示

-m所有使用文件系统的进程

-k杀死进程、踢出用户

Blkid显示文件系统的UUID

[root@zl /]# blkid /dev/mapper/VolGroup-lv_swap 

/dev/mapper/VolGroup-lv_swap: UUID="1eccddd1-a354-4b76-b4e1-68331f062959" TYPE="swap"

Mount作用显示挂载信息

[root@zl /]# mount 

/dev/mapper/VolGroup-lv_root on / type ext4 (rw)

proc on /proc type proc (rw)

sysfs on /sys type sysfs (rw)

devpts on /dev/pts type devpts (rw,gid=5,mode=620)

tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")

/dev/sda1 on /boot type ext4 (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

df �Clh磁盘使用率挂载情况

df �Cilh磁盘inode使用率、挂载信息

FilesystemInodesIUsedIFree IUse% Mounted on

/dev/mapper/vol0-root

7.4M101K7.3M2% /

/dev/mapper/vol0-home

496K342496K1% /home

/dev/sda126K3626K1% /boot

tmpfs63K163K1% /dev/shm

/dev/sda51.2M111.2M1% /mnt/sda5

Free �Cm 查看内存缓存虚拟内存使用情况

totalusedfreesharedbufferscached

Mem:490369121051187

-/+ buffers/cache:129361

Swap:9910991

swapon挂载虚拟内存

-a挂载所有虚拟内存

swapoff卸载虚拟内存

 

你可能感兴趣的:(Linux磁盘管理)