Linux磁盤管理及其相關命令使用

Linux磁盤及文件系統

   CPU MEMORY(RAM) I/O

   I/O:disks entercard

   Disks:持久存儲數據

   接口類型:

     IDE(ata):并行 133MB/s

     SCSI:并口Ultrascsi320 320MB/s Ultrascsi640 640MB/s

   SATA:串口 6gbps

   SAS:串口 6gbps

   USB:串口 480MB/s

   并口:同一線纜可以接多塊設備

   IDE:兩個 主 從

   SCSI:

    寬帶 16-1

    窄帶 8-1

   串口:

   同一線纜只能接一塊設備

   硬盤:機械硬盤,固態硬盤

   Track:磁道

   Sector:扇區 512bytes

   Cylinder:柱面

   分區劃分是基于柱面:

   平均尋道時間:

   5400rpm 7200rpm 15000rpm

 

Linux的哲學思想:一切皆文件

  設備類型:

  塊設備:隨機訪問,數據交換單位是“塊“

  字符型設備:線性訪問,數據交換單位是”字符“

  設備文件FHS

   /dev

  設備文件:關聯至設備的驅動程序,設備的訪問入口

  設備號

   major:主設備號,區分設備類型,用于表明設備所需要的驅動程序

   mior:次設備號,區分同種類型下的不同的設備,是特定設備的訪問入口

   mknod

      make block or character special file

      mknod [option] …name type [major minor]

      mode:創建mode設備文件的訪問權限

            blob.png                                  

  設備文件名ICANN

  磁盤:

     IDE:/dev/hd[a-z]

       SCSI SATA SAS USB :/dev/sd[a-z]

    分區:

       /dev/sda#

    注意:CentOS6 和CentOS7統統將硬盤設備文件標識為/dev/sd[a-z]#              

    引用設備的方式

     設備文件名

     卷標

     UUID

               blob.png

  磁盤分區:MBR GPT

   MBR:0 sector

   分為三部分:

   446bytes:bootloader程序,引導啟動操作系統的程序

   64bytes:FAT文件系統分區表,每16個字節表示一個分區

   2bytes:MBR區域得有效性標識55AA為有效

blob.png

 4主分區

   3主1擴展

   N邏輯分區

   主分區和擴展分區的表示1-4

   邏輯分區5+

    

 

fdisk命令

   1.查看磁盤分區信息

      fdisk -l [-u] [device…]

blob.png

   2.管理分區 fdisk device

    fdisk提供了一個交互式接口來管理分區,他有許多字命令,分別用于不同的管理功能,所有的操作均在內存中完成,沒有直接同步到磁盤,直到使用-w命令寫入磁盤

   常用命令

         n:創建新分區

         d:刪除已有分區

         t:修改分區類型

         l:查看所有已知ID       

         w:保存并退出

         q:不保存退出

         m:查看幫助

         p:顯示現有分區信息

       blob.png 

    注意:在已經分區并且已經掛載其中某個分區的磁盤設備上創建新分區,內核可能在創建完成后無法直接識別

    查看:cat /proc/partitions

    通知內核強制重讀磁盤分區表

    Centos5:partprobe [device]

    Centos6,7:partx kpartx

    partx –a [device]

   kpartx –af [device]

   分區創建工具:parted fsdisk

 

創建文件系統

   格式化:低級格式化(分區之前進行,劃分磁道)

   高級格式化(分區之后對分區進行,創建文件系統)

   元數據區,數據區

   文件元數據:index node

   大小 權限 屬主屬組 時間戳 數據塊指針

   鏈接文件:存儲數據指針的空間當中存儲的是真實的文件訪問路徑

   設備文件:存儲數據指針的空間當中存儲的是設備號

   Bitmap index:位圖索引

                  

VFS virtual file system

Linux文件系統:

      文件系統是操作系統用于明確存儲設備或分區上的文件的方法和數據結構,即在存儲設備上組織文件的方法,操作系統中負責管理和存儲文件信息的軟件結構稱為文件管理系統,從系統角度看,文件系統是對文件存儲設備的空間進行組織和分配,負責文件存儲并對存入的文件進行保護和檢索的系統,負責為用戶建立文件,存入,讀出,修改,轉儲文件,控制文件的存取,安全控制,日志,壓縮,加密等。

      ext2(無日志功能),3,4  xfs  reiserfs  btrfs

    光盤:iso9660

    網絡文件系統:nfs cifs

    集群文件系統:gfs ocfs2

    內核是分布式文件系統:ceph

    Windows文件系統:vfat,ntfs

    偽文件系統:proc sysfs tmpfs hugepagefs

    Unix文件系統:UFS FFS JFS

    交換文件系統 swap

    用戶空間的分布式文件系統:mogilefs moosefs glusterfs lustre

      RAW 未經處理或格式化產生的文件系統

    文件系統管理工具

    創建文件系統工具

     mkfs

     mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.xfs …

