文件管理

echo“- – -”>/sys/class/scsi_host/host2/scan掃描新裝的硬盤,不需要重啟

磁盤管理三大步驟:分區,管理,掛載

設備文件創建mknob cdrom /mnt/cdrom

并行接口針多,但是傳的速度過快,會對數據造成干擾

vLinux的數據一般都存儲在分區空間

學習linux的磁盤管理就必須:1. 設備識別 ;2.設備分區 ;3.創建文件系統 ;

4.標記文件系統 ;5./etc/fstab 文件中創建條目 6.掛載新的文件系統

一、磁盤結構與分區

柱面cylinder磁道)、255磁頭head512Bite*63扇區secotr

SCSI、SATA、SAS、USB都顯示/dev/sd

兩種分區方式:MBR ,GPT

v MBR: Master Boot Record放在磁盤的第一個扇區里(最外圈)0扇區 1982年,

使用32位表示扇區數,分區不超過2T

v     如何分區:按柱面     0 磁道0 扇區:512bytes

446bytes: boot loader   64bytes:分區表以16bytes標識一個分區  2bytes: 55AA結束標志,說明前面是有用的。

vMBR分為: 4 個主分區;3 主分區+1 擴展(N邏輯分區 )

文件管理 

v GPT:GUID Globals Unique Identifiers

partition  table支持128個分區,使用64 位,支持8Z512Byte/block  64Z 4096Byte/block) )

v    使用128 UUID  表示磁盤和分區 GPT 分區表自動備份在頭和尾兩份,并有CRC 校驗位

v UEFI ( 統一擴展固件接口) 硬件支持GPT,使操作系統啟動

分區主分區擴展分區、邏輯分區,基于MBR來分GPT上只有主分區

主分區一個硬盤上最多四個,操作系統啟動文件,激活分區只有一個,計算機啟動時,會找激活分區的主分區,在啟動操作系統),不能細分為小區/dev/sda1-4,來表示的包括擴展分區在內

擴展分區:在一個硬盤上最多只有一個,不能直接存數據 /dev/sda1-4

邏輯分區:邏輯分區在擴展分區,存儲數據,只能/dev/sda5- n從第5分區開始

分區作用v1.優化I/O性能,建議把日志單獨劃分一個分區

2. 實現磁盤空間配額限制  3.提高修復速度 ; 4.隔離系統程序  5.安裝多個OS ;6.采用不同的文件系統

二、管理分區

列出塊設備:lsblk 選項:-l塊設備列表sda,以及掛載信息) –V:查看塊設備的版本信息

v  創建分區使用:

  fdisk  創建MBR 分區 (dosfdisk –l /dev/sda  -u=cylinders; -u=secotr…

  gdisk  創建GPT 分區

  parted  高級分區操作(創建、復制、調整大小等等)  :創建分區、改變類型v

分區工具fdiskgdisk   

  fdisk創建MBR分區,一般對硬盤分區,不對分區再次分區 ;gfisk /dev/sdb創建GPT 分區工具

  fdisk -l [-u] [device…]  /dev/sda 查看所有磁盤分區信息

2.1 fdisk /dev/sda 

p  分區列表  ;   t  更改分區類型  ;   n  創建新分區

d  刪除分區  ;   w  保存并退出   ;   q  不保存并退出

設備的名稱可能環境變化而發生改變,把邏輯分區5刪除之后,邏輯分區6就會變成5

         因而在配置文件里最好不用分區設備名稱

fdisk  -l /dev/sdX 查看物理硬盤的分區表 

注意:老的硬盤有數據)新加分區存盤退出的時候很有可能會出現不同步的情況;

  查看內核是否已經識別新的分區:

   cat /proc/partitions、lsblkls /dev/sda*’:查看內存中的分區表,可能與磁盤中的分區不同步,

partprobe 重新設置內存中的內核分區表版本

2.2 通知內核重新讀取硬盤分區表

partprobe /dev/sda可以同步分區表不管增加、刪除),適用于CentOS5,7

