linux磁盤管理補充之掛載選項及常用工具

一、文件掛載的配置文件

        配置文件:/etc/fstab

要掛載的設備的UUID或卷標或/dev/sd[a-z]    掛載點           文件系統類型   掛載選項      轉儲頻率  自檢次序
UUID=8ecfb3ed-37d8-43cd-a1ec-8a4be6fa5973 /                   ext4    defaults        1         1
UUID=8e1235ed-a2b5-4293-8fae-42b4f249a614 /boot                 ext4    defaults        1         2
UUID=1c47e765-0247-4526-b1e3-8a013b5c47c5 swap                 swap    defaults        0         0

        掛載選項:默認是default ,也可以直接在此處添加需要掛載的選項如:acl,rw;還需要注意的是centos6 默認不具有acl掛載選項,centos7有。

                         1、光盤iso9660 掛載選項要選擇loop(文件也要加loop選項)。

1.png

                        2、目錄掛載到目錄時,文件系統出選擇none,掛載選項選擇bind。

2.png

                        3、因為UUID是設備的唯一標識,因此為避免錯誤最好使用UUID,在填寫UUID時我們可以在末行模式下輸入:r!blkid /dev/sda1 既可插入信息,然后在編輯即可。

        轉儲頻率:0:不做備份

                         1:每天轉儲

                         2:每隔一天轉儲

        自檢次序:0:不自檢

                         1:首先自檢,一般只有rootfs才用1,如果此處值為非1,如果要掛載的設備處存在錯誤,在重新啟動的系統時,會導致系統起不來,截圖如下:

截圖20160829204812.png

                                    此時,輸入密碼后,直接編輯vim /etc/fstab 會提示我們目前是只讀掛載,不能修改,因此我們可以通mount -o remount,rw /  然后在編輯配置文件修改后重啟即可。

                                    還有當我們修改完配置文件后,如果mount -a 之后執行mount命令發現沒有更新,可通過mount -o remount 掛載點,重新掛載即可。

            losetup命令
                    功能: 實現loop 設備和文件關聯
                        dd if=/dev/zero of=/testdir/bigfile bs=1M count=500
                        losetup  /dev/loop7 /testdir/bigfile   關聯指定文件
                        mkfs.ext4 /testdir/bigfile
                        mount /dev/loop7  /mnt/bigfile/    此處由于是設備了就不需要加-o loop了
                        losetup -a  centos6 需要加-a centos7 不需要

二、處理交換文件和分區

        交換分區系統RAM的補充,只有當系統內存不夠時,才會使用swap分區。

                啟用交換分區:swapon

                    swapon [option]…[device]

                        -a:激活所有的交換分區

                        -s:查看swap分區的掛載信息

                        -p #:指定交換分區的優先級,數越大,優先級越高,也可以在fstab文件中掛載選項處pri=#指定優先級

                    優先級的詳細說明:用戶可以給某個swap指定一個0到32767的優先級,如果用戶沒有指定,那么核心會自動給swap指定一個優先級,這個優先級從-1開始,每加入一個新的沒有用戶指定優先級的swap,會給這個優先級減一。先添加的swap的缺省優先級比較高,除非用戶自己指定一個優先級,而用戶指定的優先級(是正數)永遠高于核心缺省指定的優先級(是負數)。優化性能:分布存放,高性能磁盤存放

    

                禁用交換分區:swapoff

                    swapon [option]…[device]

            應用舉例:創建swap分區

                    1、fdisk 創建一個1G的分區,然后調整分區id為82,保存退出。(也可以通過dd if=/dev/zero of=/testdir/swapfile bs=1M count=1024創建一個文件,然后在格式化掛載)

1.png

                    2、格式化分區。

2.png

                    3、掛載分區,如果我們掛載完之后,再次編輯掛載選項時,應該先swapoff /dev/sd#,然后在swapon -a

3.png

                    4、激活分區并查看swap分區信息

4.png

                    5、取消掛載

1.png