檢測及修復文件系統的工具

     fsck

blob.png

         fsck.ext2 fsck.ext3…

         查看其屬性的工具

           dumpe2fs tune2fs

         調整文件系統特性

           tune2fs

        

鏈接文件:訪問同一個文件的不同路徑

   硬鏈接:多個文件路徑指向同一個inode

   特性:目錄不支持硬鏈接,避免循環鏈接

   硬鏈接不能跨越文件系統

   創建硬鏈接會增加inode引用計數

   ln src link_src

        

   軟鏈接(符號鏈接)指向一個文件路徑的另一個文件路徑

   特性:符號鏈接與原文件是兩個各自獨立的文件,有各自的inode,對原文件創建符號鏈接,不會增加原文件鏈接計數

   支持對目錄創建符號鏈接

   可以跨文件系統

   刪除符號鏈接文件不影響原文件,刪除原文件,符號鏈接指定的鏈接不存在,符號鏈接無效

   注意:符號鏈接文件大小是其指定的文件的路徑字符串的字節數

   ln –s src link_src

 

   內核及文件系統的組成部分

      文件系統驅動:由內核提供

      文件系統管理工具:由用戶空間的應用程序提供

        

  創建文件系統的工具:

      mkfs.ext2 mkfs.ext3 mkfs.ext4 向后兼容

      mkfs –t ext2=mkfs.ext2

        blob.png

      ext系列文件系統專用工具Mke2fs

        mke2fs [option] device

        -t {ext2|ext3|ext4} 指明要創建文件系統類型

        -b {1024|2048|4096} 指明文件系統塊大小

        -L label 指明卷標

        -j 創建有日志功能的文件系統

        -i #  byte-per-inode 每多少字節一個inode 指明inode與字節比率

        -N # 直接指明要給此文件系統創建的inode的數量

        -O [^]feature 以指定的特性創建目標文件系統

                has_journal

        -m # 指定預留空間百分比數值

            blob.png

         blob.png         

    e2label 卷標查看與設定

       查看 e2label device

       設定 e2label device label

         

    tune2fs命令:查看或修改系列文件系統的某些屬性

       Adjust tunable filesystem parameter on ext2/ext3/ext4 filesystem

       塊大小創建后不可修改

        -l 查看超級塊的內容

       修改指定文件系統的屬性

        -j  ext2àext3

        -L label 修改卷標

        -m# 調整預留空間百分比

        -O [^]feature 開啟或關閉某種特性

        -o [^] mount_options 開啟或關閉某種默認選項

         blob.png

        blob.png    

    dumpe2fs命令:顯示ext系列文件系統相關屬性信息

        dumpe2fs [-h] device

        

                  

    fsck 用于實現文件系統檢測的工具

    因進程意外終止或系統崩潰等原因導致電腦操作非正常終止時,此時,因檢測并修復文件系統,建議離線進行 

    ext系列文件系統的專用工具

    e2fsck   check a linux ext2/ext3/ext4

    e2fsck [options] device

      -y 對所有問題自動回答yes

      -f 即使文件處于clean狀態,也強制進行檢測

      fsck  check and clean a linux file system

      -t fstype 指明文件系統類型

      Fsck –t ext4 = fsck.ext4

      -a  無需交互而自動修復所有錯誤

      -r  交互修復

     blob.png   

      blkid  command-line to locate/print block device

        blkid device

        blkid –L label 根據label定位設備

        blkid –U uuid 根據uuid定位設備

        blob.png

 

mount命令掛在文件系統

    mount device mount_point

                設備名  掛載點

    通過cat /etc/mtab文件可以查看當前已經掛在的設備、

    對于掛載點,這個掛載點必須實現存在,建議使用空目錄,進程在使用的設備不能被卸載,提示設備正忙,device is busy。

    參數

        blob.png

        -L  label  指明卷標

        -U  uuid   指明UUID

        -t  vsftype 指明掛載的設備上的文件系統類型

        -r  readonly  只讀

        -w read and write  讀寫

        -n  不跟新/etc/mtab

        -a  自動掛載所有支持自動掛載的設備(定義在/etc/fstab文件中,且掛載選項中有anto功能)

        -B –bind綁定目錄到另一個目錄上

        查看內核追蹤到的已掛載的所有設備

                cat /proc/mounts

        blob.png

        -o options 掛在文件系統的選項,多個選項使用逗號隔開

            async 異步模式 對設備上的文件進行寫操作時,并不是時時保存

            sysnc  同步模式 內存中設備上的文件更改時,同時寫進洗盤

            atime/noatime 包含目錄和文件

            diratime/nodiratime  目錄訪問時間戳、

            auto/noauto  是否支持自動掛載

            exec/noexec 是否支持在文件系統上運行應用程序

            dev/nodev 是否支持在此文件系統上使用設備文件

            suid/nosuid  是否支持suid和sgid權限

            remount 重新掛載

            ro  只讀  等同于 -r

            rw  讀寫  等同于 -w

            user/nouser 是否允許普通用戶掛在此設備,默認管理員才能掛載

            acl  啟用此文件系統上的acl功能

            Defaults 相當于rw nosuid dev exec auto  nouser async

            blob.png    

        

