Linux磁盘管理及文件系统管理

Linux磁盘管理

        I/O  Ports:I/O设备地址

        一切皆文件:open(),read(),write(),close()

               块设备:Block,存取单位“块”,磁盘

               字符设备:char,存取单位“字符”,键盘

                               

               设备文件:关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信

                      设备号码:

                             主设备号:标识设备类型

                             次设备号:标识同一类型下的不同设备

                      硬盘接口类型:并行(IDE,SCSI)串口(SATA,SAS,USB)

                      /dev/DEV_FILE

                              磁盘设备的设备文件命名:

                              IDE:/dev/hd

                              SCSI,SATA,SAS,USB:/dev/sd

                                      不同设备:a-z

                                             /dev/sda,/dev/sdb,...

                                      同一设备上的不同分区:1,2,……

                                             /dev/sda1,/dev/sda5

                      机械式硬盘:

                             track:磁道

                             cylinder:柱面

                             secotr:扇区

                                    512bytes

                             如何分区:

                                    按柱面

                            0磁道0扇区:512bytes

                                    MBR:Master Boot Record

                                               446bytes:boot loader

                                               64bytes:分区表

                                                   16bytes:标识一个分区

                                               2bytes:55AA

                                               4个主分区

                                                     3个主分区+1个扩展(N个逻辑分区)

                            问题:UEFI,GPI?

 

        分区管理工具:fdisk,parted,sfdisk

               fdisk:对于一块硬盘来讲,最多只能管理15分区

               #fdisk  -l  [-u]  [device...]

               #fdisk  device

                       子命令:管理功能

                                p:print,显示已有分区

                                n:new,创建

                                d:delete,删除

                                w:write,写入磁盘并退出

                                q:quit,放弃更新并退出

                                m:获取帮助

                                l:列表所分区id

                                t:调整分区id

               查看内核是否已经识别新的分区:cat /proc/partations

               通知内核重新读取硬盘分区表:partx -a /dev/DEVICE

                                                                          -n M:N

                                                                kpartx -a /dev/DEVICE

                                                                           -f:force

 

           

Linux文件系统管理:

        Linux文件系统:ext2,ext3,ext4,xfs,btrfs,reiserfs,jfs,swap

                swap:交换分区

                光盘:iso9660

        Windows:fat32,ntfs

        Unix:FFS,UFS,JFS2

        网络文件系统:NFS,CIFS

        集群文件系统:GFS2,OCFS2

        分布式文件系统:ceph,moosefs,mogilefs,GlusterFS,Lustre

        根据其是否支持“journal”功能:

               日志型文件系统:ext3.ext4,xfs,...             

               非日志型文件系统:ext2,vfat

        文件系统的组成部分:

               内核中的模块:ext4,xfs,vfat

               用户空间的管理工具:mkfs,ext4,mkfs.xfs,mkfs.vfat

        Linux的虚拟文件系统:VFS

        创建文件系统:

               mkfs命令:

               (1)mkfs.FS_TYPE  /dev/DEVICE

                                 ext4

                                 xfs

                                 brtfs

                                 vfat

               (2)mkfs  -t  FS_TYPE  /dev/DEVICE

                 -L  'LABEL':设定卷标

               mke2fs:ext系列文件系统专用管理工具

                        -t  {ext2|ext3|ext4}

                        -b {1024|2048|4096}

                        -L 'LABEL'

                        -j:相当于  -t  ext3

                              mkfs.ext3 = mkfs -t ext3 = mke2fs -j =mke2fs -t = ext3           

                        -i:为数据空间中每多个字节创建一个inode;此大小不应该小于block的大小

                        -N:为数据空间创建多少个inode

                        -m:为管理人员预算的空间占据的百分比

                        -O FEATURE[,...]:启用指定特性

                             -O ^FEATURE:关闭指定特性

               mkswap:创建交换分区

                       mkswap  [option]  device

                                -L  'LABEL'

                       前提:调整其分区的ID为82

 

        其它常用工具 

               blkid:块设备属性信息查看

                     blkid [option]...[device]

                             -U  UUID:根据指定的UUID来查找对应的设备

                             -L  LABEL:根据指定的LABEL来查找对应的设备

               e2label:管理ext系列文件系统的LABEL

                     e2label  device  [label]

               tune2fs:重新设定ext系列文件系统可调整参数的值

                         -l:查看指定文件系统超级块信息:supper block

                         -L 'LABEL':修改卷标

                         -m:修改留给管理员的空间百分比

                         -j:将ext2升级为ext3

                         -O:文件系统属性启用或禁用

                         -o:调整文件系统的默认挂载选项

                         -U UUID:修改UUID号

               dumpe2fs:

                         -h:查看超级块信息

 

        文件系统检测:

               fsck:File  System  Check

                      fsck.FS_TYPE

                      fsck  -t  FS_TYPE

                              -a:自动修复错误

                               -r:交互式修复错误

                              注意:FS_TYPE一定要与分区上已经文件类型相同

               e2fsck:ext系列文件专用的检测修复工具

                           

              

 

    

                     

                                                                     

     

                             

posted @ 2018-07-10 14:01  axzq  阅读(98)  评论(0)    收藏  举报