دليل كامل ومفصل (مع أمثلة) إلى DD

أترك لك مجرد مقالة رائعة لقد وجدت نفسي من خلال تصفح الإنترنت ، فإنه يوضح لنا بأمثلة متعددة وبالتفصيل ما هو عليه وما يمكن تحقيقه باستخدام الأمر DD.

أترك لك الترجمة الكاملة لـ نوبة:

1. لماذا دد؟:

اخترنا dd كأول منافس في سلسلتنا لأنها أداة مفيدة لها العديد من الخيارات كما سترى. هذا يجعله تقريبًا أحد سكاكين الجيش السويسري في عالم Linux. نعم ، هذا المصطلح (سكين الجيش السويسري) يستخدم أكثر مما ينبغي من قبل كتّاب المقالات الموجودين في لينكس ، لذلك لا يمكننا تفويت فرصة استخدامه بأنفسنا

2. الاستخدام العام:

قبل أن نبدأ ، أردنا أن نعطيك فكرة عامة عن كيفية استخدامه dd. بادئ ذي بدء ، يأتي الاسم من أداة نسخ البيانات ، ولكن بشكل مضحك يقال أيضًا أنه يعني مدمر القرص أو مدمر البيانات لأنه أداة قوية للغاية. لذلك نوصي بمزيد من الحذر عند استخدام dd لأن لحظة من الإهمال قد تكلفك بياناتك القيمة. الصيغة العامة للأمر dd هو:

# dd if = $ input_data من = $ output_data [خيارات]

ادخال البيانات y بيانات الناتج هل يمكن أن تكون أقراص أو أقسام أو ملفات أو أجهزة ؟؟ بشكل أساسي كل ما يمكنك الكتابة إليه أو القراءة منه. كما سترى ، يمكنك استخدام dd في سياق الشبكة لإرسال تدفقات البيانات عبر شبكة LAN الخاصة بك ، على سبيل المثال. يمكن أن يكون لديك جزء الإدخال فقط من الأمر dd الخاص بك ، أو أمر الإخراج فقط ، ويمكنك حتى إزالة كليهما في بعض الحالات. سيتم التعامل مع كل هذه في القائمة التالية.

3. أمثلة:

dd if = / dev / urandom of = / dev / sda bs = 4k - »املأ القرص ببيانات عشوائية

dd if = / dev / sda من = / dev / sdb bs = 4096 - » النسخ المتطابق من قرص إلى قرص

dd if = / dev / صفر من = / dev / sda bs = 4k - » تنظيف القرص الصلب (قد تحتاج إلى التكرار)

dd if = ملف الإدخال = / dev / st0 bs = 32k conv = sync - » نسخ من ملف إلى جهاز الشريط

dd if = / dev / st0 of = outfile bs = 32k conv = sync - » السابق ، عكس

dd if = / dev / sda | hexdump -C | grep [^ 00] - » تحقق مما إذا كان القرص صفريًا بالفعل

dd if = / dev / urandom of = / home / $ user / hugefile bs = 4096 - » قم بتعبئة قسم (احذر من أقسام النظام!)

dd if = / dev / urandom of = myfile bs = 6703104 عدد = 1 - » تشفير ملف (ربما قبل الحذف)

dd if = / dev / sda3 من = / dev / sdb3 bs = 4096 conv = notrunc ، لا خطأ - » انسخ قسمًا إلى قسم آخر

dd if = / proc / filesystems | hexdump -C | أقل - " عرض أنظمة الملفات المتاحة

dd if = / proc / الأقسام | hexdump -C | أقل - " عرض الأقسام المتوفرة بالكيلو بايت

dd if = / dev / sdb2 ibs = 4096 | gzip> partition.image.gz conv = no error - » قم بإنشاء صورة gzip للقسم الثاني للقرص الثاني

dd bs = 10240 cbs = 80 conv = ascii ، إلغاء حظر if = / dev / st0 of = ascii.out - » ينسخ محتويات شريط إلى ملف ، ويتحول من EBCDIC إلى ASCII

