分区
  引导扇区一共512字节,其中446字节给了bootloader,64字节给了分区表,还有2字节存储其他信息
  分区表64字节,其中每16个字节可以引导一个主分区,所以做多有4个主分区,或者3个主分区和1个扩展分区
  如果想使用磁盘分区超过4个,则需要使用3个主分区和1个扩展分区的方式,扩展分区上创建多个逻辑分区
 Linux 如何标识磁盘设备
    在/dev下
    IDE(ATA串行)硬盘:hd
    SATA(ATA并行)硬盘:sd
    SCSI       sd
    USB         sd
    SAS        sd
    
    通常IDE一个控制器可以接两个IDE硬盘,那么2个控制器就可以接4个IDE硬盘,分别 标识为/dev/hda /dev/hdb /dev/hdc /dev/hdd
    sd设备,主分区占据1-4编号
        /dev/sda1 /dev/sda2 /dev/sda3 /dev/sda4
创建分区命令
  fdisk 硬盘设备文件(/dev/sda)  fdisk最多识别15个sda sdb sdc...
  执行此命令之后(回车之后),交互式命令
  m    for help
  p   打印已建立磁盘分区
  n   new partition 建立一个新分区
  d   删除一个分区
  t   改变磁盘system id    system id代表文件系统类型,system id=5 表示扩展分区
  l   显示system id与文件系统类型的对应列表
  w   保存退出
  q    放弃修改并退出
 Attention:#partprobe /dev/sda 重新扫描磁盘
备份磁盘分区列表
 sfdisk -d /dev/sdb 将磁盘分区信息打印到屏幕上
 1.sfdisk -d /dev/sdb >"备份文件"
 2.sfdisk /dev/sdb <“备份文件”
格式化(高级格式化)
mkfs -t 文件系统类型 /dev/sdb1(分区)
    ext2 无日志功能   mkfs -t ext2 =mkfs.ext2
    ext3 有日志功能   mkfs -t ext3 =mkfs.ext3
       Attention:不支持NTFS
   -L label 改分区的卷标
     Attention:1.#e2label 设备 显示设备卷标名
           2.#e2label 设备 卷标名  格式化之后改卷标 
mke2fs [options] 设备文件
         创建ext2文件系统
    -j    将磁盘创建为ext3(带日志功能)文件系统
    -L    指定卷标
    -b        指定磁盘块大小 (1024|2048|4096)(KB)
    -c    创建文件系统时检测磁盘坏道,坏块
    -i    默认是128K 平均多少字节创建一个inode条目
    -N    直接指定inode个数
    -m    预留给超级用户的磁盘百分比 默认是 5% block小,占的块数多;block大,占的块数就少,总空间占磁盘5%
挂载
  其他外来戒指与系统原有目录相关联 此目录应存在且被挂载时目录不能被其他进程访问
  /media/{cdrom,floppy} 便携设备
  /mnt 磁盘
  mount 将磁盘设备与目录相关联
   mount [-t filesystemtype] [options] 分区文件 MOUNT_POINT
       -a 不带任何参数      挂载所有文件系统
                     不带任何参数,显示当前已挂载的文件系统,当前已挂载的文件系统存储在/etc/mtab
                     因此mount 不带任何参数=cat /etc/mtab
                 -n   挂载时,不通知/etc/mtab更新
                 -r   只读挂载
                 -w   读写挂载
                 -L   卷标 -L label DVICE -L label MOUNT_POINT
                 -U   uuid
                     显示#blkid 设备文件 显示有一项是UUID
                 -o(小) 挂载选项
                     async 异步读写,(先写入缓存,再写入文件,特点速度快,但无法应对掉电等突发状况)
                     sync  同步读写
                     atime 每一次访问都修改文件访问时间,默认选项
                     notime 不修改访问时间
                     auto 自动挂载,使用-a 挂载
                     exec 允许执行有执行权限的命令
                     noexec 不允许执行有执行权限的命令
                     group 允许设备组的组用户挂载此设备
                     dev 文件系统中字符设备和块设备文件
                     defaults =rw suid dev exec auto nouser async
                     nouser 禁止普通用户挂载
                     suid  支持suid权限位
                     remount 重新挂载
                     user  允许一个用户挂载文件系统
                     ro  只读挂载
                     rw  读写挂载
                     loop  本地设备或文件
                 --bind  将两个文件绑定
           Attention:1.查看文件系统类型
                 #blkid 设备文件
                 如果执行mount时 不指-t选项,则自动调用blkid来查看文件系统类型
                2.将改变一些挂载选项,不用卸载,而后再挂载,可以通过-o remount 来实现 例如将/dev/sda2只读挂载到/mnt改为读写挂载
                 1.mount -o ro /dev/sda2 /mnt
                 2.mount -o remount /dev/sda2 (or /mnt)
                3.光盘文件系统是iso9660
                4./dev/dvd /dev/cdrom 均是软链接文件 dvd-->hdc  cdrom-->hdc
                5.如果指定VFAT文件系统,则在挂载点目录中不会出现lost+found
                6.挂载目录中的原文件,会在挂载后自动隐藏