磁盤管理相關命令練習

mount 掛載相應硬盤

對硬盤進行分區

blob.png

使用lsblk命令查看硬盤分區信息是否已經更新

blob.png

如果沒有更新可以使用partx -a device或者partprobe命令更新相關信息

如果兩者都沒有起效,可以查看/proc/partitions文件來使更新生效

創建文件系統mkfs.ext2/3/4/xfs或者mke2fs -t ext2/3/4  device

blob.png

使用tune2fs查看文件系統相關信息

blob.png

可以使用hexdump -C -v -n 512 device查看文件系統的第一個塊的存儲信息,最后兩個字節55 aa表示文件是正常的

blob.png

 可以使用e2label對相應分區加上卷標

blob.png       

         

原創文章,作者:Stupid_L,如若轉載,請注明出處:http://www.www58058.com/40230

(1)
Stupid_LStupid_L
上一篇 2016-08-26
下一篇 2016-08-26

相關推薦

  • Linux命令語法及其幫助信息

    一、Linux命令語法 1、通用格式:command options argument 2、Command: 3、Options: 4、Argument: 二、Linux命令幫助信息獲取途徑 1、help命令 && –help選項 2、manual (1)章節 (2)語法 (3)man命令輸出詳解   &nbs…

    Linux干貨 2016-09-19
  • 命令組合實戰

    1 列出/etc/下以。conf結尾的文件 [redsun@jiange root]$ ls  /etc/*.conf | tr 'a-z' 'A-Z'  | sed 's/ETC/etc/' > /tmp/etc.conf [redsun@jiange root]$ mo…

    Linux干貨 2016-11-13
  • 教你如何在Fedora,CentOS,RHEL中檢查RPM包的依賴性

    我們都知道,在基于紅帽的Linux系統中,一個RPM包,需要把先將它依賴的其他包安裝好才能正常的工作。對于終端用戶,RPM的安裝、更新、刪除中存在的依賴關系已經被工具透明化了(如 yum或 DNF等)。但如果你是系統管理員或者RPM包的管理員,你需要諳熟RPM包的依賴關系,以便及時更新、刪除適當的包來保證系統的正常運行。 在本教程中,我將教大家如何檢查RPM…

    Linux干貨 2015-02-10
  • 構建一個高可用的Nginx集群

    實驗目的: 構建一個高可用的Nginx集群。 實驗要求: 1、基于nat結構實現; 2、實現高可用; 實驗拓撲圖形: 實驗步驟: 1、  按圖配置各個網卡地址; 2、  設置Nginx主機(下面帶#的部分為從所需要的配置,其他則一樣) Yum install httpd nginx Vim /etc/httpd/conf/httpd.co…

    2017-05-15
  • Linux網絡管理之路由和team網絡組

    如何實現把linux當路由器來使用,實現不同網段之間的通信訪問,這就是今天所要實現的路由配置   環境準備:4臺虛擬機,兩臺中間兩臺作為路由器來使用(每天主機兩塊網卡),其他兩臺作為終端主機,目的是讓不同網段的兩臺主機之間互相訪問(這里在vmware里面做的實驗,所以網卡的類型都設置為橋接)   拓撲圖:   步驟一:將A、D兩…

    系統運維 2016-09-10
  • 關于 LVM 邏輯卷管理

                  邏輯卷管理 (LVM)    允許對卷進行方便操作的抽象層,包括從新設定文件系統的大小   允許在多個設備間重新組織文件系統將設備指定為物理卷用一個或者多個物理卷來創建一個卷組物理卷是用固定大小的物理區…

    系統運維 2016-09-02

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-26 15:57

    文章對一些概念性的東西,而沒有通過自己的文字總結成通順的話語,這是不合適的,建議以后嘗試通過自己的語言將內容的知識點進行總結與梳理,寫出優秀的博客。

欧美性久久久久