• <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>
            酸菜豬蹄的程序人生
            木下編程屯屯燙燙

            先簡(jiǎn)要介紹dd的參數(shù),后邊通過(guò)幾個(gè)實(shí)例介紹dd的應(yīng)用,參考了其他網(wǎng)友的資料,在此一并感謝

            小菜水平有限文中有什么錯(cuò)誤請(qǐng)大家指正,關(guān)于dd還有什么好的使用方法,可以貼出來(lái),小菜會(huì)及時(shí)更新

            dd 是 Linux/UNIX 下的一個(gè)非常有用的命令,作用是用指定大小的塊拷貝一個(gè)文件,并在拷貝的同時(shí)進(jìn)行指定的轉(zhuǎn)換。

            1. 命令簡(jiǎn)介

            dd 的主要選項(xiàng):

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

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

            if=file

            輸入文件名,缺省為標(biāo)準(zhǔn)輸入。

            of=file

            輸出文件名,缺省為標(biāo)準(zhǔn)輸出。

            ibs=bytes

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

            obs=bytes

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

            bs=bytes

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

            cbs=bytes

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

            skip=blocks

            從輸入文件開(kāi)頭跳過(guò) blocks 個(gè)塊后再開(kāi)始復(fù)制。

            seek=blocks

            從輸出文件開(kāi)頭跳過(guò) blocks 個(gè)塊后再開(kāi)始復(fù)制。(通常只有當(dāng)輸出文件是磁盤或磁帶時(shí)才有效)。

            count=blocks

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

            conv=conversion[,conversion...]

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

            轉(zhuǎn)換參數(shù):

            ascii 轉(zhuǎn)換 EBCDIC 為 ASCII。

            ebcdic 轉(zhuǎn)換 ASCII 為 EBCDIC。

            ibm 轉(zhuǎn)換 ASCII 為 alternate EBCDIC.

            block 把每一行轉(zhuǎn)換為長(zhǎng)度為 cbs 的記錄,不足部分用空格填充。

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

            lcase 把大寫字符轉(zhuǎn)換為小寫字符。

            ucase 把小寫字符轉(zhuǎn)換為大寫字符。

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

            noerror 出錯(cuò)時(shí)不停止。

            notrunc 不截短輸出文件。

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

            2.實(shí)例分析

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

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

                    備份:

                    

                    dd if=/dev/hdx of=/dev/hdy

                    將本地的/dev/hdx整盤備份到/dev/hdy        

                    

                    dd if=/dev/hdx of=/path/to/image

                    將/dev/hdx全盤數(shù)據(jù)備份到指定路徑的image文件

                   

                    dd if=/dev/hdx | gzip >/path/to/image.gz

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

                    恢復(fù):

                    

                    dd if=/path/to/image of=/dev/hdx

                    將備份文件恢復(fù)到指定盤

                   

                    gzip -dc /path/to/image.gz | dd of=/dev/hdx

                    將壓縮的備份文件恢復(fù)到指定盤

                    2.1.2.利用netcat遠(yuǎn)程備份

                   

                    dd if=/dev/hda bs=16065b | netcat < targethost-IP > 1234

                    在源主機(jī)上執(zhí)行此命令備份/dev/hda

                   

                    netcat -l -p 1234 | dd of=/dev/hdc bs=16065b

                    在目的主機(jī)上執(zhí)行此命令來(lái)接收數(shù)據(jù)并寫入/dev/hdc

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

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


                    以上兩條指令是目的主機(jī)指令的變化分別采用bzip2  gzip對(duì)數(shù)據(jù)進(jìn)行壓縮,并將備份文件保存在當(dāng)前目錄。

                    2.1.3.備份MBR

                    備份:

                    

                    dd if=/dev/hdx of=/path/to/image count=1 bs=512

                    備份磁盤開(kāi)始的512Byte大小的MBR信息到指定文件

                    恢復(fù):

                    

                    dd if=/path/to/image of=/dev/hdx

                    將備份的MBR信息寫到磁盤開(kāi)始部分

                    2.1.4.備份軟盤

                    

                    dd if=/dev/fd0 of=disk.img count=1 bs=1440k

                    將軟驅(qū)數(shù)據(jù)備份到當(dāng)前目錄的disk.img文件

                    2.1.5.拷貝內(nèi)存資料到硬盤

                    

                    dd if=/dev/mem of=/root/mem.bin bs=1024

                    將內(nèi)存里的數(shù)據(jù)拷貝到root目錄下的mem.bin文件

                    2.1.6.從光盤拷貝iso鏡像

                           

                    dd if=/dev/cdrom of=/root/cd.iso

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

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

                            

                    dd if=/dev/zero of=/swapfile bs=1024 count=262144

                

             [code] [/code]

                    創(chuàng)建一個(gè)足夠大的文件(此處為256M)

                   
                  mkswap /swapfile 

                    把這個(gè)文件變成swap文件

                   
                    swapon /swapfile       

                    啟用這個(gè)swap文件

                   
                    /swapfile swap swap defaults 0 0

                    在每次開(kāi)機(jī)的時(shí)候自動(dòng)加載swap文件, 需要在 /etc/fstab 文件中增加一行

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

                   
                   dd if=/dev/urandom of=/dev/hda1

                

                    利用隨機(jī)的數(shù)據(jù)填充硬盤,在某些必要的場(chǎng)合可以用來(lái)銷毀數(shù)據(jù)。執(zhí)行此操作以后,/dev/hda1將無(wú)法掛載,創(chuàng)建和拷貝操作無(wú)法執(zhí)行。

                2.4磁盤管理

                    2.4.1.得到最恰當(dāng)?shù)腷lock 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

                    通過(guò)比較dd指令輸出中所顯示的命令執(zhí)行時(shí)間,即可確定系統(tǒng)最佳的block size大小

                    2.4.2測(cè)試硬盤讀寫速度

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

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

                    通過(guò)上兩個(gè)命令輸出的執(zhí)行時(shí)間,可以計(jì)算出測(cè)試硬盤的讀/寫速度    

                    2.4.3.修復(fù)硬盤

                     

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


                    當(dāng)硬盤較長(zhǎng)時(shí)間(比如1,2年)放置不使用后,磁盤上會(huì)產(chǎn)生magnetic flux point。當(dāng)磁頭讀到這些區(qū)域時(shí)會(huì)遇到困難,并可能導(dǎo)致I/O錯(cuò)誤。當(dāng)這種情況影響到硬盤的第一個(gè)扇區(qū)時(shí),可能導(dǎo)致硬盤報(bào)廢。上邊的命令有可能使這些數(shù) 據(jù)起死回生。且這個(gè)過(guò)程是安全,高效的。


            (原文:http://linux.chinaunix.net/bbs/viewthread.php?tid=1025448&extra=page%3D1)


            posted on 2008-08-22 09:47 cooelaf 閱讀(456) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Linux
             
            久久人人爽人爽人人爽av| 亚洲国产精品无码成人片久久| 久久久久久国产精品美女| 久久久精品人妻无码专区不卡 | 国产高潮国产高潮久久久91 | 狠狠色婷婷久久综合频道日韩 | 国产精品久久永久免费| 亚洲AV无码成人网站久久精品大| 一本大道久久东京热无码AV| 久久精品亚洲男人的天堂| 狠狠人妻久久久久久综合蜜桃| 91久久九九无码成人网站| 久久青草国产精品一区| 97精品国产97久久久久久免费| 久久精品国产亚洲欧美| 99久久99久久精品国产片| 精品久久久久久久中文字幕| 久久久无码精品午夜| 亚州日韩精品专区久久久| 国产精品亚洲综合久久| 日韩精品久久无码中文字幕| 久久精品蜜芽亚洲国产AV| 久久九九亚洲精品| 国内精品久久久久久久涩爱| 国产精品99久久久久久宅男小说| 国产精品亚洲综合久久| 久久精品国产亚洲AV麻豆网站| 久久久久久a亚洲欧洲aⅴ| 久久久久亚洲av毛片大| 狠狠精品久久久无码中文字幕| 午夜人妻久久久久久久久| 精品精品国产自在久久高清| 久久99精品久久久久久野外| 久久精品日日躁夜夜躁欧美| 久久久国产精品网站| 亚洲美日韩Av中文字幕无码久久久妻妇 | 日韩乱码人妻无码中文字幕久久| 久久精品国产91久久综合麻豆自制| 国产巨作麻豆欧美亚洲综合久久| 久久亚洲中文字幕精品一区| 久久精品嫩草影院|