zoukankan      html  css  js  c++  java
  • LINUX核心命令实战总结九——磁盘与文件系统管理命令

    1.1 命令fdisk:磁盘分盘工具

    【功能说明】

    工具fdiskLinux下常用的磁盘分区工具。受mbr分区表的限制,fdisk工具只能给小于2TB的磁盘划分分区。如果使用fdisk对于大于2TB的磁盘进行分区,虽然可以分区,但其仅识别2TB的空间,所以磁盘容量若超过2TB,就要使用parted分区工具进行分区。

    【语法格式】

    fdisk   [option] [device...]
    fdisk  [选项] [设备名...]

    【选项说明】

    命令fdisk参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -l

    显示所有磁盘分区的信息(*

    【使用范例】

    [root@A ~]# fdisk -l
    Disk /dev/sda: 107.4 GB, 107374182400 bytes
    255 heads, 63 sectors/track, 13054 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x000a4199
     Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1          64      512000   83  Linux
    Partition 1 does not end on cylinder boundary.
    /dev/sda2              64       13055   104344576   8e  Linux LVM
    View Code

    Device:分区,这里有三个分区;

    Boot:启动分区,用*表示的是启动分区

    Start:表示开始的柱面

    End :表示结束的柱面

    Blocksblock块数量

    Id:分区类型ID

    System:分区类型

    交互式分区实践

    [root@A ~]# ls /dev/sd*        #查看分区前设备的状态
    /dev/sda  /dev/sda1  /dev/sda2  /dev/sdb  /dev/sdc  /dev/sdd  /dev/sde  /dev/sdf  /dev/sdg
    [root@A ~]# fdisk /dev/sdf        #不加参数,直接接设备名就可以分区
    Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
    Building a new DOS disklabel with disk identifier 0x2d011ec8.
    Changes will remain in memory only, until you decide to write them.
    After that, of course, the previous content won't be recoverable.
    
    Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').            #提示使用-c关闭dos兼容模式
                                     #提示-u参数使用扇区为单位分区
    Command (m for help): m                #m是帮助,需要人工输入m后回车,下同    
    Command action
       a   toggle a bootable flag                #设置引导扇区
       b   edit bsd disklabel                    #编辑bsd卷标
       c   toggle the dos compatibility flag        #设置dos兼容扇区
       d   delete a partition                    #删除一个分区
       l   list known partition types                #查看分区类型对应编号列表
       m   print this menu                    #打印帮助菜单
       n   add a new partition                    #新建一个分区
       o   create a new empty DOS partition table    #创建一个新的空DOS分区表
       p   print the partition table                #打印分区表
       q   quit without saving changes            #退出不保存更改
       s   create a new empty Sun disklabel        #创建新的空sun卷标
       t   change a partition's system id            #更改分区系统id
       u   change display/entry units            #改变显示/条目的单位
       v   verify the partition table                #验证分区表
       w   write table to disk and exit            #将操作写入分区表并退出程序
       x   extra functionality (experts only)        #额外的功能
    
    Command (m for help): n            #新建一个分区,需要人工输入n后回车
    Command action
       e   extended                    #创建扩展分区
       p   primary partition (1-4)            #创建主分区(1-4)
    p             #创建一个主分区,需要人工输入p后回车
    Partition number (1-4): 1        #设置分区编号为1,需要人工输入1后回车
    First cylinder (1-913, default 1): +500        
    #设置结束柱面(913)或分区大小(+100M),因为要划分指定大小的分区,所以常用+100M这种方法,如果分区时使用fdisk  -cu /dev/sdf,则这里就会使用扇区为单位来进行分区。
    Last cylinder, +cylinders or +size{K,M,G} (500-913, default 913): 
    Using default value 913
    
    Command (m for help): p
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    e
    Partition number (1-4): 2
    First cylinder (1-913, default 1): +2000M
    Last cylinder, +cylinders or +size{K,M,G} (255-499, default 499): 
    Using default value 499
    
    Command (m for help): p
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    /dev/sdf2             255         499     1967962+   5  Extended
    Command (m for help): p
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    /dev/sdf2             255         499     1967962+   5  Extended
    /dev/sdf3              51         254     1638630   83  Linux
    /dev/sdf5             255         261       56196   83  Linux
    /dev/sdf6             262         275      112423+  83  Linux
    /dev/sdf7             276         289      112423+  83  Linux
    /dev/sdf8             290         303      112423+  83  Linux
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    [root@A ~]# ls /dev/sd*
    /dev/sda   /dev/sda2  /dev/sdc  /dev/sde  /dev/sdf1  /dev/sdf3  /dev/sdf6  /dev/sdf8
    /dev/sda1  /dev/sdb   /dev/sdd  /dev/sdf  /dev/sdf2  /dev/sdf5  /dev/sdf7  /dev/sdg
    [root@A ~]# partprobe /dev/sdf   #执行该命令通知内核分区表已更改,此步是不重启让分区表生效命令
    
    格式化磁盘
    [root@A ~]# mkfs.ext4 /dev/sdf1
    mke2fs 1.41.12 (17-May-2010)
    文件系统标签=
    操作系统:Linux
    块大小=4096 (log=2)
    分块大小=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    208000 inodes, 831363 blocks
    41568 blocks (5.00%) reserved for the super user
    第一个数据块=0
    Maximum filesystem blocks=851443712
    26 block groups
    32768 blocks per group, 32768 fragments per group
    8000 inodes per group
    Superblock backups stored on blocks: 
            32768, 98304, 163840, 229376, 294912, 819200
    
    正在写入inode表: 完成                            
    Creating journal (16384 blocks): 完成
    Writing superblocks and filesystem accounting information: 完成
    
    This filesystem will be automatically checked every 39 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    View Code

    挂载磁盘分区

    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    tmpfs                  16G     0   16G   0% /dev/shm
    /dev/sda1             477M   33M  419M   8% /boot
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    [root@A ~]# mount /dev/sdf1 /mnt
    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    tmpfs                  16G     0   16G   0% /dev/shm
    /dev/sda1             477M   33M  419M   8% /boot
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf1             3.1G  5.6M  2.9G   1% /mnt
    [root@A ~]# echo "mount /dev/sdf1 /mnt">> /etc/rc.local
    [root@A ~]# tail -1 /etc/rc.local
    mount /dev/sdf1 /mnt
    View Code

    linux 添加硬盘如何不重启

    1. 添加了磁盘后查看,没有刷新出来

    [root@node /]# fdisk -l
    Disk /dev/sda: 17.2 GB, 17179869184 bytes
    255 heads, 63 sectors/track, 2088 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x000aa84a
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1        2089    16775168   83  Linux
    /dev/sda2            2089        2089        1024   82  Linux swap / Solaris
    View Code

    2. 查看主机总线号

    root@node /]# ls /sys/class/scsi_host/
    host0  host1  host2

    3.重新扫描SCSI总线来添加设备

    [root@node /]# echo "- - -" > /sys/class/scsi_host/host0/scan
    [root@node /]# echo "- - -" > /sys/class/scsi_host/host1/scan
    [root@node /]# echo "- - -" > /sys/class/scsi_host/host2/scan

    4. 查看磁盘,可以看到 /dev/sdb :53.7G 这个就是新加的盘

    [root@node /]# fdisk -l
    Disk /dev/sda: 17.2 GB, 17179869184 bytes
    255 heads, 63 sectors/track, 2088 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x000aa84a
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1        2089    16775168   83  Linux
    /dev/sda2            2089        2089        1024   82  Linux swap / Solaris
    Disk /dev/sdb: 53.7 GB, 53687091200 bytes
    255 heads, 63 sectors/track, 6527 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000

    fdisk非交互式分区(批量分区案例)

    sdc1

    sdc2

    sdc5

    sdc6

    n

    n

    n

    n

    p

    e

    l

    l

    1

    2

    enter

    enter

    enter

    enter

    +400M

    enter

    +100M

    enter

     

    [root@server ~]# fdisk /dev/sdc<<EFO
    > n
    > p
    > 1
    > 
    > +100M
    > n
    > e
    > 2
    > 
    > 
    > n
    > l
    > 
    > +400M
    > n
    > l
    > 
    > 
    > p
    > w
    > EFO
    View Code
      Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          14      112423+  83  Linux
    /dev/sdc2              15         522     4080510    5  Extended
    /dev/sdc5              15          66      417658+  83  Linux
    /dev/sdc6              67         522     3662788+  83  Linux
    
    Command (m for help): The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    [root@server ~]# ls /dev/sd*
    /dev/sda  /dev/sda1  /dev/sda2  /dev/sdb  /dev/sdc  /dev/sdc1  /dev/sdc2  /dev/sdc5  /dev/sdc6
    View Code

    1.2 命令partprobe:更新内核的硬盘分区表信息

    【功能说明】

    命令partprobe用于在硬盘分区发生改变时,更新Linux内核中的硬盘分区表数据。有时在使用fdiskpart命令对硬盘进行分区后,会发现找不到新分区,此时需要重启系统才会使修改生效,但使用partprobe可以不重启系统就让修改的分区表生效。

    【语法格式】

    partprobe   [options]
    partprobe      [选项] 

    【选项说明】

    命令partprobe的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -d

    不更新内核

    -s

    显示摘要和分区

    【使用范例】

    [root@server ~]# partprobe
    Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (设备或资源忙).  As a result, it may not reflect all of your changes until after reboot.

    1.3 命令tune2fs:ext2/ext3/ext4 文件系统参数

    【功能说明】

    命令tun2fs可以调整或查看ext2/ext3/ext4文件系统的参数,比如可以调整LINUX文件系统开机自检的周期,此命令在工作中极少使用。

    【语法格式】

    tune2fs   [options]
    tune2fs      [选项] 

    【选项说明】

    命令tune2fs的参数及说明

    参数选项

    解释说明(带*的为重点)

    -c

    设置强制自检的挂载次数,每挂载一次就计数就会加一,超过次数就会强制自检。设置成0-1则此功能关闭

    -C

    设置文件系统已经被挂载的次数

    -i

    设置强制自检的时间间隔(天、周、月)(*

    -j

    ext2文件系统转换为ext3类型文件系统

    -l

    查看文件系统信息(*

    【使用范例】

    查看文件系统挂载信息

    [root@server ~]# tune2fs -l /dev/sda1|grep -i Mount 
    Last mounted on:          /boot                
    Default mount options:    user_xattr acl
    Last mount time:          Sat Dec  2 19:30:01 2017        #上次挂载时间
    Mount count:              7            #挂在次数
    Maximum mount count:      -1             #强制自检的挂载次数为-1,关闭自检功能

    设置挂载次数

    [root@server ~]# tune2fs -C 30 /dev/sda1
    tune2fs 1.41.12 (17-May-2010)
    Setting current mount count to 30
    [root@server ~]# tune2fs -l /dev/sda1|grep -i Mount
    Last mounted on:          /boot
    Default mount options:    user_xattr acl
    Last mount time:          Sat Dec  2 19:30:01 2017
    Mount count:              30
    Maximum mount count:      -1

    设置强制自检的挂载次数

    [root@server ~]# tune2fs -c 40 /dev/sda1             
    tune2fs 1.41.12 (17-May-2010)
    Setting maximal mount count to 40
    [root@server ~]# tune2fs -l /dev/sda1|grep -i Mount
    Last mounted on:          /boot
    Default mount options:    user_xattr acl
    Last mount time:          Sat Dec  2 19:30:01 2017
    Mount count:              30
    Maximum mount count:      40
    View Code

    设置强制自检的时间间隔

    [root@server ~]# tune2fs -l /dev/sda1|grep -i check
    Last checked:             Tue Jul  5 11:03:32 2016
    Check interval:           0 (<none>)
    [root@server ~]# tune2fs -i 10 /dev/sda1
    tune2fs 1.41.12 (17-May-2010)
    Setting interval between checks to 864000 seconds
    [root@server ~]# tune2fs -l /dev/sda1|grep -i check
    Last checked:             Tue Jul  5 11:03:32 2016
    Check interval:           864000 (1 week, 3 days)
    Next check after:         Fri Jul 15 11:03:32 2016
    [root@server ~]# tune2fs -i 0 /dev/sda1            
    tune2fs 1.41.12 (17-May-2010)
    Setting interval between checks to 0 seconds
    View Code

    1.4 命令parted:磁盘分区工具

    【功能说明】

    对于小于2TB的磁盘可以用fdiskparted命令进行分区,这种情况一般采用fdisk命令,但对于大于2TB的磁盘则只能用parted分区,且需要将磁盘转换为GPT格式。

    【语法格式】

    parted   [option] [device...]
    parted  [选项] [设备名...]

    【选项说明】

    命令parted参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -l

    显示所有磁盘分区的信息(*

    -h

    查看帮助

    【使用范例】

    [root@A ~]# parted -l
    Model: VMware Virtual disk (scsi)
    Disk /dev/sda: 107GB
    Sector size (logical/physical): 512B/512B
    Partition Table: msdos
    
    Number  Start   End    Size   Type     File system  标志
     1      1049kB  525MB  524MB  primary  ext4         启动
     2      525MB   107GB  107GB  primary               lvm
    View Code

    挂载超过2T的磁盘

    [root@A ~]# parted /dev/sdg
    GNU Parted 2.1
    使用 /dev/sdg
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) mklabel gpt                                                      
    警告: The existing disk label on /dev/sdg will be destroyed and all data on this disk will be lost. Do you want to
    continue?/Yes/否/No? yes                                                         
    (parted) mkpart primary 
    文件系统类型?  [ext2]? ext4                                              
    起始点?                                                                  
    起始点? 0                                                                
    结束点?                                                                  
    结束点? 3000000
    警告: The resulting partition is not properly aligned for best performance.
    忽略/Ignore/放弃/Cancel? Ignore
    (parted) p                                                                
    Model: VMware Virtual disk (scsi)
    Disk /dev/sdg: 3299GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    
    Number  Start   End     Size    File system  Name     标志
     1      17.4kB  3000GB  3000GB               primary
    
    (parted) mkpart logical 3000000 3000050
    (parted) p                                                                
    Model: VMware Virtual disk (scsi)
    Disk /dev/sdg: 3299GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    
    Number  Start   End     Size    File system  Name     标志
     1      17.4kB  3000GB  3000GB               primary
     2      3000GB  3000GB  50.3MB               logical
    
    (parted) q                                                                
    信息: You may need to update /etc/fstab.                                  
    
    [root@A ~]# ls  /dev/sd*
    /dev/sda   /dev/sda2  /dev/sdc  /dev/sde  /dev/sdf1  /dev/sdf3  /dev/sdf6  /dev/sdf8  /dev/sdg1
    /dev/sda1  /dev/sdb   /dev/sdd  /dev/sdf  /dev/sdf2  /dev/sdf5  /dev/sdf7  /dev/sdg   /dev/sdg2
    [root@A ~]# mkfs.ext4 /dev/sdg1
    mke2fs 1.41.12 (17-May-2010)
    文件系统标签=
    操作系统:Linux
    块大小=4096 (log=2)
    分块大小=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    183107584 inodes, 732421870 blocks
    36621093 blocks (5.00%) reserved for the super user
    第一个数据块=0
    Maximum filesystem blocks=4294967296
    22352 block groups
    32768 blocks per group, 32768 fragments per group
    8192 inodes per group
    Superblock backups stored on blocks: 
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
            4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
            102400000, 214990848, 512000000, 550731776, 644972544
    
    正在写入inode表: 完成                            
    Creating journal (32768 blocks): 完成
    Writing superblocks and filesystem accounting information: 完成
    This filesystem will be automatically checked every 38 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    tmpfs                  16G     0   16G   0% /dev/shm
    /dev/sda1             477M   33M  419M   8% /boot
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf1             3.1G  5.6M  2.9G   1% /mnt
    [root@A ~]# mount /dev/sdg1 /mnt
    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    tmpfs                  16G     0   16G   0% /dev/shm
    /dev/sda1             477M   33M  419M   8% /boot
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf1             2.7T   73M  2.6T   1% /mnt
    /dev/sdg1             2.7T   73M  2.6T   1% /mnt

    1.5 命令mkfs:创建linux文件系统

    【功能说明】

    命令mkfs用于在指定的设备上创建格式化并创建文件系统,fdiskparted等分区相当于建房的人,把房子(硬盘),分成几居室(分区),mkfs就相当于对不同的居室装修(创建文件系统)了,只有装修好的房子(有文件系统)才能入住,分区一样,只有格式化创建文件系统后,才能用来存储数据。

    【语法格式】

    mkfs   [option] [filesys...]
    mkfs  [选项] [设备名...]

    【选项说明】

    命令mkfs的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -t

    指定要创建的文件系统类型(*

    -c

    创建文件系统时检查磁盘坏块

    -v

    显示详细信息

    命令mkfs只是一个前端命令

    [root@A ~]# ls /sbin/mkfs*
    /sbin/mkfs         /sbin/mkfs.ext2  /sbin/mkfs.ext4     /sbin/mkfs.msdos
    /sbin/mkfs.cramfs  /sbin/mkfs.ext3  /sbin/mkfs.ext4dev  /sbin/mkfs.vfa

    通过mkfs命令创建文件系统(-t 参数)的例子

    [root@A ~]# mkfs -t  ext4 -v /dev/sdf3
    mke2fs 1.41.12 (17-May-2010)
    fs_types for mke2fs.conf resolution: 'ext4', 'default'
    文件系统标签=
    操作系统:Linux
    块大小=4096 (log=2)
    分块大小=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    102544 inodes, 409657 blocks
    20482 blocks (5.00%) reserved for the super user
    第一个数据块=0
    Maximum filesystem blocks=423624704
    13 block groups
    32768 blocks per group, 32768 fragments per group
    7888 inodes per group
    Superblock backups stored on blocks: 
            32768, 98304, 163840, 229376, 294912
    
    正在写入inode表: 完成                            
    Creating journal (8192 blocks): 完成
    Writing superblocks and filesystem accounting information: 完成
    
    This filesystem will be automatically checked every 32 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    View Code

    通过mkfs.etx4创建文件系统

    [root@A ~]# mkfs.ext4 /dev/sdf3
    mke2fs 1.41.12 (17-May-2010)
    文件系统标签=
    操作系统:Linux
    块大小=4096 (log=2)
    分块大小=4096 (log=2)
    Stride=0 blocks, Stripe width=0 blocks
    102544 inodes, 409657 blocks
    20482 blocks (5.00%) reserved for the super user
    第一个数据块=0
    Maximum filesystem blocks=423624704
    13 block groups
    32768 blocks per group, 32768 fragments per group
    7888 inodes per group
    Superblock backups stored on blocks: 
            32768, 98304, 163840, 229376, 294912
    
    正在写入inode表: 完成                            
    Creating journal (8192 blocks): 完成
    Writing superblocks and filesystem accounting information: 完成
    
    This filesystem will be automatically checked every 27 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    View Code

    1.6 命令dumpe2fs:导出ext2/ext3/ext4文件系统信息

    【功能说明】

    命令dunpe2fs用于导出ext2/ext3/ext4文件系统内部的相关信息,例如:文件系统的组成包含超级快,块组,inodeblock等信息。

    【语法格式】

    dumpe2fs   [option] [device...]
    dumpe2fs  [选项] [设备名...]

    【选项说明】

    命令dumpe2fs的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -b

    打印文件系统中预留的块信息

    -h

    仅显示超级块信息

    -i

    从指出的文件系统映像文件中读取文件的系统信息

    -x

    16进制格式打印信息块成员

    【使用范例】

    查看系统的inode的信息

    [root@A ~]# dumpe2fs /dev/sda1|egrep -i "inode size |inode count"
    dumpe2fs 1.41.12 (17-May-2010)
    Inode count:              128016
    [root@A ~]# dumpe2fs /dev/sdf1|egrep -i "inode size |inode count" 
    dumpe2fs 1.41.12 (17-May-2010)
    Inode count:              208000
    [root@A ~]# df -i
    Filesystem              Inodes IUsed     IFree IUse% Mounted on
    /dev/mapper/vg_root-lv_root
                           3276800 67060   3209740    3% /
    tmpfs                  4109543     1   4109542    1% /dev/shm
    /dev/sda1               128016    39    127977    1% /boot
    /dev/mapper/vg_root-lv_home
                           2990080   103   2989977    1% /home
    /dev/sdf1            183107584    11 183107573    1% /mnt
    /dev/sdg1            183107584    11 183107573    1% /mnt
    View Code

    查看系统的block信息

    [root@A ~]# dumpe2fs /dev/sdf1|egrep -i "block size |block count"     
    dumpe2fs 1.41.12 (17-May-2010)
    Block count:              831363
    Reserved block count:     41568
    [root@A ~]# dumpe2fs /dev/sda1|egrep -i "block size |block count" 
    dumpe2fs 1.41.12 (17-May-2010)
    Block count:              512000
    Reserved block count:     25600

    1.7 命令resize2fs:调整ext2/ext3/ext4文件系统大小

    【功能说明】

    命令resize2fs用于扩容或收缩未挂载的ext2/ext3/ext4文件系统,在Linux2.6或更高版本的内核中,该命令还支持在线扩容已经挂载的文件系统,该命令经常用来针对LVM扩容后的分区使用。

    【语法格式】

    resize2fs   [option] [device...]
    resize2fs  [选项] [设备名...]

    【选项说明】

    命令resize2fs的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -p

    打印完成任务的进度条

    -f

     强制执行操作

    【使用范例】

    出现这种情况一般是当初对系统分区的时候没有规划好,现在想要重新调整分区的大小,假设是要对/dev/sdf上的分区进行操作,将/mnt/data1扩容

    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf1             3.1G  5.6M  2.9G   1% /mnt/data1
    /dev/sdf3             1.6G  2.4M  1.5G   1% /mnt/data2
    [root@A ~]# touch /mnt/data1/{1..5}.hml
    [root@A ~]# touch /mnt/data2/{a..e}.hml
    View Code

    记录分区的柱面起始信息:

    [root@A ~]# fdisk -l /dev/sdf
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    /dev/sdf2             255         499     1967962+  83  Linux
    /dev/sdf3              51         254     1638630   83  Linux
    
    Partition table entries are not in disk order
    View Code

    卸载分区:

    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    View Code

    重新分区:

    [root@A ~]# fdisk  /dev/sdf  
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): p
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    /dev/sdf2             255         499     1967962+  83  Linux
    /dev/sdf3              51         254     1638630   83  Linux
    
    Partition table entries are not in disk order
    
    Command (m for help): d
    Partition number (1-4): 2
    
    Command (m for help): d
    Partition number (1-4): 3
    
    Command (m for help): p
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Partition number (1-4): 2
    First cylinder (1-913, default 1): 51
    Last cylinder, +cylinders or +size{K,M,G} (51-499, default 499): 499
    
    Command (m for help): p
    
    Disk /dev/sdf: 7516 MB, 7516192768 bytes
    255 heads, 63 sectors/track, 913 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x2d011ec8
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1             500         913     3325455   83  Linux
    /dev/sdf2              51         499     3606592+  83  Linux
    
    Partition table entries are not in disk order
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    [root@A ~]# partprobe /dev/sdf
    [root@A ~]# mount /dev/sdf2 /mnt/data2
    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf2             1.6G  2.4M  1.5G   1% /mnt/data2
    [root@A ~]# ls /mnt/data2
    a.hml  b.hml  c.hml  d.hml  e.hml  lost+found
    [root@A ~]# resize2fs /dev/sdf2
    resize2fs 1.41.12 (17-May-2010)
    Filesystem at /dev/sdf2 is mounted on /mnt/data2; on-line resizing required
    old desc_blocks = 1, new_desc_blocks = 1
    Performing an on-line resize of /dev/sdf2 to 901648 (4k) blocks.
    The filesystem on /dev/sdf2 is now 901648 blocks long.
    
    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf2             3.4G  3.2M  3.2G   1% /mnt/data2
    [root@A ~]# ls /mnt/data3
    View Code

    1.8 命令fsck:检查并修复linux文件系统

    【功能说明】

    命令fsck用于检查并修复文件系统中的错误,即针对有问题的系统或磁盘进行修复,类似的命令还有e2fask命令。有关fsck的使用需要特别注意的是:(1)文件系统必须是卸载状态,否则会出现故障。(2)不要对正常的分区使用fsck,在不加参数的情况下,fsck会根据/etc/fstab进行文件系统检查,这相当于fsck -As 参数的功能。

    【语法格式】

    fsck   [option] [filesys...]
    fsck  [选项] [文件系统...]

    【选项说明】

    命令fsck的参数及选项说明

    参数选项

    解释说明(带*的为重点)

    -a

    自动修复文件系统,不询问任何问题

    -s

    按顺序检查的分区内容,检查文件内所列的全部文件系统

    -t

    指定要检查的分区的文件系统类型

    -A

    依照/etc/fstab 配置文件的内容,检查文件内所列的全部文件系统

    -N

    不执行指令,仅列出实际执行会进行的动作

    【使用范例】

    Linux断电后重启故障修复案例。

    Linux系统遭到突然断电等非正常关机操作时,很容易导致文件系统数据损坏,造成系统不能重启,此时,屏幕出现的提示可能是如下内容:

    *** AN error occurred during the file system check
    *** xxx
    *** xxx
    Give root password for maintenance 
    (or type Control-D to continue)
    View Code

    此时根据系统提示输入root密码,注意而不是直接Ctrl+D继续,会再重启。

    当输入密码之后,正常会出现下面的提示:

    (Repair filesystem) 1 #

    此时就可以输入fsck或者fsck  -A对磁盘进行修复检查,执行后可能出现一堆询问,按yes即可。

    (Repair filesystem) 1 #fsck -A
    (Repair filesystem) 2 #

    1.9 命令dd:转换或复制文件

    【功能说明】

    命令dd具有复制文件、转换文件和格式化文本的功能

    【语法格式】

    dd   [option]
    dd  [选项] 

    【选项说明】

    命令dd的参数及说明

    参数选项

    解释说明(带*的为重点)

    If=<输入文件>

    从指定文件读取,全程为input file*

    of=<输出文件>

    写入到指定文件,全程为output file*

    bs=<字节数>

    一次读写的字节数,全程为block size8

    count=<块数>

    指定复制block的块的个数

    Ibs=<字节数>

    一次读的字节,默认512

    obs=<字节数>

    一次写的字节,默认512

    conv-<格式>

    格式转换

    ucase 把字母由小写转换为大写

    lcase 把字母由大写转换为小写

    【使用范例】

    /dev/sda1分区复制(备份)到文件中。

    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sdf2             3.4G  3.2M  3.2G   1% /mnt/data2
    [root@A ~]# dd if=/dev/sde of=/dev/sde1 
    记录了12582912+0 的读入
    记录了12582912+0 的写出
    6442450944字节(6.4 GB)已复制,22.9898 秒,280 MB/秒

    删除/dev/sde1分区数据

    这个操作十分危险,请做好快照

    /dev/zero设备读取数据,写入或覆盖/dev/sdf2的数据

    [root@A ~]# ls /mnt/data2
    a.hml  b.hml  c.hml  d.hml  e.hml  lost+found
    [root@A ~]# dd if=/dev/zero of=/dev/sdf2
    dd: 正在写入"/dev/sdf2": 设备上没有空间
    记录了7213186+0 的读入
    记录了7213185+0 的写出
    3693150720字节(3.7 GB)已复制,82.8028 秒,44.6 MB/秒
    [root@A ~]# ls /mnt/data2               
    [root@A ~]# 
    [root@A ~]# touch /mnt/data2/{1..5}.htl
    touch: 无法创建"/mnt/data2/1.htl": 只读文件系统
    touch: 无法创建"/mnt/data2/2.htl": 只读文件系统
    touch: 无法创建"/mnt/data2/3.htl": 只读文件系统
    touch: 无法创建"/mnt/data2/4.htl": 只读文件系统
    touch: 无法创建"/mnt/data2/5.htl": 只读文件系统
    [root@A ~]# 
    Message from syslogd@web01 at Jan 31 16:57:01 ...
     kernel:journal commit I/O error
    View Code

    生成任意大小的测试文件

    [root@A ~]# dd if=/dev/zero of=test.data bs=1M count=4
    记录了4+0 的读入
    记录了4+0 的写出
    4194304字节(4.2 MB)已复制,0.00477111 秒,879 MB/秒
    [root@A ~]# ll -h test.data
    -rw-r--r-- 1 root root 4.0M 1月  31 17:13 test.data

    使用dd复制文件并进行格式化转换的例子

    [root@A ~]# cat aa
    I am yanhuihuang my QQ is 88888888
    [root@A ~]# dd if=aa conv=ucase of=ab  
    记录了0+1 的读入
    记录了0+1 的写出
    35字节(35 B)已复制,0.00025041 秒,140 kB/秒
    [root@A ~]# cat ab
    I AM YANHUIHUANG MY QQ IS 88888888

    1.10 命令mount:挂载文件系统

    【功能说明】

    命令mount可以将指定的文件系统挂载到目录,在linux系统下必须先挂载所有的设备,然后才能被访问,挂载起始就是为要访问的设置开个门。

    【语法格式】

    mount [ options]  device  dir
    mount [ 选项]  设备 目录

    【选项说明】

    命令mount的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -l

    显示系统已经挂载的设备的相关信息

    -a

    根据/etc/fstab文件里的配置挂载文件系统

    -t

    指定挂载的文件系统类型(*),例如,文件系统类型有,nfs(网络文件系统),iso9660(挂载CD-ROM光盘),auto(自动检测文件系统)。如果不设置-t参数,或使用-t auto参数,mount命令会自行选择挂载的文件类型。

    -o

    后接一些挂载的选项,是安全,性能优化的重要选项(*

    -r

    只读挂载,等同于-o ro的挂载方式

    -w

    读写挂载,等同于-o rw的挂载方式

    命令mount-o参数可接的选项

    参数选项

    解释说明(带*的为重点)

    async

    所涉及文件系统I/O的操作都是异步处理,即数据不会同步写入到磁盘,而是写入到缓冲区中,这种设置会提高系统的性能,但同时也会降低数据的安全性,一般在生产环境下不推荐使用。除非对性能要求很高,对数据安全性要求不高的业务。

    sync

    async相反,即有i/o操作时,都会同步处理i/o,即把数据同步写入硬盘,此参数会牺牲一部分i/o性能,但是换来的是系统突发停机后数据的安全性

    atime

    在每次数据访问时,都会同步更新每次访问的文件的inode的访问时间,在高并发环境下,应用此选项,可以在一定程度上提高系统i/o的性能

    noatime

    不更新文件系统上文件的inodef访问时间,在高并发环境下,应用此选项,可以在一定程度上提高系统i/o的性能

    nodiratime

    不更新文件系统上目录的inodef访问时间,在高并发环境下,应用此选项,可以在一定程度上提高系统i/o的性能

    auto

    通过-a参数能够被自动挂载

    noauto

    不会自然挂载文件系统

    defaults

    默认值包括rwsuiddevexecautonouserasync、、etc/fstab文件挂载配置的很多情况下都使用默认值

    exec

    允许执行二进制程序,取消该参数,可以提升系统的安全性

    noexec

    不能执行二进制程序

    nosuid

    不允许suidLinux的特殊权限)特殊功能生效

    nouser

    禁止一个普通用户挂载该文件系统,这是挂载时的默认选项

    remount

    尝试重新挂载一个已经挂载了的文件系统,其通常用于改变一个文件系统的挂载标志,从而使得一个只读文件系统变得可写,这个动作不会改变设备或者挂载点,提示一下,当系统发生故障时或者进入单用户模式、救援模式时,会发现根文件系统经常会变成只读文件系统,不允许修改,此时该命令就派上用场了,具体命令为:mount  -o remount,rw / 会将根文件系统重新挂载使其可写,在单用户模式或者救援模式修改系统时该命令十分重要。

    ro

    只读挂载

    rw

    读写挂载

    【使用范例】

    显示系统已经挂载的信息

    [root@A ~]# mount
    /dev/mapper/vg_root-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)
    /dev/mapper/vg_root-lv_home on /home type ext4 (rw)
    sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
    nfsd on /proc/fs/nfsd type nfsd (rw)
    /dev/sdf2 on /mnt/data2 type ext4 (rw)
    [root@A ~]# mount -l
    /dev/mapper/vg_root-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)
    /dev/mapper/vg_root-lv_home on /home type ext4 (rw)
    sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
    nfsd on /proc/fs/nfsd type nfsd (rw)
    /dev/sdf2 on /mnt/data2 type ext4 (rw)

     对系统的光驱进行挂载

    [root@A ~]# mkdir -p /mnt/cdrom
    [root@A ~]# mount -t iso9660 -o,loop /dev/sr0 /mnt/cdrom
    [root@A ~]# cd /mnt/cdrom
    [root@A cdrom]# ls
    CentOS_BuildTag  GPL       Packages                  RPM-GPG-KEY-CentOS-6           RPM-GPG-KEY-CentOS-Testing-6
    EFI              images    RELEASE-NOTES-en-US.html  RPM-GPG-KEY-CentOS-Debug-6     TRANS.TBL
    EULA             isolinux  repodata                  RPM-GPG-KEY-CentOS-Security-6

    使用性能及安全挂载参数选项(-o多选项)的企业案例

    [root@client ~]# mount -t nfs -o nosuid,noexec,nodev,noatime,10.16.50.243:/data /data

    生产场景文件系统故障解决案例

    由于系统等问题,在工作中可能造成文件系统只读,这时就需要重新挂载根(/)为读写模式

    [root@client ~]# mount -o remount,rw /

    生产场景配置fstab后防止开机启动出错案例

    在工作中,当添加新的磁盘时,会有永久性挂载的需求,此时就会配置/etc/fstab这个文件,但是这个文件若配置有问题可,能造成系统重启后无法开机,因此配置好fstab文件后可先用mount -a读取/etc/fstab进行挂载测试,如果能挂在成功,那么重启一般也会正常,反之则会出现异常。

    [root@A ~]# mount -a     
    mount: mount point /mt/data2 does not exist
    [root@A ~]# vi /etc/fstab
    #
    # /etc/fstab
    # Created by anaconda on Tue Jul  5 11:04:36 2016
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/vg_root-lv_root /                       ext4    defaults        1 1
    UUID=218ebb60-cc90-4911-ae01-034e6d351867 /boot                   ext4    defaults        1 2
    /dev/mapper/vg_root-lv_home /home                   ext4    defaults        1 2
    /dev/mapper/vg_root-lv_swap swap                    swap    defaults        0 0
    tmpfs                   /dev/shm                tmpfs   defaults        0 0
    devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
    sysfs                   /sys                    sysfs   defaults        0 0
    proc                    /proc                   proc    defaults        0 0
    /dev/sdf2               /mnt/data2              ext4    defaults        0 0
                                                                                                                       
    "/etc/fstab" 17L, 933C written
    [root@A ~]# mount -a     
    [root@A ~]# 
    View Code

    1.11 命令umount:卸载文件系统

    【功能说明】

    命令umount可以卸载已经挂载的文件

    【语法格式】

    umount   [option]  {dir|device}...
    umount   [选项]  {目录|设备}...

    【选项说明】

    命令umount的参数及说明

    参数选项

    解释说明(带*的为重点)

    -f

    强制删除(*

    -l

    懒惰的卸载,将文件系统从文件系统层次结构分离出来,并清除对文件系统的所有引用。一般和-f参数配合使用其卸载效果更佳(*

    【使用范例】

    卸载已经挂载的光盘

    [root@client ~]# df -Th     
    Filesystem           Type     Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                         ext4      50G  2.2G   45G   5% /
    tmpfs                tmpfs     16G     0   16G   0% /dev/shm
    /dev/sda1            ext4     477M   33M  419M   8% /boot
    /dev/mapper/vg_root-lv_home
                         ext4      45G   53M   43G   1% /home
    /dev/sr0             iso9660  4.4G  4.4G     0 100% /mnt/cdrom
    [root@client ~]# umount /mnt/cdrom
    [root@client ~]# df -Th
    Filesystem           Type   Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                         ext4    50G  2.2G   45G   5% /
    tmpfs                tmpfs   16G     0   16G   0% /dev/shm
    /dev/sda1            ext4   477M   33M  419M   8% /boot
    /dev/mapper/vg_root-lv_home
                         ext4    45G   53M   43G   1% /home

    在当前目录等环境下强制卸载

    [root@A ~]# umount -lf /mnt/data2    

    1.12命令df:报告文件系统磁盘空间的使用情况

    【功能说明】

    显示文件系统磁盘使用情况

    【语法格式】

    命令df的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -a

    显示所有文件

    -h

    以容易理解的格式显示磁盘的使用情况(*

    -i

    显示文件系统的inode信息(*

    -t

    显示指定类型的磁盘

    -T

    列出文件系统的类型

    【使用范例】

    显示磁盘的使用情况

    [root@A ~]# df -Th
    Filesystem           Type     Size  Used Avail Use% Mounted on
    /dev/sr0             iso9660  4.4G  4.4G     0 100% /mnt/cdrom
    /dev/sda1            ext4     477M   33M  419M   8% /boot
    tmpfs                tmpfs     16G     0   16G   0% /dev/shm
    /dev/sdf2            ext4     3.4G  6.9M  3.2G   1% /mnt/data2

    显示磁盘使用情况的各列信息及说明

    列信息

    说明

    Filesystem

    文件系统对应的设备文件的路径名(一般是硬盘上的分区)

    Type

    文件类型

    Size

    分区的大小(MGT

    Used

    分区使用大小

    Avail

    分区空闲大小

    Use%

    使用百分比

    Mounted on

    文件挂载点

    1K-blocks

    分区大小(单位为block

    [root@A ~]# df 
    Filesystem           1K-blocks    Used Available Use% Mounted on
    /dev/sda1               487652   33508    428544   8% /boot
    tmpfs                 16438172       0  16438172   0% /dev/shm
    /dev/sdf2              3484320    7064   3296928   1% /mnt/data2

    不加参数和文件参数的例子

    [root@A ~]# df
    Filesystem           1K-blocks    Used Available Use% Mounted on
    /dev/mapper/vg_root-lv_root
                          51475068 2225836  46627792   5% /
    /dev/mapper/vg_root-lv_home
                          46902216   53484  44459536   1% /home
    /dev/sr0               4523182 4523182         0 100% /mnt/cdrom
    /dev/sda1               487652   33508    428544   8% /boot
    tmpfs                 16438172       0  16438172   0% /dev/shm
    /dev/sdf2              3484320    7064   3296928   1% /mnt/data2
    [root@A ~]# df /usr/
    Filesystem           1K-blocks    Used Available Use% Mounted on
    /dev/mapper/vg_root-lv_root
                          51475068 2225836  46627792   5% /
    [root@A ~]# df /boot/
    Filesystem     1K-blocks  Used Available Use% Mounted on
    /dev/sda1         487652 33508    428544   8% /boot
    View Code

    了解参数-h的用法

    [root@A ~]# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lv_root
                           50G  2.2G   45G   5% /
    /dev/mapper/vg_root-lv_home
                           45G   53M   43G   1% /home
    /dev/sr0              4.4G  4.4G     0 100% /mnt/cdrom
    /dev/sda1             477M   33M  419M   8% /boot
    tmpfs                  16G     0   16G   0% /dev/shm
    /dev/sdf2             3.4G  6.9M  3.2G   1% /mnt/data2

    参数i显示inode的使用情况

    [root@A ~]# df -i
    Filesystem            Inodes IUsed   IFree IUse% Mounted on
    /dev/mapper/vg_root-lv_root
                         3276800 67079 3209721    3% /
    /dev/mapper/vg_root-lv_home
                         2990080   103 2989977    1% /home
    /dev/sr0                   0     0       0     - /mnt/cdrom
    /dev/sda1             128016    39  127977    1% /boot
    tmpfs                4109543     1 4109542    1% /dev/shm
    /dev/sdf2             225792    11  225781    1% /mnt/data2

    参数t显示指定类型的磁盘

    [root@A ~]# df -t ext4
    Filesystem           1K-blocks    Used Available Use% Mounted on
    /dev/mapper/vg_root-lv_root
                          51475068 2225836  46627792   5% /
    /dev/mapper/vg_root-lv_home
                          46902216   53484  44459536   1% /home
    /dev/sda1               487652   33508    428544   8% /boot
    /dev/sdf2              3484320    7064   3296928   1% /mnt/data2

    参数-T列出了文件系统的类型

    [root@A ~]# df -T
    Filesystem           Type    1K-blocks    Used Available Use% Mounted on
    /dev/mapper/vg_root-lv_root
                         ext4     51475068 2225836  46627792   5% /
    /dev/mapper/vg_root-lv_home
                         ext4     46902216   53484  44459536   1% /home
    /dev/sr0             iso9660   4523182 4523182         0 100% /mnt/cdrom
    /dev/sda1            ext4       487652   33508    428544   8% /boot
    tmpfs                tmpfs    16438172       0  16438172   0% /dev/shm
    /dev/sdf2            ext4      3484320    7064   3296928   1% /mnt/data2

    1.13 命令mkswap:创建交换分区

    【功能说明】

    命令mkswap是在Linux系统里创建交换分区的工具,当系统没有交换分区或交换分区不够用时,可以新建一个交换分区。

    【语法格式】

    mkswap   [option]     device...
    mkswap   [选项]     文件设备...

    【使用说明】

    命令mkswap的参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -c

    建立交换分区之前,首先检查磁盘是否有损坏的区块

    -f

    强制执行操作

    【使用案例】

    创建交换分区

    [root@A ~]# mkswap -f  /dev/sdc
    Setting up swapspace version 1, size = 4194300 KiB
    no label, UUID=d401b170-de48-41d7-84a4-dfa0fafa9c11

    1.14 命令swapon:激活交换分区

    【功能说明】

    使用mkswap命令创建交换分区后,分区并没有生效,还需要使用swapon命令使之生效。

    【语法格式】

    swapon   [option]     
    swapon   [选项]     

    【选项说明】

    参数选项

    解释说明(带*的为重点)

    -s

    显示所有交换分区的信息

    【使用范例】

    激活交换分区

    [root@A ~]# free -m
                 total       used       free     shared    buffers     cached
    Mem:         32105       6730      25375       6144         46       6305
    -/+ buffers/cache:        378      31727
    Swap:         4031          0       4031
    [root@A ~]# swapon /dev/sdc
    [root@A ~]# free -m
                 total       used       free     shared    buffers     cached
    Mem:         32105       6733      25372       6144         46       6305
    -/+ buffers/cache:        381      31724
    Swap:         8127          0       8127

    查看交换分区

    [root@A ~]# swapon -s
    Filename                                Type            Size    Used    Priority
    /dev/dm-1                               partition       4128764 0       -1
    /dev/sdc                                partition       4194300 0       -2

    8.15 命令swapoff:关闭交互分区

    【功能说明】

    如果需要回收磁盘资源,则可以使用swapoff关闭交换分区释放磁盘空间

    【语法格式】

    swapoff   [option]     
    swapoff  [选项]

    【选项说明】

    命令swapoff参数选项及说明

    参数选项

    解释说明(带*的为重点)

    -a

    关闭所有交换分区

    关闭交换分区

    [root@A ~]# swapoff /dev/sdc
    [root@A ~]# free -m
                 total       used       free     shared    buffers     cached
    Mem:         32105       6730      25375       6144         46       6305
    -/+ buffers/cache:        378      31727
    Swap:         4031          0       4031
    [root@A ~]# swapoff -a
    [root@A ~]# free -m   
                 total       used       free     shared    buffers     cached
    Mem:         32105       6727      25378       6144         46       6305
    -/+ buffers/cache:        375      31730
    Swap:            0          0          0
    [root@A ~]# 

    1.16 命令sync:刷新文件系统缓冲区

    【功能说明】

    命令sync会将内存缓冲内的数据强制刷新到磁盘

    【语法格式】

    sync   [option]     
    sync   [选项]

    【使用范例】

    手动将数据从缓冲刷到磁盘中并重要系统

    [root@A ~]# sync
    [root@A ~]# sync
    [root@A ~]# reboot

    [root@A ~]# df
    
    Filesystem           1K-blocks    Used Available Use% Mounted on
    
    /dev/sda1               487652   33508    428544   8% /boot
    
    tmpfs                 16438172       0  16438172   0% /dev/shm
    
    /dev/sdf2              3484320    7064   3296928   1% /mnt/data2
  • 相关阅读:
    HDU1814 Peaceful Commission
    POJ1679 The Unique MST
    POJ 3243 Clever Y
    POJ 3463 Sightseeing
    POJ1274 The Perfect Stall
    POJ 2417 Discrete Logging
    POJ1011 Sticks
    前端面试资源整理(一)
    小程序和腾讯地图联合使用
    快速创建 HTML5 Canvas 电信网络拓扑图
  • 原文地址:https://www.cnblogs.com/huihuangyan/p/13692254.html
Copyright © 2011-2022 走看看