• 線上工具
  • - 計算器
    • 字元計數
  • - 下載
    • TikTok 下載
    • 抖音下載
  • - 網路工具
    • BASE64
    • Base64 轉圖片
    • 圖片轉 Base64
    • URL 編碼
    • JavaScript
    • 時間戳
    • Unicode 轉換器
    • JSON 格式化
    • 修改副檔名
    • 製作列表
    • CSS 優化器
  • - 加密工具
    • MD5 加密
    • 隨機生成器
  • - 圖像工具
    • 圖像壓縮
    • QR 碼生成器
    • QR 碼識別器
    • 壁紙預覽
  • - 資訊表
    • 血型遺傳
    • 服裝尺寸
  • [email protected]
DopuBox
  • English
  • Español
  • Français
  • 日本語
  • 한국어
  • 简体中文
  • 繁體中文
全部 ニュース Meta Code 文化・アート
Linux ddコマンドの詳細:データバックアップ、バックアップ中のフォーマット変換の例
2022-01-03

ddコマンドは主にデータバックアップに用いられ、バックアップ中にフォーマット変換を行うことができる。実はddコマンドは、ソースデータをターゲットデータにコピーすることができ、ソースデータがファイル、パーティション、ディスク、光ディスクであっても、データバックアップを行うことができます。

ddコマンドの基本フォーマットは以下の通りです。