dd if = / dev / st0 ibs = 1024 obs = 2048 من = / dev / st1 - » نسخ جهاز بلوك 1 كيلو بايت إلى جهاز بلوك 2 كيلو بايت

dd if = / dev / صفر = / dev / null bs = 100M count = 100
يسجل 100 + 0 في
يسجل 100 + 0
تم نسخ 10485760000 بايت (10 جيجابايت) ،

5.62955 ثانية ، 1.9 جيجابايت / ثانية

انسخ 10 جيجا بايت من الأصفار إلى سلة المحذوفات.

dd if = / dev / zero of = / dev / sda bs = 512 عددًا = 2
fdisk -s / dev / sda
dd if = / dev / صفر من = / dev / sda البحث = (number_of_sectors - 20) bs = 1k

محو GPT من القرص. كيف يكتب GPT البيانات في البداية
وفي نهاية القرص ، بعد المسح من البداية ، علينا إيجاد عدد القطاعات (الأمر الثاني) ، ثم مسح آخر 20 قطاعًا.

dd if = / home / $ user / bootimage.img of = / dev / sdc - » قم بإنشاء قرص UDB قابل للتمهيد (يظهر هنا كـ / dev / sdc)

dd if = / dev / sda من = / dev / null bs = 1m - » طريقة جيدة للعثور على الكتل السيئة. النسخ الاحتياطي والنظام ذات الصلة

dd if = / dev / sda من = / dev / fd0 bs = 512 عدد = 1 - » انسخ MBR إلى قرص مرن

dd if = / dev / sda1 من = / dev / sdb1 bs = 4096 - » النسخ المتطابق من قرص إلى قرص

dd if = / dev / sr0 of = / home / $ user / mycdimage.iso \ bs = 2048 conv = nosync - » قم بإنشاء صورة قرص مضغوط

mount -o loop /home/$user/mycdimage.iso / mnt / cdimages / - » قم بتحميل الصورة المذكورة محليًا

dd if = / dev / sda من = / dev / sdb bs = 64k conv = sync - » يكون مفيدًا عند استبدال أسطوانة بنفس الحجم.

dd if = / dev / sda2 من = / home / $ user / hddimage1.img bs = 1M count = 4430
dd if = / dev / sda2 من = / home / $ user / hddimage2.img bs = 1M count = 8860
[...]

قم بإنشاء صور DVD لقسم (مفيد لعمل نسخ احتياطية)

dd if = / $ location / hddimage1.img من = / dev / sda2 bs = 1M
dd if = / $ location / hddimage2.img من = / dev / sda2 تسعى = 4430 bs = 1M
dd if = / $ location / hddimage3.img من = / dev / sda2 تسعى = 8860 bs = 1M
[إلخ…]

استعادة من النسخة الاحتياطية السابقة

dd if = / dev / صفر العد = 1 bs = 1024 طلب = 1 من = / dev / sda6 - » تدمير السوبر بلوك

dd if = / dev / صفر العد = 1 bs = 4096 طلب = 0 من = / dev / sda5 - » طريقة أخرى لتدمير superblock

dd if = / home / $ user / suspicious.doc | clamscan - » يفحص الملف بحثًا عن الفيروسات (يتطلب كلاماف)

dd if = / home / $ user / ملف ثنائي | hexdump -C | أقل - " عرض محتويات ملف ثنائي (يحتاج إلى تفريغ سداسي)

dd if = / home / $ user / bigfile of = / dev / null
dd if = / dev / zero of = / home / $ user / bigfile bs = 1024 عدد = 1000000

حدد سرعة القراءة / الكتابة على القرص الصلب

dd if = / dev / sda من = / dev / sda - » امنح حياة جديدة لمحركات الأقراص الثابتة القديمة التي لم يتم استخدامها منذ فترة (يجب "إلغاء تركيب" محركات الأقراص)

dd if = / dev / mem | سلاسل | grep 'string_to_search' - » افحص محتوى الذاكرة (أي المقروء على الإنسان)

