• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            旅途

            如果想飛得高,就該把地平線忘掉

            linux下dd命令詳解

            先簡要介紹下dd的參數(shù),后邊通過幾個實例介紹dd的應用,參考了其他網(wǎng)友的資料,在此一

            并感謝,水平有限文中有什么錯誤請大家指正。

            dd 是 Linux/UNIX 下的一個非常有用的命令,作用是用指定大小的塊拷貝一個文件,并在拷貝

            的同時進行指定的轉換。

            1. 命令簡介

            dd 的主要選項:

            指定數(shù)字的地方若以下列字符結尾乘以相應的數(shù)字:

            b=512, c=1, k=1024, w=2, xm=number m

            if=file

            輸入文件名,缺省為標準輸入。

            of=file

            輸出文件名,缺省為標準輸出。

            ibs=bytes

            一次讀入 bytes 個字節(jié)(即一個塊大小為 bytes 個字節(jié))。

            obs=bytes

            一次寫 bytes 個字節(jié)(即一個塊大小為 bytes 個字節(jié))。

            bs=bytes

            同時設置讀寫塊的大小為 bytes ,可代替 ibs 和 obs 。

            cbs=bytes

            一次轉換 bytes 個字節(jié),即轉換緩沖區(qū)大小。

            skip=blocks

            從輸入文件開頭跳過 blocks 個塊后再開始復制。

            seek=blocks

            從輸出文件開頭跳過 blocks 個塊后再開始復制。(通常只有當輸出文件是磁盤或磁帶時才有效)。

            count=blocks

            僅拷貝 blocks 個塊,塊大小等于 ibs 指定的字節(jié)數(shù)。

            conv=conversion[,conversion...]

            用指定的參數(shù)轉換文件。

            轉換參數(shù):

            ascii 轉換 EBCDIC 為 ASCII。

            ebcdic 轉換 ASCII 為 EBCDIC。

            ibm 轉換 ASCII 為 alternate EBCDIC.

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

            unblock 使每一行的長度都為 cbs ,不足部分用空格填充。

            lcase 把大寫字符轉換為小寫字符。

            ucase 把小寫字符轉換為大寫字符。

            swab 交換輸入的每對字節(jié)。

            noerror 出錯時不停止。

            notrunc 不截短輸出文件。

            sync 把每個輸入塊填充到ibs個字節(jié),不足部分用空(NUL)字符補齊。

            2.實例分析

            2.1.數(shù)據(jù)備份與恢復

            2.1.1整盤數(shù)據(jù)備份與恢復

            備份

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

            將/dev/hdx全盤數(shù)據(jù)備份到指定路徑的image文件:dd if=/dev/hdx of=/path/to/image

            備份/dev/hdx全盤數(shù)據(jù),并利用gzip工具進行壓縮,保存到指定路徑:dd if=/dev/hdx | gzip

            >/path/to/image.gz

            恢復

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

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

            2.1.2.利用netcat遠程備份

            在源主機上執(zhí)行此命令備份/dev/hda:dd if=/dev/hda bs=16065b | netcat < targethost-IP >

            1234

            在目的主機上執(zhí)行此命令來接收數(shù)據(jù)并寫入/dev/hdc:netcat -l -p 1234 | dd of=/dev/hdc

            bs=16065b

            以下兩條指令是目的主機指令的變化分別采用bzip2 gzip對數(shù)據(jù)進行壓縮,并將備份文件保存在當

            前目錄 :

            netcat -l -p 1234 | bzip2 > partition.img

            netcat -l -p 1234 | gzip > partition.img

            2.1.3.備份MBR

            備份:

            備份磁盤開始的512Byte大小的MBR信息到指定文件:dd if=/dev/hdx of=/path/to/image

            count=1 bs=512

            恢復:

            將備份的MBR信息寫到磁盤開始部分:dd if=/path/to/image of=/dev/hdx

            2.1.4.備份軟盤

            將軟驅數(shù)據(jù)備份到當前目錄的disk.img文件:dd if=/dev/fd0 of=disk.img count=1 bs=1440k

            2.1.5.拷貝內存資料到硬盤

            將內存里的數(shù)據(jù)拷貝到root目錄下的mem.bin文件:dd if=/dev/mem of=/root/mem.bin

            bs=1024

            2.1.6.從光盤拷貝iso鏡像

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

            2.2.增加Swap分區(qū)文件大小

            創(chuàng)建一個足夠大的文件(此處為256M):dd if=/dev/zero of=/swapfile bs=1024 count=262144

            把這個文件變成swap文件:mkswap /swapfile

            啟用這個swap文件:swapon /swapfile

            在每次開機的時候自動加載swap文件, 需要在 /etc/fstab 文件中增加一行:/swapfile swap

            swap defaults 0 0

            2.3.銷毀磁盤數(shù)據(jù)

            利用隨機的數(shù)據(jù)填充硬盤:dd if=/dev/urandom of=/dev/hda1

            在某些必要的場合可以用來銷毀數(shù)據(jù)。執(zhí)行此操作以后,/dev/hda1將無法掛載,創(chuàng)建和拷貝操作

            無法執(zhí)行。

            2.4磁盤管理

            2.4.1.得到最恰當?shù)腷lock size

            通過比較dd指令輸出中所顯示的命令執(zhí)行時間,即可確定系統(tǒng)最佳的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 if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

            2.4.2測試硬盤讀寫速度

            通過兩個命令輸出的執(zhí)行時間,可以計算出測試硬盤的讀/寫速度:

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

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

            2.4.3.修復硬盤

            當硬盤較長時間(比如一兩年年)放置不使用后,磁盤上會產生magnetic flux point。當磁頭讀到

            這些區(qū)域時會遇到困難,并可能導致I/O錯誤。當這種情況影響到硬盤的第一個扇區(qū)時,可能導致

            硬盤報廢。下面的命令有可能使這些數(shù)據(jù)起死回生。且這個過程是安全,高效的。

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

            posted on 2009-10-07 00:32 旅途 閱讀(465) 評論(0)  編輯 收藏 引用 所屬分類: LINUX基礎、管理

            精品国产青草久久久久福利| 久久99精品久久久久婷婷| 久久久精品久久久久特色影视| 精品久久综合1区2区3区激情| 久久人与动人物a级毛片| 无遮挡粉嫩小泬久久久久久久 | 偷偷做久久久久网站| 午夜天堂精品久久久久| 久久91这里精品国产2020| 久久久久久国产精品无码下载| 久久精品国产久精国产| 久久精品一区二区三区AV| 热久久国产精品| 久久午夜夜伦鲁鲁片免费无码影视| 一本色道久久88加勒比—综合| 大香伊人久久精品一区二区| 精品熟女少妇aⅴ免费久久| 久久99精品国产自在现线小黄鸭| 久久综合日本熟妇| 久久99精品久久久久久野外| 国产亚洲欧美精品久久久| 日韩精品久久久久久久电影蜜臀| 日本高清无卡码一区二区久久| 久久91精品国产91久久麻豆| 色88久久久久高潮综合影院 | 精品免费久久久久国产一区| 久久99国产乱子伦精品免费| 久久久久久久久久久久久久| 久久久久久久综合日本| 国产三级观看久久| 久久国产成人精品国产成人亚洲| 国产精品gz久久久| 久久av免费天堂小草播放| 99久久国产综合精品网成人影院 | 久久大香香蕉国产| 久久婷婷国产综合精品| 久久久久久午夜成人影院| 中文字幕无码精品亚洲资源网久久| 久久精品视频91| 一本一道久久a久久精品综合| 亚洲精品国产综合久久一线|