partx –a /dev/sda :增加分區同步方法,適用于CentOS6

partx –d – -nr 6-8 /dev/sda刪除分區6-8的同步方法,適用于CentOS6

2.3 parted分區工具 

    parted [ 選項]… 設備 命令 [ 參數]…]  即時生效

parted /dev/sdb mklabel gpt|msdos  改變分區表結構gpt或者mbr

parted /dev/sdb print  打印分區 parted /dev/sdb mkpart primary 1 200  (默認M 

parted /dev/sdb rm 1 刪除分區

parted –l 查看所有磁盤狀態  partedp:查看格式化是否成功 ,列出磁盤分區

注意parted 的操作都是實時生效的,小心使用

三、file system 文件系統類型

   磁盤分區之后選擇不同的文件系統

  文件系統是對文件存儲設備的空間進行組織和分配,負責文件存儲并對存入的文件進行保護和檢索的系統。具體地說,它負責為用戶建立文件,存入、讀出、修改、轉儲文件,控制文件的存取,安全控制,日志,壓縮,加密等。

      ntfs支持4G以上的文件可以設置權限) ,fat32G),ext23,4

    RAW:未經處理或者未經格式化產生的文件系統(沒有文件系統不方便管理,但是不影響性能)

有一些數據庫,直接通過二進制查看,剛分完取就相當于RAW

3.1 Linux 文件系統

    ext2(Extended file system), ext3,ext4, CentOS6  ;光盤:iso9660    可以df –T 查看

    xfsCentOS7 SGI , btrfs Oracle , reiserfs, jfsAIX , swap用來模擬內存使用)

Windows文件系統 fat32, ntfs   v Unix: FFS fast , UFS unix , JFS2

v  網絡文件系統:NFS, CIFS

v  集群文件系統:GFS2, OCFS2 oracle)服務器和存儲都有群集,容錯率增加

v  分布式文件系統:ceph, moosefs, mogilefs, glusterfs,Lustre 就近訪問,速度快

   對系統文件操作時,系統會對這次的操作做一個記錄,修改硬盤的文件,先要把文件讀入到內存中,然后在內存中修改,最后傳遞到硬盤文件中。但是有日志的文件系統是修改的文件記錄在硬盤文件帶有的日志,最后在系統不忙的時候日志的文件就會寫入到硬盤文件中了。避免修改的過程中突發實況斷電)會毀壞數據,因而寫日志能夠保證系統的穩定性要么修改前,要么修改后)實時修改文件(與內存中的文件同時修改)

v  根據其是否支持"journal" 功能:

日志型文件系統: ext3, ext4, xfs, …  ;    非日志型文件系統: ext2, vfat

v  文件系統的組成部分:

內核中的驅動程序模塊:ext4, xfs, vfat         lsmod module(模塊):列舉模塊

用戶空間的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat

v Linux 的虛擬文件系統:VFSVirutal file system,用戶打交道的是虛擬文件系統,文件系統不同,訪問方法也就不同VFS屏蔽文件系統的區別,就可以按照統一方法訪問,操作的命令也就是一樣的。(代理程序)

v     查前支持的文件系統:cat /proc/filesystems

   blkid:查看分區是否有文件系統列出的分區都是有文件系統的分區

3.2 創建文件系統mkfs

       文件系統的格式化:mkfs 創建文件系統的過程) ,格式化之前必須取消掛載。

   為了表示是使用UUID為了保證UUID的唯一性,規范定義了包括網卡MAC地址、時間戳、名字空間(Namespace)、隨機或偽隨機數、時序等元素,以及從這些元素生成UUID的算法。

3.2.1 mke2fs 文件系統ext系列專用管理工具

 -t {ext2|ext3|ext4}   -b {1024|2048|4096} :對文件分配空間的最小單位指定塊大小,格式化完了就不能指定了

     -L 'LABEL' 設定卷標         -j: 于 相當于 -t ext3

                 mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3

  -i #:  為數據空間中每多少個字節創建一個inode ;此大小不應該小于block 的大小

  -N # :為數據空間創建個多少個inode    -I:一個inode 記錄大小128—4096

  -m #:  默認5%, 為管理人員預留空間占總空間的百分比

        -O FEATURE[,…] :啟用指定特性   -O ^FEATURE關閉指定特性

