linux基本存储介质管理和硬盘管理

一、硬盘的数据接口分类和区别
硬盘按数 接口 不同,大致分为ATA(IDE)、SATA、SCSI以及SAS。 类。
磁盘的主要技术参数是容量和转速。

硬盘管理: MBR   Master boot record  主引导记录   win7 win8 都是用的。
MBR 硬盘的 0 柱面、 0 磁头、 1 扇区称为主引导扇区 (也叫主引导记录 MBR )。它由三个部分组成,主引导程序、磁盘分区表 DPT Disk Partition table )和分区有效标志( 55AA ), 55AA 是固定的值。

一个扇区:512字节。在总共512字节的主引导扇区里主引导程序boot loader446个字节,第二部分是Partition table区(分区表),即DPT64个字节,16*4=64,硬盘中分区有多少以及每一分区的大小都记在其中。第三部分是magic number,占2个字节,固定为55AA  55AA改变后就不能使用了主分区,扩展分区,,扩展分区不能直接存放数据。需要在扩展分区上创建逻辑分区magic number·结束标志字,偏移地址01FE--01FF2个字节值为结束标志55AA,称为魔数magic number)。如果该标志错误系统就不能启动。

二、格式化磁盘和挂载    

点击(此处)折叠或打开

  1. [root@localhost ~]# fdisk -l  #查看可用存储设备和大小
  2. [root@localhost ~]# fdisk /dev/sda 
    Welcome to fdisk (util-linux 2.23.2).

    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.

    Command (m for help): m
    Command action
       a   toggle a bootable flag                              #设置启动的扇区
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition                                  #删除一个分区
       g   create a new empty GPT partition table
       G   create an IRIX (SGI) partition table
       l   list known partition types
       m   print this menu                                    #fdisk帮助信息
       n   add a new partition                                #增加一个分区
       o   create a new empty DOS partition table                
       p   print the partition table                          #打印分区
       q   quit without saving changes                        #退出分区,不保存
       s   create a new empty Sun disklabel
       t   change a partition's system 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                                #增加一个主分区
    Partition type:
       p   primary (3 primary, 0 extended, 1 free)          #已有3个主区,只有一个free
       e   extended
    Select (default e): p                                   #主分区
    Selected partition 4                                    #主分区号
    First sector (49891328-83886079, default 49891328):     #增加分区的开始扇面,选择默认
    Using default value 49891328
    Last sector, +sectors or +size{K,M,G} (49891328-83886079, default 83886079): +3G  #新建分区的大小3G,默认的情况下使用全部可用空间    
    Partition 4 of type Linux and of size 3 GiB is set

    Command (m for help): p            #打印下分区情况

    Disk /dev/sda: 42.9 GB, 42949672960 bytes, 83886080 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0x0005926e

       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *        2048     1640447      819200   83  Linux
    /dev/sda2         1640448    47794175    23076864   8e  Linux LVM
    /dev/sda3        47794176    49891327     1048576   83  Linux
    /dev/sda4        49891328    56182783     3145728   83  Linux

    Command (m for help): w                #保存退出
    The partition table has been altered!

    Calling ioctl() to re-read partition table.

    WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
    The kernel still uses the old table. The new table will be used at
    the next reboot or after you run partprobe(8) or kpartx(8)
    Syncing disks.                                #提示使用partprobe(8) or kpartx(8) 重新读取分区

  3. [root@localhost ~]# ll /dev/sd*            #查看,但为发现新建分区sda4
    brw-rw---- 1 root disk 8,  0 Apr 20 12:43 /dev/sda
    brw-rw---- 1 root disk 8,  1 Apr 20 12:43 /dev/sda1
    brw-rw---- 1 root disk 8,  2 Apr 20 12:43 /dev/sda2
    brw-rw---- 1 root disk 8,  3 Apr 20 12:43 /dev/sda3
    brw-rw---- 1 root disk 8, 16 Apr 20 12:36 /dev/sdb
    brw-rw---- 1 root disk 8, 17 Apr 20 12:36 /dev/sdb1
    [root@localhost ~]# partprobe /dev/sda        #重新扫描sda 获取分区表
    [root@localhost ~]# ll /dev/sd*
    brw-rw---- 1 root disk 8,  0 Apr 20 12:51 /dev/sda
    brw-rw---- 1 root disk 8,  1 Apr 20 12:51 /dev/sda1
    brw-rw---- 1 root disk 8,  2 Apr 20 12:51 /dev/sda2
    brw-rw---- 1 root disk 8,  3 Apr 20 12:51 /dev/sda3
    brw-rw---- 1 root disk 8,  4 Apr 20 12:51 /dev/sda4
    brw-rw---- 1 root disk 8, 16 Apr 20 12:36 /dev/sdb
    brw-rw---- 1 root disk 8, 17 Apr 20 12:36 /dev/sdb1
    [root@localhost ~]# mkfs.xfs /dev/sda4                 #格式化/dev/sda4
    meta-data=/dev/sda4              isize=256    agcount=4, agsize=196608 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=0        finobt=0
    data     =                       bsize=4096   blocks=786432, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
    log      =internal log           bsize=4096   blocks=2560, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    [root@localhost ~]# mkdir /sda4            #创建挂载点 /sda4
    [root@localhost ~]# mount /dev/sda4  /sda4/    #挂载分区
    [root@localhost ~]# df -h                       #检查分区
    Filesystem             Size  Used Avail Use% Mounted on
    /dev/mapper/rhel-root   20G  3.7G   17G  19% /
    devtmpfs               898M     0  898M   0% /dev
    tmpfs                  913M   84K  913M   1% /dev/shm
    tmpfs                  913M  9.0M  904M   1% /run
    tmpfs                  913M     0  913M   0% /sys/fs/cgroup
    /dev/sdb1              2.0G   33M  2.0G   2% /sdb1
    /dev/sda3             1014M   33M  982M   4% /163
    /dev/sr0               3.8G  3.8G     0 100% /mnt
    /dev/sda1              797M  165M  633M  21% /boot
    tmpfs                  183M   16K  183M   1% /run/user/42
    tmpfs                  183M     0  183M   0% /run/user/0
    /dev/sda4              3.0G   33M  3.0G   2% /sda4
    [root@localhost ~]# 