三、使用光盤和USB

                光盤:
            在圖形環境下自動啟動掛載
                        /run/media/<user>/<label>
            否則就必須被手工掛載
                        mount /dev/cdrom /mnt/
            卸載或彈出磁盤:eject
            創建掛載ISO文件:
                        cp /dev/cdrom /root/centos7.iso
                        mkisofs -r -o /root/etc.iso /etc
            刻錄光盤
                        wodim –v –eject centos.iso
          
            USB:

                被內核探測為SCSI設備
                        /dev/sdaX、 /dev/sdbX、或類似的設備文件
                在圖形環境中自動掛載
                        圖標在[計算機]窗口中創建,如果要連接到虛擬機上面先到斷開與物理主機的連接, linux中拷貝完 數據要同步,sync至少執行三次。
                        掛載在/run/media/<user>/<label>
                手動掛載
                        mount /dev/sdb1 /mnt


四、常用工具


        查看內存空間的使用狀態:

                    free [option]:

                            -m:以MB為單位

                             -g:以GB為單位

         查看已經掛載的文件系統:

                     df [option]…[file]…

                            -H:以1000位單位

                            -T:顯示文件系統類型

                            -h:human

                             -i:顯示inode替代blocks

                            -P:以Posix兼容的格式輸出

          查看某目錄總空間占用狀態及大?。?/strong>

                       du [option]…DIR

                            -h:human

                            -s:總大小

            創建、復制、轉換文件:dd

                    用法:dd if=/path/from/src of=/path/to/dest bs=#(指定大小) count=#(指定多少個)

                    of=file        寫到所命名的文件而非標準輸出

                    if=file         從所命名文件讀取而不是從標準輸入

                    bs=size       指定塊大小

                    obs=size      一次寫size個byte

                    ibs=size        一次讀size個byte

                    cbs=size        一次轉化size個byte

                    skip=block    從開頭忽略block個ibs大小的塊(忽略的是if中的文件中的塊)

                    seek=block    從開頭忽略block個obs大小的塊(忽略的是of中的文件中的塊)

                    count=n         只拷貝n個記錄

  

                    conv=conversion[,conversion…] 用指定的參數轉換文件。
                      轉換參數:
                            ascii 轉換 EBCDIC 為 ASCII
                            ebcdic 轉換 ASCII 為 EBCDIC
                            block 轉換為長度為 cbs 的記錄,不足部分用空格填充。
                            unblock 替代cbs長度的每一行尾的空格為新行
                            lcase 把大寫字符轉換為小寫字符
                            ucase 把小寫字符轉換為大寫字符
                            swab 交換輸入的每對字節
                            noerror 出錯時不停止
                            notrunc 不截短輸出文件
                            sync 把每個輸入塊填充到ibs個字節,不足部分用空(NUL)字符補齊 

         應用舉例:

                磁盤拷貝:
                        dd if=/dev/sda of=/dev/sdb
                備份MBR:
                        dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1
                破壞MBR中的bootloader
                        dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
                有一個大于2K的二進制文件fileA。 現在想從第64個字節位置開始讀取,需要讀取的大小是128Byts。又有fileB, 想把上面讀取到的128Bytes寫到第32個字節開始的位置,替換128Bytes,請問如何實現?
                        dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc

                備份:

                將本地的/dev/sdx整盤備份到/dev/sdy
                        dd if=/dev/sdx of=/dev/sdy
                將/dev/sdx全盤數據備份到指定路徑的image文件
                        dd if=/dev/sdx of=/path/to/image
                備份/dev/sdx全盤數據,并利用gzip工具進行壓縮,保存到指定路徑
                        dd if=/dev/sdx | gzip >/path/to/image.gz


                恢復: 
                 將備份文件恢復到指定盤
                        dd if=/path/to/image of=/dev/sdx
               將壓縮的備份文件恢復到指定盤
                        gzip -dc /path/to/image.gz | dd of=/dev/sdx               

                拷貝內存資料到硬盤

                    將內存里的數據拷貝到root目錄下的mem.bin文件
                        dd if=/dev/mem of=/root/mem.bin bs=1024

                從光盤拷貝iso鏡像

                    拷貝光盤數據到root文件夾下,并保存為cd.iso文件
                        dd if=/dev/cdrom of=/root/cd.iso


                銷毀磁盤數據

                    利用隨機的數據填充硬盤,在某些必要的場合可以用來銷毀數據。執行此操作以后, /dev/sda1將無法掛載,創建和拷貝操作無法執行
                        dd if=/dev/urandom of=/dev/sda1


                 得到最恰當的block size
                        dd if=/dev/zero bs=1024 count=1000000  of=/root/1Gb.file
                        dd if=/dev/zero bs=2048 count=500000    of=/root/2Gb.file
                        dd if=/dev/zero bs=4096 count=250000   of=/root/4Gb.file
                        dd if=/dev/zero bs=8192 count=125000  of=/root/8Gb.file
                通過比較dd指令輸出中所顯示的命令執行時間,即可確定系統最佳的block size大小  


                測試硬盤讀寫速度
                        dd if=/root/1Gb.file bs=64k | dd of=/dev/null
                        dd if=/dev/zero of=/root/1Gb.file bs=1024
                        count=1000000
                        通過上兩個命令輸出的執行時間,可以計算出測試硬盤的讀/寫速度

 
                修復硬盤
                        dd if=/dev/sda of=/dev/sda
                    當硬盤較長時間(比如1, 2年)放置不使用后,磁盤上會產生消磁點。當磁頭讀到這些區域時會遇到困難,并可能導致I/O錯誤。當這種情況影響到硬盤的第一個扇區時,可能導致硬盤報廢。上邊的命令有可能使這些數據起死回生。且這個過程是安全,高效的。

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

