এটি করার জন্য টি-কমান্ডের সাথে আপনি বাশের "প্রক্রিয়া বিকল্প" ব্যবহার করতে পারেন:
cat drive.image | tee >(dd of=/dev/sda) >(dd of=/dev/sdb) >(dd of=/dev/sdc) | dd of=/dev/sdd
বা স্পষ্টতার জন্য (সামান্য দক্ষতার ব্যয়ে) আপনি ddশেষটিকে অন্যের মতো বলা যেতে পারেন এবং টি-এর স্টাডআউটটি / dev / নালকে প্রেরণ করতে পারেন:
cat drive.image | tee >(dd of=/dev/sda) >(dd of=/dev/sdb) >(dd of=/dev/sdc) >(dd of=/dev/sdd) | /dev/null
এবং আপনি যদি এটি ইনস্টল করে থাকেন তবে দরকারী অগ্রগতি সূচক পাওয়ার পরিবর্তে আপনি পাইপ প্রদর্শক ব্যবহার করতে পারেন cat:
pv drive.image | tee >(dd of=/dev/sda) >(dd of=/dev/sdb) >(dd of=/dev/sdc) | dd of=/dev/sdd
এটি কেবলমাত্র উত্স চিত্রটি একবারে পড়ে, তাই উত্স ড্রাইভটি মাথা ঘামানোর কারণে ক্ষতিগ্রস্থ হয় যা সম্ভবত অন্যান্য পদ্ধতির সাহায্যে ছবিটি একাধিকবার অনুলিপি করার সময় আপনি ঘনিষ্ঠভাবে ধীরে ধীরে দেখেন। teeউপরের মত ব্যবহার করে , প্রক্রিয়াগুলি সবচেয়ে ধীর গন্তব্য ড্রাইভের গতিতে চালানো উচিত।
আপনার যদি গন্তব্য ড্রাইভগুলি ইউএসবি-র মাধ্যমে সংযুক্ত থাকে তবে সচেতন হন যে তারা সকলেই বাস ব্যান্ডউইদথ ভাগ করে নিতে পারে তাই সমান্তরালে অনেকগুলি লেখার জন্য এটি যথাযথভাবে লেখার চেয়ে দ্রুততর নাও হতে পারে কারণ ইউএসবি বাস উত্স বা গন্তব্য ড্রাইভ নয় বরং বাধা হয়ে দাঁড়ায়।
উপরের ধরে নেওয়া হয়েছে আপনি লিনাক্স বা অনুরূপ ব্যবহার করছেন (এটি ডিভাইসের নামগুলি ভিন্ন হলেও এটি ওএসএক্সে কাজ করা উচিত), যদি আপনি উইন্ডোজ বা অন্য কিছু ব্যবহার করেন তবে আপনার আলাদা সমাধান প্রয়োজন।
সম্পাদন করা
ইউএসবি-তে অনেকগুলি ড্রাইভের ইমেজিংয়ের জন্য নেটওয়ার্কের মাধ্যমে ইমেজিংয়ের একই সমস্যা রয়েছে - ট্রান্সপোর্ট চ্যানেলটি ড্রাইভের পরিবর্তে বাধা হয়ে দাঁড়ায় - যদি আপনি যে সফ্টওয়্যারটি ব্যবহার করেন তবে কোনওরকম সম্প্রচার বা মাল্টিকাস্ট ট্রান্সমিশন সমর্থন করে না।
জন্য ddপদ্ধতি আপনি করতে পারে সম্ভবত ডেজি-শৃঙ্খল netcat+ + tee+ + ddতাই মত প্রতিটি মেশিনের উপর প্রসেস:
- গন্তব্য মেশিন 1 মাধ্যমে তথ্য উত্স
cat/ pv/ ddগুলি nc।
- গন্তব্য মেশিন 1-
ncএ উত্স মেশিনের ডেটা শোনার এবং এটির পাইপ দেওয়া হয় teeযার মাধ্যমে এটি dd(এবং তাই ডিস্কে) এবং অন্য ncপ্রক্রিয়া যা গন্তব্য মেশিন 2 এ প্রেরণ করে to
- গন্তব্য মেশিন 2 এর
ncগন্তব্য মেশিন 1 থেকে ডেটা শুনে এবং পাইপিং করে teeযার মাধ্যমে এটি dd(এবং তাই ডিস্কে) ncপ্রেরণ করা হয় এবং অন্য প্রক্রিয়া যা গন্তব্য মেশিন 3 এ প্রেরণ করে।
- এবং তাই শেষ মেশিন পর্যন্ত যা
ncপূর্ববর্তী মেশিন থেকে ডেটা তুলেছে এবং এটির মাধ্যমে ডিস্কে প্রেরণ করছে dd।
আপনি সম্ভবত আপনার সুইচ এবং নেটওয়ার্ক কার্ডগুলি একটি সম্পূর্ণ দ্বৈত লিঙ্কটি নিয়ে আলোচনা করেছেন তা ধরে নিয়ে আপনি সম্ভাব্যভাবে আপনার সম্পূর্ণ নেটওয়ার্ক ব্যান্ডউইথটি ব্যবহার করছেন। সোর্স মেশিনের পরিবর্তে 10 টি কপি ডেটা প্রেরণ করা (ধরে নেওয়া 10 গন্তব্য মেশিনগুলি ধরে নেওয়া) সুতরাং প্রতিটি বিদায়ী ব্যান্ডউইদথের 1/10 তম সীমাবদ্ধ এটি কেবল প্রেরণ করছে Each প্রতিটি গন্তব্য মেশিন ডেটার একটি অনুলিপি নিয়ে তা প্রেরণ করছে আবার। আপনি এর বাফারের আকার সেটিংস খামচি প্রয়োজন হতে পারে pv, ncএবং ddশ্রেষ্ঠ ব্যবহারিক কর্মক্ষমতা কাছাকাছি পেতে।
আপনি যদি এমন কোনও সফ্টওয়্যার খুঁজে পেতে পারেন যা কেবলমাত্র মাল্টিকাস্ট সমর্থন করে তবে এটি আরও সহজ হবে (এবং সম্ভবত কিছুটা দ্রুত)! তবে উপরেরটি হ্যাকি সমাধানের ধরণ যা আমি চেষ্টা করতে যথেষ্ট বুদ্ধিমান হতে পারি ...
আবার সম্পাদনা করুন
আর একটি চিন্তা। যদি ড্রাইভ চিত্রটি ভালভাবে সংকুচিত হয় (যা এটির বড় অংশগুলি জিরো দিয়ে পূর্ণ থাকে তবে) উত্স মেশিনের বহির্গামী ব্যান্ডউইদথ একবারে অনেকগুলি গন্তব্যে প্রেরণ করা হলেও সমস্যা হওয়ার দরকার নেই। কেবল প্রথমে চিত্রটি সংকুচিত করুন, এটি tee+ ব্যবহার করে সর্বত্র সঞ্চারিত ncকরুন এবং গন্তব্যগুলিতে (নেটওয়ার্ক-> nc-> ডিকম্প্রেসর-> dd-> ডিস্ক) ডিকম্প্রেস করুন ।