dd if = / dev / fd0 من = / home / $ user / floppy.image bs = 2x80x18b conv = notrunc - » نسخ قرص مرن

dd if = / proc / kcore | hexdump -C | أقل - »يظهر الذاكرة الافتراضية

dd if = / proc / filesystems | hexdump -C | أقل - " عرض أنظمة الملفات المتاحة

dd if = / proc / kallsyms | hexdump -C | أقل - " إظهار الوحدات المحملة

dd if = / proc / المقاطعات | hexdump -C | أقل - " يعرض جدول المقاطعة

dd if = / proc / الجهوزية | hexdump -C | أقل - " يظهر الجهوزية في ثوان

dd if = / proc / الأقسام | hexdump -C | أقل - " عرض الأقسام المتوفرة بالكيلو بايت

dd if = / proc / meminfo | hexdump -C | أقل - " يظهر حالة الذاكرة

dd if = / dev / urandom of = / home / $ user / myrandom bs = 100 عدد = 1 - » قم بإنشاء ملف بحجم 1 كيلوبايت من رطانة عشوائية

dd if = / dev / mem of = / home / $ user / mem.bin bs = 1024 - » ينشئ صورة للحالة الحالية لذاكرة النظام

dd if = / home / $ user / myfile - » طباعة الملف إلى stdout

dd if = / dev / sda2 bs = 16065 | hexdump -C | grep "text_to_search" - » ابحث عن سلسلة في قسم كامل ؛ حتى لو كانت مؤمنة ، يمكنك تشغيل قرص حي

dd if = / home / $ user / file.bin تخطي = 64k bs = 1 من = / home / $ user / convfile.bin - » انسخ file.bin إلى convfile.bin مع تخطي أول 64 كيلوبايت

dd if = / home / $ user / bootimage.img of = / dev / sdc - » قم بإنشاء قرص UDB قابل للتمهيد (يظهر هنا كـ / dev / sdc)

dd if = / dev / mem bs = تخطي 1k = 768 عدد = 256 2> / dev / null | السلاسل -n 8 - » اقرأ BIOS.

dd bs = 1k if = imagefile.nrg of = imagefile.iso skip = 300k - » يحول صورة Nero إلى صورة ISO قياسية.
هذا ممكن لأن الاختلاف الوحيد بين الاثنين هو 300 كيلو بايت من الرأس الذي يضيفه Nero إلى صورة ISO القياسية.

صدى -n "مرحبا العالم الرأسي" | dd cbs = 1 تحويل = إلغاء حظر 2> / dev / null - » جربها ، إنها آمنة. 🙂

dd if = / dev / sda1 | gzip -c | انقسام ب 2000 م - \ /mnt/hdc1/backup.img.gz - » قم بإنشاء صورة gzip لقسم باستخدام تقسيم

cat /mnt/hdc1/backup.img.gz.* | gzip -dc | dd = / dev / sda1 - » قم باستعادة النسخة الاحتياطية السابقة

dd if = / dev / zero of = myimage bs = 1024 عددًا = 10240 - » قم بإنشاء صورة قرص فارغة

dd ibs = 10 تخطي = 1 - » تقسيم أول 10 بايت من stdin

dd bs = 265b conv = no error if = / dev / st0 of = / tmp / bad.tape.image - » يقوم بعمل صورة لشريط به نقاط سيئة

dd if = / عدد dev / sda = 1 | hexdump -C - » عرض ملف MBR

dd if = / dev / sda | nc -l 10001 nc $ system_to_backup_IP 10001 | dd من = sysbackupsda.img - » نسخ احتياطي سريع للشبكة باستخدام netcat

dd if = / dev / صفر من = / dev / sdX bs = 1024000 عدد = 1 - » قم بتنظيف أول 10 ميجابايت من القسم

dd if = / dev / صفر من = tmpswap bs = 1k
العد = 1000000
شمود 600 تمبسواب
mkswap tmpswap
سوابون tmpswap