卸载
  umount DEV or umount MOUNT_POINT
查看挂载点上的用户进程
  fuser -v mount_point
撤销此挂载点上的进程
  fuser -km mount_point
   Attention:如果用户cd到此挂载点目录下,用此命令时,则会被踢出系统
创建交换分区
  free -m 显示内存和虚拟内存(swap)  #top 也可以查看虚拟内存
    m代表以M为单位显示
  交换分区是一个独立分区
  1.fdisk 设备文件
    n
    使用t 改System id 改为82
  2.mkswap [options] 分区设备文件(格式化swap分区)
       -L label  改卷标
  3.swapon [options] 分区设备文件 (激活swap分区)
       -a    启用所用交换分区
       -s    检查交换分区文件状态
   swapoff 分区设备文件 (关闭swap分区)
dd 通过复制磁盘块(01代码)来实现复制功能
 dd if=FILE 复制FILE文件
   of=FILE 复制到FILE文件中
 1.做镜像
   dd if=/dev/cdrom of=/tmp/a.iso
 2.备份分区表
   磁盘的第一个扇区(512B)存放的有mbr(64B,磁盘分区表) 所以要备份磁盘分区表,就复制这个磁盘块即可
   dd bs=num 单位是Byte (blocksize,从0扇区开始将磁盘划分成若干个numB大小的磁盘块)
     count=num 表示复制num块  
   dd if=/dev/sdb of=/root/mbr.bak bs=512 count=1
 3.初始化分区(填0)
   /dev/zero:不停吐零
   /dev/sdb1这个磁盘分区只有1G空间
   dd if=/dev/zero of=/dev/sdb1 bs=1M count=1024
                 bs=1G count=1
 4.初始化磁盘空间(填0)
   dd if=/dev/zero of=/dev/sdb bs=512 count=1
   通常只将磁盘分区列表所在的磁盘块用0覆盖
 5.创建本地回环设备(用磁盘某文件来代替swap分区)
   1.dd if=/dev/zero of=/var/swapfile bs=1M count=256
   2.mkswap /var/swapfile
   3.swapon /var/swapfile
  Attention:此种情况应用在磁盘空间无法再划分主分区,一时又无法获得新的磁盘,但又必须使用swap分区的办法,这个只是应对办法,速度会比真正的swap更慢
开机自动挂载文件系统
追加条目写入/etc/fstab
格式
  6个字段
  DEV:name|LABLE=...|UUID=...(uuid 使用blkid 分区文件查看)
  MOUNT_POINT
  FSTYPE
  MOUNT OPTIONS:default0,acl (指定多个使用“,”隔开)
  DUMP FRQUENCY:      (转储频率,0代表不转储,1代表每天一次,2代表每2天一次|每隔一天)
  FSTYPE SELFCHECK SQENCE   (自检次序,0代表不自检,1代表FIRST 只有根可以,2代表second,可以有多个条目指定为2)
 Attention:swap 条目较为特殊
       DEV|LABEL swap swap defaults 0 0