3.2.2 tune2fs 重新設定ext 系列文件系統

      文件系統標簽L:  指向設備的另一種方法 ; 與設備無關

vv e2label :管理ext 系列文件系統的LABEL      # e2label DEVICE [LABEL]

tune2fs :重新設定ext 系列文件系統可調整參數的值,格式化之后指定塊大小  注意:塊大小創建后不可更改)

   -l :查看指定文件系統超級塊信息super block 文件系統的元數據就是存儲在超級塊中

-L 'LABEL' :修改卷標  ; -m # :修預留給管理員的空間百分比  ;-j:  ext2 升級為ext3

   O:  文件系統屬性啟用或禁用, O ^has_journal 禁用日志功能

     -o:  調整文件系統的默認掛載選項,–o ^acl

findfs  :查找分區

findfs [options] LABEL=<label>          findfs [options] UUID=<uuid>

-U UUID:  修改UUID  uuidgen生成UUID

v dumpe2fs查看超級塊分組 -h :查看超級塊信息,不顯示分組信息 =tune2fs –l

v  超級塊:存儲文件系統的大小、有多少是空的和已經填滿的占多少,以及它們各自的總數和其他諸如此的信息要使用一個分區來進行數據訪問,那么第一個要訪問的是超級塊,如果超級塊壞了,那磁盤就壞了

超級塊占用第1物理塊,是文件系統的控制,超級塊包括:文件系統的大小、空閑的數目、空閑的索引空閑i節點數目、空閑i節點索引表、封鎖標記等。超級塊系統為文件分配存儲空間、回收存儲空間得依據。

所以為了防止超級塊數據被破壞,一般在組的13,57,9存儲備份。主要的在組0

3.2.3 blkid 塊設備屬性信息查看

blkid [OPTION]… [DEVICE]

-U UUID:  根據指定的UUID 來查找對應的設備  ; -L LABEL :根據指定的LABEL 來查找對應的設備

3.3 fsck文件系統檢測及修復

    常發生于死機或者非正常關機之后

v  掛載為文件系統標記 no clean” ”

注意:因進程意外終止或系統崩潰等原因導致操作非正常終止時,可能會造成文件損壞;此時,應該檢測并修復文 件系統;建議,離線進行(非掛載狀態,無人操作);

v fsck: File System Check  只能修復文件系統的結構,不能修復上面的數據

fsck.FS_TYPE             fsck -t FS_TYPE    FS_TYPE 一定要與分區上已經文件類型相同

-a:  自動修復錯誤    ;       -r:  交互式修復錯誤

v e2fsck ext 系列文件專用的檢測修復工具

-y :自動回答為yes   ;       -f 強制修復每個扇區的一塊塊尋找壞的扇區進行修復

四、掛載mount

v  linux操作系統中,掛載是一個非常重要的功能,使用非常頻繁。它指將一個設備(通常是存儲設備)掛接到一個已存在的目錄上。(這個目錄可以不為空,但掛載后這個目錄下以前的內容將不可用。)需要理解的是,linux操作系統將所有的設備都看作文件,它將整個計算機的資源都整合成一個大的文件目錄。

    我們要訪問存儲設備中的文件,必須將文件所在的分區掛載到一個已存在的目錄上,然后通過訪問這個目錄來訪問存儲設備。

掛載將額外文件系統與根文件系統某現存的目錄建立起關聯關系,進而使得此目錄做為其它文件訪問入口的行為。 卸載為解除此關聯關系的過程。

v  把設備關聯掛載mountmount Point  ;  卸載umount:可使用設備,也可以使用掛載點

v     掛載點下原有文件在掛載完成后會被臨時隱藏  ; 掛載點目錄一般為空

4.1mount命令掛載文件系統

掛載方法:mount  DEVICE設備名  MOUNT_POINT掛載點