قم بإنشاء مساحة تبادل مؤقتة

dd if = / dev / sda من = / dev / null bs = عدد 1024 كيلو = 1024
تم نسخ 1073741824 بايت (1.1 جيجابايت) ،
24.1684 ثانية ، 44.4 ميجابايت / ثانية

تحديد سرعة الإدخال / الإخراج التسلسلية للقرص.

dd if = / dev / عدد عشوائي = 1 2> / dev / null | od -t u1 | \ awk '{print $ 2}' | الرأس -1 - » قم بإنشاء رقم عشوائي

dd if = / dev / mem of = myRAM bs = 1024 - » انسخ ذاكرة الوصول العشوائي إلى ملف

dd if = / dev / sda bs = 512 عدد = 1 | od -xa - » اعرض محتوى MBR الخاص بك بتنسيق hex و ASCII

dd if = / my / old / mbr of = / dev / sda bs = 446 عدد = 1 - » يستعيد MBR دون تغيير سجل جدول الأقسام الذي يتراوح بين 447-511 بايت

dd if = / dev / sda1 | انقسام ب 700 م - صورة sda1 - » قم بإنشاء نسخة من القسم وحفظ الصور حيث يكون الحجم الأقصى للحجم 700 ميغا بايت

ls -l | dd conv = ucase - » يحول إخراج الأمر إلى أحرف كبيرة

صدى "MY UPPER CASE TEXT" | dd conv = lcase - » تحويل أي نص إلى أحرف صغيرة

dd if = / etc / passwd cbs = 132 conv = ebcdic من = / tmp / passwd.ebcdic - » يحول ملف كلمة مرور النظام إلى ملف ثابت الطول بتنسيق EBCDIC

dd if = text.ascii of = text.ebcdic conv = ebcdic - » حوِّل من ASCII إلى EBCDIC

dd if = myfile of = myfile conv = ucase - » تحويل ملف إلى أحرف كبيرة (استبدال بسيط لـ SED أو tr)

4. الخلاصة:

هذا ليس سوى جزء صغير مما يمكن أن يفعله dd ونأمل أن يكون هذا المقال قد زورهم لتغطية الأمثلة الأكثر استخدامًا للمستخدم العادي. ومع ذلك ، قبل أن تذهب إلى أبعد من ذلك ، نوصيك بقراءة وثائق محرك الأقراص الثابتة ، والبحث عن أشياء مثل قيود LBA ، وتوخي الحذر عند استخدام dd في محطة جذر. بالطبع ، لديك بالفعل نسخ احتياطية ، ولكن القليل من العناية الإضافية سيوفر لك ساعات من العمل غير الضروري.

وهناك تنتهي المقالة.

للتسجيل ، لم أختبر أيًا من الأوامر الموضحة في هذه المقالة ، لذلك إذا أساء شخص ما (أو بشكل غير صحيح) هذه الأوامر ، فمن المرجح أنه في حالة إتلاف شيء ما على جهاز الكمبيوتر الخاص به ، فلن أتمكن من ذلك لمساعدتك.

لا شيء ، شيئًا فشيئًا سأختبر الأوامر ، إذا وجدت شيئًا مثيرًا للاهتمام أشاركه.

تحياتي


