zoukankan      html  css  js  c++  java
  • linux:磁盘的分割、检验、格式化与挂载

    新增一颗磁碟:

      1.对磁碟进行分割,以建立可用的partition

      2.对该分割槽partition进行格式化(format),以建立系统可用的filesystem

      3.若要仔细点,可对刚刚建立的filesystem进行检验

      4.在linux上面,需要建立挂载点(亦即是目录)将它挂载上去

    一、观察磁碟分割状态(lsblk、blkid、parted)

      lsblk(list block device):列出系统上的所以磁碟列表

      

      blkid:获取UUID

      

      补充(打错字了):这样识别码就可以拿来作为挂载或者使用这个装置档案系统之用了

      

      parted:列出磁碟的分割表类型和分割资讯

      

      

    二、磁盘分割(gdisk/fdisk)

      gdisk:GPT分割格式使用(以下都试使用gdisk来分割的)

      fdisk:MBR分割格式使用

      注意:gdisk /dev/sda不能写错gdisk /dev/sda1,因为partition是针对整个磁碟装置的,不是针对某个partition的

      

      比较重要的指令:

        d:删除一个分割槽

        n:添加一个新的分割槽

        q:退出,不保存修改

        w:保存修改后离开

        p:打印分区表(里面有目前磁碟的状态)

      

      从上图可以看出:

        a.该磁碟还可以进行额外的分割,因为它的最大磁区为83886080,但是它只用到65026047

        b.每一个分割槽的start磁区都是上一个分割槽的结束磁区加1

      强烈建议:你可以使用gdisk或者fdisk在磁碟上面随便怎么弄,但是千万不要按下【w】,千万记得按下【q】,此外不要在GPT上面使用fdisk或者在MBR上面使用gdisk,因为指令的错误可能导致磁盘的分割记录全部死光光;

      

      使用gdisk新增分割槽(分割过程):

      

      分割槽的档案格式查询:linux的基本就是8200(swap)/8300/8e00三种格式,windows的几乎都用0700

      

      

      当确保分割槽正确的情况下,按下【w】:

        

      此时的磁碟还在使用当中,不能立即载入新的磁盘分割资讯,有两种方式解决:

        1.关机重启

        2.使用partprobe这个命令来处理

      

      partprobe:更新linux核心的分割表资讯

      

     

      磁碟格式化(mkfs.xfs):(注意【重点】:当你在系统中新分割了两个partition后,分别将它们格式化了,然后把他们删除后,你再去重新创建新的分区,这时候你会发现,分割的新的partition直接就格式化好了,刚好就是刚才删除的那两个格式化了的分区的filesystem,当你分割了两个分割槽之后,第三个开始才没有被格式化)

      

        

     举例:xfs可以使用多个资料流来读写系统,以增加速度,因此那个agcount可以和CPU的核心数来做搭配

      

      跳过:XFS档案系统for RAID效能优化(Optional)

      其他的档案系统的mkfs

      

      档案系统的检验(不经常用,也不希望去用):

        注意:通常只有你是root身份,且你的档案系统有问题的时候才使用这个命令,否则正常情况下使用该命令,可能会造成对系统的危害

           执行xfs_repair/fsck.ext4时被检查的分区务必不可挂载到系统上,既是需要在卸载的状态下

        语法:xfs_repair [-fnd] 裝置名称

        -f :後面的裝置其實是個檔案而不是實體裝置

        -n :單純檢查並不修改檔案系統的任何資料 (檢查而已)

        -d :通常用在單人維護模式底下,針對根目錄 (/) 進行檢查與修復的動作!很危險!不要隨便使用

        

        

        fsck.ext4:处理ext4档案系统

        

    档案系统的挂载与卸载:

      单一档案系统不应该重复挂载在不同的挂载点(目录)中

      单一目录不应该重复挂载多个档案系统

      要作为挂载点的目录,理论上应该是空目录才对(如果原目录不为空,那么挂载了档案系统之后,该目录下的东西会暂时的消失;直到你把这个档案系统卸载之后,该目录原来的东西又会出现)

      挂载的指令mount:

        /etc/filesystem:系统指定的测试挂载档案系统类型的优先顺序

        /proc/filesystem:linux系统已经载入的档案系统类型

        /lib/modules/3.10.0-327.el7.x86_64/kernel/fs/:linux系统支援的档案系统的驱动程序

    磁碟与档案系统参数修订:

      档案如何代表该装置呢?根据主要(major)和次要(minor )代码,linux的系统核心就可以识别对应的装置了

      

      如吐所示:其中8为主要代码,代表着/dev/sda,而0-5为次要代码,一下是常见的一些主要次要代码:

       

      mknod(某些时候需要手动处理装置档案):

      

      xfs_admin 修改xfs档案系统的LABEL NAME 和UUID;

      

      疑问:因为mount后面接着档名也可以挂载的,为什么要需要通过uuidgen来生成新的一串uuid来挂载呢?

      解:你没有办法指定这个磁碟在所以的linux中档名一定都会是固定不变的(比如:一直都是/dev/sda4),但是在linux中uuid是唯一的,很难重复

    tune2fs修改ext4档案系统的LABEL NAME和UUID:

       

      

    设定开机挂载(重要文件:/etc/fstab档案系统表和/etc/mtab挂载点表),特殊装置loop挂载(暂时不看):

      当你使用mount挂载了某个分区到某个目录上面,只要你改变了该目录的结构,其实就是改变了该分区(档案系统的结果),而不是改变了这个目录

      开机自动挂载(修改/etc/fstab文件)的限制:

        根目录{/}是必须挂载的,而且一定要先于其他mount point(挂载点)挂载进来

        其他挂载点必须为己建立目录,可任意只指定,但是必须遵循系统目录架构原则(FHS)

        所有挂载点在同一时间内只能挂载一次

        所以partition在统一时间内只能挂载一次

        如果要进行卸载,则必须先将工作目录移动到mount point(及其子目录)之外

     /etc/fstab(档案系统表):

        

        总共分为留个栏位:

          第一:磁碟装置名/UUID/LABEL NAME 

          第二:挂载点

          第三:档案系统

          第四:档案系统参数

          

          第五:能否被dump备份指令作用(直接输入0就好了)

          第六:是否以fsck检测磁区(看看档案系统是否完整clean),直接填写0就行(因为xfs档案系统会以它自己的方式去进行额外的检测,fsck对xfs档案系统不适用)

      设置开机挂载步骤:

        a>.查询好需要挂载的档案系统的uuid/label name/装置档名{xfs:xfs_admin -lu /dev/sda5 ; ext4:tune2fs -l /dev/sda4 | grep name/UUID 或者dumpe2fs -h /dev/sda4 | grep name/UUID}

        b>.vi /etc/fstab,添加需要挂载的档案系统,比如:

          UUID=ce88f08a-0676-4fc5-af7d-8928ecd53fae /data/ext4 ext4 defaults 0 0

          UUID=701b1cfa-0e83-4986-86c8-0e5481262421 /data/xfs xfs defaults 0 0

        c>.最后测试一下写入的语法有没有错误:

          mount -a

          df 挂载目录(查看是否挂载成功,以后开机就会自动挂载)

        d>./etc/fstab是开机时的设定档,实际上filesystem的挂载信息是记录在/etc/mtab和/proc/mounts这两个档案中的,每次我们更动filesystem时就会修改这两个文件,万一你在/etc/fstab中输入的语法有错误,导致无法正常开机,就会进入单人维护模式,是只读的 read only的状态,也就无法更新这两个文件了,解决办法:  mount -n -o remount,rw /

         

    记忆体置换空间(swap)之建置:

      先新建一个partition(类型8200):

        

      开始建置swap格式化、并观察载入:

          

      添加开机自动挂载(/etc/fstab):  

        

      暂时跳过。。。。。。。

     内容参考自鸟哥linux私房菜,传送门:http://linux.vbird.org/;

  • 相关阅读:
    Hbase 统计行数的四种方式
    Solr、MongoDB和Hadoop比较
    三种方法更改MAC OS X下的HOSTS文件
    史上最全前端面试题(含答案)
    图文-水平垂直居中兼容ie6+
    CSS3动画
    jQuery延迟加载(懒加载)插件 – jquery.lazyload.js-Web前端(W3Cways.com)
    web app变革之rem
    MAC中通过gem命令安装compass
    mac下升级ruby环境版本
  • 原文地址:https://www.cnblogs.com/zengguowang/p/5475020.html
Copyright © 2011-2022 走看看