二、挂载fstab
    我们可以通过mout命令挂载分区,也可以把新建分区写入fstab文件中随机启动挂载,我们先介绍下fstab文件

点击(此处)折叠或打开

  1. [root@localhost ~]# cat /etc/fstab
  2. #
  3. # /etc/fstab
  4. # Created by anaconda on Thu Mar 31 22:52:23 2016
  5. #
  6. # Accessible filesystems, by reference, are maintained under '/dev/disk'
  7. # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
  8. #
  9. /dev/mapper/rhel-root / xfs defaults 0 0
  10. UUID=00b44465-f1aa-45ae-9bbb-fc85cae0f07e /boot xfs defaults 0 0
  11. /dev/mapper/rhel-swap swap swap defaults 0 0
  12. /dev/sda3 /163 xfs defaults 0 0
  13. /dev/sr0 /mnt iso9660 defaults 0 0
  14. UUID="eef3fd7d-f7d8-4fcd-852e-360da2c69c64" /sdb1 xfs defaults 0 0


  15.   /dev/mapper/rhel-root   /       xfs           defaults             0       0
       挂载分区                           挂载点    文件系统类型       挂载选项                   是否备份  是否检测
使用UUID实现开机自动挂载。UUID 是什么呢,它是一个标识系统中存储设备的字符串,主要目的是帮助使用者唯一的确定系统中的所有存储设备,全球唯一,不管他是什么类型,它可以标识DVD设备驱动器,USB存储设备以及系统中的硬盘等,它是真正唯一的标识符。
通过blkid命令获取新增分区的UUID ,并编辑fstab文件,下图红色标识的地方

点击(此处)折叠或打开

  1. [root@localhost ~]# blkid |grep sda4
  2. /dev/sda4: UUID="5777db63-e987-4b59-b157-3b0b94090bc1" TYPE="xfs"
  3. [root@localhost ~]# vi /etc/fstab 
    # /etc/fstab
    # Created by anaconda on Thu Mar 31 22:52:23 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/rhel-root   /                       xfs     defaults        0 0
    UUID=00b44465-f1aa-45ae-9bbb-fc85cae0f07e /boot                   xfs     defaults        0 0
    /dev/mapper/rhel-swap   swap                    swap    defaults        0 0
    /dev/sda3               /163                    xfs     defaults        0 0
    /dev/sr0                /mnt                    iso9660 defaults        0 0
    UUID="eef3fd7d-f7d8-4fcd-852e-360da2c69c64"  /sdb1      xfs     defaults        0 0
    UUID="5777db63-e987-4b59-b157-3b0b94090bc1"  /sda4      xfs     defaults        0 0
如何验证挂载是否成功呢,不必重启服务器,我们只需要mount -a 就可以验证是否正确, -a all Mount all filesystems (of the given types) mentioned in fstab。通过df 命令查看到新挂载所有分区,即正确。

点击(此处)折叠或打开

  1. [root@localhost ~]# mount -a
  2. [root@localhost ~]# df -h
  3. Filesystem Size Used Avail Use% Mounted on
  4. /dev/mapper/rhel-root 20G 3.7G 17G 19% /
  5. devtmpfs 898M 0 898M 0% /dev
  6. tmpfs 913M 84K 913M 1% /dev/shm
  7. tmpfs 913M 9.0M 904M 1% /run
  8. tmpfs 913M 0 913M 0% /sys/fs/cgroup
  9. /dev/sdb1 2.0G 33M 2.0G 2% /sdb1
  10. /dev/sda3 1014M 33M 982M 4% /163
  11. /dev/sr0 3.8G 3.8G 0 100% /mnt
  12. /dev/sda1 797M 165M 633M 21% /boot
  13. tmpfs 183M 16K 183M 1% /run/user/42
  14. tmpfs 183M 0 183M 0% /run/user/0
  15. /dev/sda4 3.0G 33M 3.0G 2% /sda4
  16. [root@localhost ~]#

   

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27039319/viewspace-2084652/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/27039319/viewspace-2084652/

你可能感兴趣的:(linux基本存储介质管理和硬盘管理)