17 تعليقات ، اترك لك

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   لويدز قال

    مقالة رائعة ، هذه هي الطريقة التي يتم بها تحليل الأمر بدقة ، وبالتالي نتعلم الكثير عن ماهية الأمر. مبروك وشكرا لك كالعادة! 😉

  2.   أوسكار قال

    إدخال جيد جدًا وممتع ، حيث أجد أنه من المهم أن أواصل تقديمه.
    أتخيل أنك وشريكك ستجد أن بطارياتهما مشحونة جيدًا بعد يومين من الإجازة ، هاهاهاهاها.
    فاتني نقص المقالات في المدونة.

    1.    KZKG ^ Gaara <"Linux قال

      شكرًا ، الفضل ليس ملكي ... لقد وضعت الترجمة 🙂
      وهاها نعم ، غدًا سيكون هناك المزيد من المقالات هاها ، نعتذر عن هذه الأيام دون نشر أي شيء ، حتى بالنظر إلى الإحصائيات التي نرى التراجع فيها.

    2.    elav <° لينكس قال

      اجازة تقول؟ ههههههههههه ... أتمنى لو كان ...

  3.   أوليكسيس قال

    مقالة جيدة ، كما أذكرك دائمًا إذا كان بإمكانك تمكين مكون إضافي لتصديرها إلى PDF أو إرفاق المقالة بتنسيق PDF

    تحيات!

    1.    الشجاعة: قال

      أثناء المرور أذكرك أنه يجب عليك فتح منتدى لأن هناك ميلًا لإلغاء العلامة كثيرًا في المنشورات (أشمل نفسي)

      1.    KZKG ^ Gaara <"Linux قال

        ترجع الأخطاء أو المشكلات التي قدمناها ، ومشاكل الاتصال بقاعدة البيانات وغيرها ، إلى حقيقة أن الموقع يولد الكثير من النشاط أو حركة المرور ، وهذا هو سبب عدم اتصالنا بالإنترنت للحظات. إذا أضفنا منتدى بالإضافة إلى الموقع ، فسيؤدي ذلك إلى زيادة حركة المرور وجعل كل شيء أسوأ.

        فكرة المنتدى نعم نحبها ونريد فعلا فعلها لكن في الوقت الحالي لا يمكننا للأسف 🙁

        1.    الشجاعة: قال

          يحتوي WordPress على مكون إضافي له ، ولا يتعين عليك استخدام المواقع التي لا يمكنك رؤيتها

      2.    أوليكسيس قال

        حسنًا ... البديل دون إضافة منصة أو موقع آخر هو bbPres (bbpress.org) على WordPress

        تحيات!

        1.    KZKG ^ Gaara <"Linux قال

          نعم ، نحن نعرفه ، كنا نفكر بالفعل في FluxBB 🙂
          المشكلة ليست قاعدة بيانات أخرى أو استخدام نفس واحد مع المزيد من الجداول ، ولكن المزيد من النشاط فقط.

      3.    elav <° لينكس قال

        سنفتح منتدى قريبا جدا 😀

    2.    KZKG ^ Gaara <"Linux قال

      لا يزال يتعين علينا اختبار هذا المكون الإضافي بدرجة كافية ، ثم وضعه إذا كان يعمل بشكل جيد 🙂
      لم يكن لدينا الوقت هاها

  4.   الرقاص مرض عصبي قال

    زميلي العزيز ، سعيد لأنني أقتبس هذا الشفقة الجيد جدًا لأن هذا عالق جدًا في التطبيق وأود منك أن تتناوله بعمق أكثر لأنني أود أن أعرف
    إذا كان بإمكانك إنشاء مغناطيس قابل للتمهيد في قرص DVD أو * .iso ، مضغوط ، شكرًا مقدمًا ، آمل أن تكون إجابتك على التذييل الخاص بي ، أعتقد أنك الوحيد في شبكة الأبالا الإسبانية بأكملها التي تم توسيعها بشكل أكبر في المقالة العظيمة الموضحة و

  5.   69- الأفضل 69 قال

    كيف يمكنني الاستنساخ من جهاز إلى آخر عبر الشبكة؟ في حالتي ، يوجد جهازي كمبيوتر محمول متصلان في شبكة محلية ذات اتجاه ثابت

  6.   إريك قال

    شكرا على المعلومات 🙂

  7.   الذهب 4 قال

    بعد تعديل عقدي
    http://premium.cars.purplesphere.in/?post.zoey
    الامهات والبنات الاباحية الحرة 3gp مثلي الجنس الإباحية مقاطع الفيديو Buzzer porn penguin vids porn route 96 porn

  8.   أياسي بور قال

    الأمر بإحياء السجلات القديمة له أهمية كبيرة. من الجيد أن هذه قائمة مختصرة بما يمكن عمله!