v mount 通過查看/etc/mtab 文件顯示當前已掛載的所有設備

v      mount [-fnrsvw] [-t vfstype] [-o options] device dir

device :指明要掛載的設備;df:顯示掛載的設備以及分區使用情況

(1)  設備文件:例如/dev/sda5   (2)  卷標:-L 'LABEL', 如 例如 -L 'MYDATA'

(3)  UUID, -U 'UUID'如 :例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'

(4)  偽文件系統名稱:proc, sysfs, devtmpfs, configfs

   dir :掛載點,事先存在;建議使用空目錄 ,進程正在使用中的設備無法被卸載(取消掛載)

4.2 mount常用命令選項 

v -t  vsftype :指定要掛載的設備上的文件系統類型

 -r: readonly ,只讀掛載  ;   -w: read and write,  讀寫掛載;  -n:  不更新/etc/mtab ,相當于#mount

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

v -L 'LABEL':  以卷標指定掛載設備 ;  v -U 'UUID':  UUID 指定要掛載的設備

v -B–bind:  綁定目錄到另一個目錄上,文件目錄掛載,與硬鏈接有區別,鏈接數不會增加。

v -o options ( 掛載文件系統的選項) ,多個選項使用逗號分隔

     async :異步模式      sync :同步模式, 內存更改時,同時寫磁盤

  同步模式把硬盤的文件先寫到內存中,預防突發情況效率較低,但是穩定

異步模式在系統不太忙的時候寫到磁盤中,默認為異步模式

atime/noatime :包含目錄和文件    diratime/nodiratime :目錄的訪問時間戳

auto/noauto :是否支持自動掛載, 是否支持-a 選項

exec/noexec :是否支持將文件系統上運行應用程序 ,避免外來設備掛載造成隱患

dev/nodev :是否支持在此文件系統上使用設備文件 ,掛載的分區中設備文件被禁用掛載

suid/nosuid :是否支持suid sgid 權限 ,不讓有suid執行文件普通用戶使用

查看內核追蹤到的已掛載的所有設備:cat /proc/mounts內存mount /etc/mtab同步

4.3 remount重新掛載 

    重新掛載 mount –o remount,acl /dev/xxx /mnt/xxx ,在修改了/etc/fstab文件下使用重新掛載

        ro :只讀         ;        rw: 讀寫

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

acl :啟用此文件系統上的acl 功能   userquota:使用者限額

v   Defaults默認):相當于rw, nosuid, dev, exec, auto, nouser, async

4.4 卸載命令umount

卸載:  # umount DEVICE        # umount MOUNT_POINT

    查看掛載情況:   #findmnt  MOUNT_POINT

  查看正在訪問指定文件系統的進程:  #lsof MOUNT_POINT   、  #fuser -v MOUNT_POINT

終止所有在正訪問指定的文件系統的進程  # fuser -km MOUNT_POINT  

mount fsck 和其它程序使用

v  系統重啟時保留文件系統體系 ;可以在設備欄使用文件系統卷標

v  使用mount -a  命令掛載/etc/fstab配置文件系統體系,只能是新添加的掛載,不是修改掛載

4.5 /etc/fstab文件掛載配置文件

   設定除根文件系統以外的其它文件系統能夠開機時自動掛載:/etc/fstab文件

