আমি এই উদ্ধৃতিটি (নীচে) বেশ কয়েকবার পড়েছি, খুব সম্প্রতি এখানে এসেছি এবং ক্রমাগত বিস্মিত হয়েছি যে কোনওdd
সংকলককে যে কোনও কিছুকে কীভাবে প্যাচ করতে ব্যবহার করা যেতে পারে :
30 বছর আগে স্কুলে আমি ইউনিক্স সিস্টেমটি ব্যবহার করেছি, র্যাম এবং ডিস্ক স্পেসে খুব সীমাবদ্ধ ছিল। বিশেষত,
/usr/tmp
ফাইল সিস্টেমটি খুব ছোট ছিল, যার ফলে কেউ যখন একটি বিশাল প্রোগ্রাম সংকলন করার চেষ্টা করে তখন সমস্যা দেখা দেয়। অবশ্যই, শিক্ষার্থীদের যাইহোক "বড় প্রোগ্রাম" লেখার কথা ছিল না; বড় প্রোগ্রামগুলি সাধারণত "কোথাও" থেকে অনুলিপি উত্স কোড ছিল। আমাদের মধ্যে অনেকে অনুলিপি/usr/bin/cc
করেছিল/home/<myname>/cc
এবং তার পরিবর্তে বাইনারিগুলি ব্যবহারdd
করার জন্য প্যাচ করত/tmp
/usr/tmp
যা বড় ছিল। অবশ্যই এটি আরও জটিল করে তুলেছে - এই অনুলিপিগুলির অধীনে থাকা ডিস্কের জায়গাগুলি days দিনগুলি গুরুত্বপূর্ণ ছিল না এবং এখন/tmp
নিয়মিতভাবে পূরণ করা হয়, অন্য ব্যবহারকারীদের এমনকি তাদের ফাইলগুলি সম্পাদনা করা থেকে বিরত করে। তারা কী ঘটেছে তা জানতে পেরে সিসাদমিনরা এchmod go-r /bin/* /usr/bin/*
যা সমস্যাটি "সংশোধন" করেছে এবং আমাদের সি সংকলকটির সমস্ত অনুলিপি মুছে ফেলেছে।
(জোর আমার)
dd
মনুষ্যসৃষ্ট পৃষ্ঠা প্যাচিং সম্পর্কে কিছুই বলছেন এবং তা মনে করি না এই যাহাই হউক না কেন করতে পুনরায় উদ্দেশ্য এটা হতে পারে।
বাইনারি সত্যিই সঙ্গে প্যাচ করা যেতে পারে dd
? এর কি কোন historicalতিহাসিক তাত্পর্য আছে?
od
বাইট হেক্স কোডগুলি একটি ফাইল, অফসেট আপনার যা দরকার, আপনার সম্পাদনাটি সিদ্ধান্ত নেন, এবংbs=$patchsize count=1 seek=$((offset/bs)) conv=notrunc
মধ্যে আপনার প্যাচ ঠিক আছে।