[root@localhost ~]# dd if="输入文件" of="输出文件" bs="数据块" count="数量"
パラメータ:
  • if:入力データを定義するファイルは、入力デバイスであってもよい。
  • of:出力データを定義するファイルは、出力装置であってもよい。
  • bs:データブロックのサイズを指定します。つまり、一度に読み込まれるバイト数または書き込むバイト数を定義します。モードデータブロックサイズは512バイトである。
  • count:bsの数を指定します。
  • ascii:EBCDICコードからASCIIコードに変換する;
  • ebcdic:ASCIIコードからEBCDICコードに変換する;
  • ibm:ASCIIコードから代替のEBCDICコードに変換する;
  • block:終了文字ブロックの改行を等長のスペースに置き換えます。
  • unblock:cbsサイズのブロックの末尾のスペースを改行文字に置き換えます。
  • lcase:大文字を小文字に変換します。
  • notrunc:出力ファイルを切断しない;
  • ucase:小文字を大文字に変換します。
  • swab:各ペアの入力データバイトを交換する;
  • noerror:読み出しデータにエラーが発生しても続行します。
  • sync:各入力データブロックをibsのサイズにNUL文字で埋め込む。blockまたはunblockを合わせると、NUL文字の代わりにスペースで埋められます。
  • 【例1】バックアップファイル
    [root@localhost ~]# dd if=/etc/httpd/conf/httpd.conf of=/tmp/httpd.bak
    记录了67+1 的读入
    #数据占了写满的67个数据块,以及1个没有写满的数据块
    记录了67+1 的写出
    #默认数据块大小是512字节
    34439字节(34 kB)已复制,0.0524897 秒,656 kB/秒
    #如果要备份文件,那么dd命令和cp命令非常类似
    [root@localhost ~]# ll -h /tmp/httpd.bak
    -rw-r--r--.1 root root 34K 6月 5 18:04 /tmp/httpd.bak
    #查看一下生成的备份文件的大小
    【例2】バックアップパーティションが1つのバックアップファイルである
    [root@localhost ~]# df -h
    文件系统 容量 已用 可用 已用%% 挂载点
    /dev/sda3 20G 2.0G 17G 11% /
    tmpfs 306M 0 306M 0% /dev/shm
    /dev/sda1 194M 27M 157M 15% /boot
    /dev/sr0 3.5G 3.5G 0 100% /mnt/cdrom
    #查看一下分区容量,我们备份/boot分区
    [root@localhost ~]# dd if=/dev/sda1 of=/tmp/boot.bak
    #备份完成
    [root@localhost ~]# ll -h /tmp/boot.bak
    -rw-r--r--.1 root root 200M 6月 5 18:14 /tmp/boot.bak
    #查看生成的备份文件
    #如果需要恢复,则执行以下命令
    [root@localhost ~]# dd if=/tmp/boot.bak of=/dev/sda1

    パーティションを直接別のパーティションにバックアップするには、ソースパーティションよりも小さいサイズではなく、ソースパーティションよりも大きいサイズまたは大きいサイズの新しいパーティションを生成する必要があります。コマンドは次のとおりです。

    [root@localhost ~]# dd if=/dev/sda1 of=/dev/sdb1
    #如果需要恢复,则只需把输入项和输出项反过来即可,命令如下
    [root@localhost ~]# dd if=/dev/sdb1 of=/dev/sda1
    【例3】ディスク全体のバックアップ
    [root@localhost ~]# dd if=/dev/sda of=/dev/sdb
    #把磁盘a备份到磁盘b
    [root@localhost ~]# dd if=/dev/sda of=/tmp/disk.bak
    #把磁盘a备份成文件disk.bak
    #备份恢复
    #如果要备份到另一块硬盘上,那么,当源硬盘数据损坏时,只需用备份硬盘替换源硬盘即可
    #如果要备份成文件,那么在恢复时需要把备份数据复制到其他Linux中,然后把新硬盘安装到这台Linux
    #服务器上,再把磁盘备份数据复制到新硬盘中。命令如下
    [root@localhost ~]# dd if=/tmp/disk.bak of=/dev/sdb
    【例4】フロッピーディスクのコピー
    [root@localhost ~]# dd if=/dev/fd0 of=/tmp/fd.bak
    #在Linux中软盘的设备文件名是/dev/fd0
    #这条命令先把软盘中的数据保存为临时数据文件
    [root@localhost ~]# dd if=/tmp/fd.bak of=/dev/fd0
    #然后更换新的软盘,把数据备份复制到新软盘中,就实现了软盘的复制

    バックアップが必要なディスクがあれば、Linuxではddコマンドを使用してディスクのISOミラーを作成します。コマンドは次のとおりです。

    #制作光盘ISO镜像
    [root@localhost ~]# dd if=/dev/cdrom of-/tmp/cd.iso #把光盘中所有的数据制作成ISO镜像
    [root@localhost ~J # mkdir /mnt/cd
    #建立一个新的挂载点
    [root@localhost ~]# mount -o loop /tmp/cd.iso /mnt/cd #挂栽ISO文件到挂载点
    [root@localhost ~]# cd /mnt/cd
    #进入挂栽点
    [root@localhost cd]# ls
    CentOS_BuildTag images RELEASE-NOTES-en-tJS.html RPM-GPG-KEY-CentOS-Debug-6 TRANS.TBL
    EULA    isolinux repodata   RPM-GPG-KEY-CentOS-Security-6
    GPL Packages RPM-GPG-KEY-CentOS-6 RPM-GPG-KEY-CentOS-Testing-6
    #数据是光盘当中的数据,这个ISO镜像是可以被当作真正的光盘使用的

    swapパーティションを追加する場合、指定したサイズのファイルを作成する必要がある場合があります。たとえば、ddコマンドも使用します。コマンドは次のとおりです。

    [root@localhost ~]# dd if=/dev/zero of=/tmp/testfile bs=1M count=10
    #数据输入项是/dev/zero会向目标文件中不停地写入二进制的0
    #指定数据块大小是1MB
    #指定生成10个数据块。也就是定义输出的文件大小为10MB
    记录了10+0 的读入
    #显示数据占满了10个数据块
    记录了10+0 的写出
    #不过这里数据块的大小已经是1MB了
    10485760字节(10 MB)已复制,0.00709902 秒,1.5 GB/秒
    [root@localhost ~]# ll -h /tmp/testfile
    -rw-r--r--.1 root root 10M 6月 5 18:46 /tmp/testfile
    #生成的testfile文件的大小刚好是10MB

    ddコマンドはディスク全体のコピーを行う場合、GHOSTツールの機能に似ていますが、ddコマンドでコピーしたハードディスクデータはGHOSTでコピーしたハードディスクデータよりずっと安定しています。ddコマンドは強力ですが、コピー時間が長く、100 GBのデータをコピーするのに15~25分かかる(サーバの性能によって異なる)という明らかな欠点もあります。

    データバックアップを実現するには、tarコマンドやcpioコマンドなど、多くの方法とツールがあります。rsyncやscpなどのネットワークレプリケーションツールについては、より完璧なネットワーク知識が必要で、ここでは紹介しません。

    ここでLinux ddコマンドについて詳しく説明します:データバックアップ、バックアップ中にフォーマット変換を行うケースについての記事を紹介します。Linux ddコマンドの内容については、以前の記事を検索するか、次の関連記事を引き続き参照してください。これからもよろしくお願いします。


    ソース元URL:https://dopubox.com/article/p/ec6b14b33bd382cd

    其他工具
  • 字元計數 TikTok 下載 抖音下載 BASE64 Base64 轉圖片 圖片轉 Base64 URL 編碼 JavaScript 時間戳 Unicode 轉換器 JSON 格式化 修改副檔名 製作列表 CSS 優化器 MD5 加密 隨機生成器 圖像壓縮 QR 碼生成器 QR 碼識別器 壁紙預覽 血型遺傳 服裝尺寸
  • 授業中の生徒や住民が弾道ミサイル飛来を想定した避難訓練 福島・須賀川桐陽高
    2024-05-31

    藤井聡太八冠が勝ち、最終局へ 将棋叡王戦で2勝2敗
    2024-05-31

    『マッドマックス:フュリオサ』に登場する「ある絵画」は何を意味しているのか? ギリシア神話と「ファム・ファタル」から考察する
    2024-06-01

    入試問題は白黒です 「わかりやすさ」「カラフル」は逆効果、自分で図を書くべし 桜井信一の攻める中学受験
    2024-05-31

    あらゆる知識に精通した「天才」が教えてくれた、頭を良くするための新書の読み方と「究極のインプット・アウトプット」の方法
    2024-06-02

    元アシスタントが語る Dr.スランプ「あのキャラ」の誕生秘話
    2024-06-01

    大阪はアートとデザインの街となるか? Osaka Art & Design 2024の見どころをレポート
    2024-06-03

    声優の増山江威子さん死去
    2024-06-03

    応挙手本?に描いたトラ甦れ…徳島の寺のふすま絵修復へ
    2024-06-04

    千年後の未来へ 太宰府天満宮のふすま絵完成 日本画家神戸智行さん移住し10年かけ完成
    2024-06-04

    美術評論家連盟が「ガザ戦争に対する意⾒表明」を公開
    2024-06-04

    GROUP「島をつくる | Planning Another Island」(マイナビアートスクエア)開幕レポート。高層ビルのなかで建築をコンポストする
    2024-06-05

    今週末に見たい展覧会ベスト13。「令和6年 新指定国宝・重要文化財」展から国立西洋美術館の現代美術展、KYOTOGRAPHIEまで
    2024-06-04

    性被害者支援の法人設立 スマイル社
    2024-06-04

    「再会長江」北京で特別上映 竹内監督のトークイベントも
    2024-06-04

    ビル・エヴァンスの名言「才能なんて取るに足りない」【本と名言365】
    2024-06-05

    フィギュアスケートにもぴったり! ハチャトゥリアン作曲の『仮面舞踏会』【クラシック今日は何の日?】
    2024-06-06

    長山智美 デザイン狩人|HAY DOGS♡
    2024-06-06

    「江戸期より後の遺構」 世界遺産目指す佐渡の金山、一部除外勧告
    2024-06-06

    ブリン・バン・バン・ボンが1位 ビルボード、上半期人気曲
    2024-06-06

    ©  Dopu Box
    💛