(1)
NarutoNaruto
上一篇 2016-08-30
下一篇 2016-08-30

相關推薦

  • N22-第2周作業

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示 cd、pwd、ls、alias、cat、more、less、tail、cut、wc、touch、mv、cp、rm pwd:用戶當前所在目錄 [xuc@localhost ~]$ pwd /home/xuc cd:切換目錄  cd  [/PATH…

    Linux干貨 2016-08-22
  • Linux文本處理三劍客之awk詳解

    前言 awk是一款強大的報告生成器,不同于sed和grep,它的側重點是如何把文本信息更好的展示出來,常用與統計和格式化輸出。awk相當于微型的shell,有著自己一套語法結構,例如:循環結構,數組,條件判斷,函數,內置變量等功能。處理對象一般純文本文件或純文本信息。 用法詳解 基本語法 awk [options] 'progra…

    Linux干貨 2015-04-29
  • 圖解Man

    個人淺見 歡迎指正

    Linux干貨 2016-10-18
  • 網絡配置

    Internet 協議特征  運行于OSI 網絡層  面向無連接的協議  獨立處理數據包  分層編址  盡力而為傳輸  無數據恢復功能     IP地址 它們可唯一標識IP 網絡中的每臺設備 每臺主機(計算機、網絡設備、外圍設備)必須具有唯一的地址&…

    Linux干貨 2016-09-06
  • Linux虛擬網絡接口-Bonding 配置

    一、bonding 的定義     bonding是通過將同一設備的多個物理網卡綁定到一個虛擬網卡上,再對外提供連接。對于外端來說,多個物理網卡共享虛擬網卡的IP和mac地址,也就表現為一個網卡設備。通過bonding技術可以實現高可用或者負載均衡。     bonding有7種工作模式:&nbsp…

    Linux干貨 2017-07-02
  • 循環語句for、while、until

    作用:    循環語句的作用是它可以讓一段代碼重復的執行,直到所需條件不滿足為止。 在linux中變量的賦值方式有三種:       第一:直接等于號賦值       第二:通過read交互賦值       第三:for循環的賦值 bash腳本中的循…

    Linux干貨 2016-08-22

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-01 12:53

    內容整體很完整,如果加上掛載的概念及掛載的目的會讓文章整體更有說服力,突顯用心

欧美性久久久久