mount查看被掛載的設備和文件目錄;df:查看文件系統的利用率,也能顯示掛載的文件

    proc/mount :查看掛載設備及其它的屬性(最全面  /etc/mtab查看掛載設備

/etc/fstab 每行定義一個要掛載的文件系統; 關于文件系統的靜態信息

?  1.要掛載的設備或偽文件系統   2.掛載點    3.文件系統類型

?  4. 掛載選項            5. 轉儲頻率       6.自檢次序

v  要掛載的設備或偽文件系統:

設備文件、LABEL(LABEL="") 、UUID(UUID="") 、偽文件系統名稱(proc,sysfs)

v  掛載選項: defaults

v  轉儲頻率: 0 :不做備份    ;  1 :每天轉儲    ;  2 :每隔一天轉儲

v  自檢次序: 0 :不自檢      ;  1 :首先自檢;一般只有rootfs 才用1

      當配置文件修改好之后,用mount -o remount /mnt/XXX,來讓掛載生效

   小問題:如果fstab中的uuid出錯了,系統就啟動不起來了,掛載文件會出現錯誤,根目錄/變成只讀的,必須要給予根目錄執行權限mount  -o  remount ,rw  /  才能vim /etc/fstab,把掛載錯誤修改過來。

   總結:分區 fdisk  ;創建文件系統mkfs (增加或刪除的時候要注意同步partx);掛載或重新掛載mount,掛載過后,要想開機重啟之后保留掛載的文件,就需要在/etc/fstab中把掛載的一項加進去(r ! blkid /dev/XXX 寫入UUID),在用mount -a,就相當于重啟了,以后都能生效。最后可以用df查看

4.6 mount作用

掛載移動介質:

v  掛載意味著使外來的文件系統看起來如同是主目錄樹的一部分

v  訪問前、介質必須被掛載  ;  摘除時,介質必須被卸載

v  按照默認設置,非根用戶只能掛載某些設備(光盤、DVD 、軟盤、USB 等等)

v  掛載點通常在/media  /mnt

被內核探測為SCSI 設備 :/dev/sdaX 、/dev/sdbX 、或類似的設備文件

v 在圖形環境中自動掛載:圖標在[ 計算機] 窗口中創建 ;掛載在/run/media/<user>/<label>

手動掛載: mount /dev/sdb1 /mnt

4.6.1掛載設備 

        mount  /dev/sda  /mnt/sda

4.6.2 掛載文件 

        mount  -o loop file  /mnt/file

回環設備:一般為使用鏡像文件(鏡像文件中也有文件系統)虛擬塊設備存在于實際的另一個文件系統中

              #mount -o loop /PATH/TO/SOME_LOOP_FILE MOUNT_POINT

    可以做分區實驗,可以掛載使用,但是文件掛載必須要 mount -o -loop /partfile /mnt/partfile

           也可以用losetup  /dev/loop6  /partfile 創建一個對應文件與設備的映射關系。

mknod /dev/sda b 7 8,創建/dev/loop7 /dev/loop8

此時在 /mnt/partfile 下寫的文件就能在/partfile中存儲,/partfile可以作為一個打包文件,備份使用,取消掛載之后,數據就能在/partfile中存儲。

4.6.3 掛載目錄 

        mount  -B –bind dir1 dir2 (被掛載的目錄中的原來文件被自動隱藏)

4.6.4 掛載網絡 

         mount  networkshare  /mnt/sda

4.6.5 掛載ISO文件

      cp /dev/cdrom /root/centos7.iso   mount -o loop /testdir/centos7.iso  /mnt/iso  掛載iso文件

             mkisofs -r -o /root/etc.iso /etc  將目錄打包成iso文件

4.6.6刻錄光盤

       wodim v eject centos.iso

 

五、swap處理交換文件和分區

交換分區是系統RAM 的補充,模擬內存分區(blkidlsblk、cat/proc/swapfree查看swap內存和使用)

v  基本設置包括:

1.創建交換分區或者文件       2.使用mkswap 寫入特殊簽名

3. /etc/fstab 文件中添加適當的條目    4.使用swapon a激活交換空間

掛載交換分區:vim /etc/fstab

 啟用:swapon    swapon [OPTION]… [DEVICE]

-a :激活所有的交換分區    -p PRIORITY :指定優先級

/etc/fstab:pri=value

v  禁用:swapoff [OPTION]… [DEVICE]

5.1 swap分區創建與刪除

1、fdisk /dev/sdd

      1:創建分區1   t:改變ID號為82   82 :默認swapID號是82

注意:新硬盤不需要同步,已經用過的硬盤需要同步partprobe     partx -a /dev/sdd

2mkswap /dev/sdd1  創建/dev/sdd1的文件系統為swap

     可以用blkid查看swap文件系統是否創建。

3vim /etc/fstab    uuid=xxxx swap swap default,pri=100  0  0  優先級為100

4、swapon -a 讀取優先級文件 /etc/fstab

     swapon -s = cat/proc/swaps 查看已經啟用的swap

刪除swap分區:必須先1.swapoff /dev/XXX ,在刪除2.vim  /etc/fstab 、再 3.fdisk /dev/XXX  d刪除 ;w保存

5.2 文件模擬創建swap分區

    如果僅有一個硬盤且分區用光,可以用文件模擬swap

       1.dd  if=/dev/zero  of=/swapfile bs=1M count=1024

2.然后mkswap /swapfile 格式化,不用考慮同步  ;再blkid /swapfile 可以查看swap文件系統

      3.編輯 vim /etc/fstab   /swapfile  swap  swap  defaults  0   0

      4.swapon -a  ;  free(查看swap分區的使用情況)  ;  swap -s (查看已經啟用的swap

刪除swap分區:swapoff  /swapfile  vim /etc/fstab  刪除swapfile行 ,最后rm -rf /swapfile

六、磁盤管理常用工具

6.1 free內存空間使用狀態

    free [OPTION]    free -m

-m:  MB 為單位    ; -g:  GB 為單位

6.2 df文件系統空間占用等信息的查看工具

      df [OPTION]… [FILE]…   df -Th  df -i

-H  1000 為單位    ;-T  文件系統類型    ;-h: human-readable 可讀的     

-i inodes instead of blocks (節點而不是塊) ;  -P:  Posix 兼容的格式輸出

6.3 du查看某目錄總體空間占用狀態

     du [OPTION]… DIR

-h: human-readable可讀的    ; -s: summary統計   du -sh

6.4 dd 轉換和復制文件

    ddconvert and copy a file用法:

dd if=/PATH/FROM/SRC of=/PATH/TO/DEST

bs=# block size,  復制單元大小  ;  count=# :復制多少個bs

of=file 寫到所命名的文件而不是到標準輸出  ;  if=file 從所命名文件讀取而不是從標準輸入

bs=size 指定塊大小(既是是ibs 也是obs)    ;  ibs=size 一次讀size byte

obs=size 一次寫size byte                cbs=size 一次轉化size byte

skip=blocks 從開頭忽略blocks ibs 大小的塊 ;eek=blocks 從開頭忽略blocks obs 大小的塊

count=n 只拷貝n個記錄    conv=conversion[,conversion…]  用指定的參數轉換文件

v  轉換參數:

v ascii 換 轉換 EBCDIC 為 為 ASCII  ebcdic 換 轉換 ASCII 為 為 EBCDIC

v block  轉換一行數據為長度為 cbs  的記錄,不足部分用空格填充。

v unblock 替代cbs 長度的每一行尾的空格為新行

v lcase  把大寫字符轉換為小寫字符  ;ucase  把小寫字符轉換為大寫字符

v nocreat  不創建輸出文件; noerror  出錯時不停止 ; notrunc 不截短輸出文件

v sync  把每個輸入塊填充到ibs 個字節,不足部分用空(NUL)

6.4.1 備份和破壞MBR分區信息

    備份MBR分區信息

dd  if=/dev/sda  of=/tmp/mbr.bak  bs=512  count=1

v  破壞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

 

6.4.2備份和恢復

備份:

  dd if=/dev/sdx of=/dev/sdy    :將本地的/dev/sdx 整盤備份到/dev/sdy

dd if=/dev/sdx of=/path/to/image :將/dev/sdx 全盤數據備份到指定路徑的image 文件

dd if=/dev/sdx | gzip >/path/to/image.gz:備份/dev/sdx 全盤數據,并利用gzip 工具進行壓縮,保存到指定路徑

恢復:

  dd if=/path/to/image of=/dev/sdx  :  將備份文件恢復到指定盤

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

6.4.3 拷貝與銷毀數據

拷貝內存資料到硬盤:dd if=/dev/mem of=/root/mem.bin bs=1024

                       將內存里的數據拷貝到root 目錄下的mem.bin 文件

從光盤拷貝iso 鏡像:dd if=/dev/cdrom of=/root/cd.iso

                        拷貝光盤數據到root 文件夾下,并保存為cd.iso 文件

銷毀磁盤數據:dd if=/dev/urandom of=/dev/sda1

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

6.4.4 硬盤測試

6.4.4.1得到最恰當的block size

dd if=/dev/zero bs=1024 count=1000000  of=/root/1Gb.file

dd if=/dev/zero bs=2048 count=500000  of=/root/1Gb.file

dd if=/dev/zero bs=4096 count=250000  of=/root/1Gb.file

通過比較dd 指令輸出中所顯示的命令執行時間,即可確定系統最佳的block size 大小

6.4.4.2 測試硬盤讀寫速度

dd if=/dev/zero  of=/root/1Gb.file  bs=1024  count=1000000

dd if=/root/1Gb.file  bs=64k  |  dd of=/dev/null

通過上兩個命令輸出的執行時間,可以計算出測試硬盤的寫//速度

6.4.5修復硬盤

dd if=/dev/sda of=/dev/sda

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

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

(0)
lyxlyx
上一篇 2016-11-27
下一篇 2016-11-27

相關推薦

  • Python內置數據結構——集合set

    集合 定義 set翻譯為集合 collection翻譯為集合類型,是一個較大的概念 set是一個可變的、無序的、不重復的元素組成的集合 set的元素要求必須可以hash,目前已學的不可hash的類型只有list、set 元素不可以索引 set可以迭代 set的初始化 set_1 =set() #表示定義一個空集合set_1 set_1 =set(iterab…

    Linux干貨 2017-10-03
  • N25_第一周作業_leon

    第一周博客作業 1.       描述計算機的組成及其功能 計算機主要有五大部分組成:控制器;運算器;存儲器;輸入設備;輸出設備。   功能: 控制器:計算機的指揮系統。控制器通過地址訪問存儲器,從存儲器中取出指令,經譯碼器分析后,根據指令分析結果產生相應的操作控制信號作用于其他部件,使得…

    Linux干貨 2016-12-01
  • 如何練好yum的一招一式

      工作時間越久,就越有這樣一個深刻體會,一個新知識或者新的技能一個人學習起來并不會覺得吃力,反而要想把你學習的新知識或者新技能給講清楚讓普通人聽得懂才是最難的,之前我寫過一篇博客講述linux下的RPM包管理器,今天寫的練好yum的一招一式,同樣都是都是在linux系統的軟件包的安裝、卸載、升級等功能的,為什么我們還需要yum那,記得一位大哲學家…

    Linux干貨 2015-11-10
  • 基本網絡設置

    我們在上網的時候會遇到各種各樣的問題,比如有時候網絡不通,沒有ip地址,或者ip地址有沖突等等,這就需要我們懂得一些網絡的配置,方便以后使用?;揪W絡配置:主機名,ip地址,網關,DNS服務器。1、 主機名的配置第一種方法:在配置文件修改Centos7版本:vim /etc/hostname 改過配置文件后需要使其生效,命令為hostname centos7…

    2017-09-09
  • 文本編輯工具vim

                             vim +#: 打開文件直接處在#行 +/PATTERN:打開文件直接處在第一次匹配到行 vim + file :打開文件直接處在最后行 vim –b file :以二進制打開文件…

    Linux干貨 2016-08-12
  • 馬哥教育網絡班22期+第8周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋:是連接兩個局域網的基于MAC地址數據存儲轉發設備,工作于數據鏈路層 集線器:所有端口處于同一個廣播域和沖突域中,帶寬共享,工作于物理層 二層交換機:多端口網橋,一個端口一個沖突域,默認所有端口位于同一個廣播域中,可以劃分vlan,隔離廣播域,帶寬獨享 三層交換機:具有路由功…

    Linux干貨 2016-10-17
欧美性久久久久