কমান্ড লাইন থেকে কোনও হার্ডডিস্ক (এমবিআর মোছা এবং পার্টিশন মুছুন) পুনরায় বুট না করে কীভাবে পুনরায় সেট করবেন?


8

একটি পরিষ্কার অবস্থা থেকে শুরু করতে আমার কমান্ড লাইন থেকে একটি হার্ড ডিস্কটি খালি অবস্থায় পুনরায় সেট করতে হবে।

এটি একটি মোছা ইউটিলিটি চালানোর বিষয়ে নয়, ডেটা ওভাররাইট করা হবে না।

এই প্রশ্নটি কমান্ড লাইন থেকে সমস্ত বিভাজন মুছে ফেলার মতোই

সেখানে সমাধান বেশ ভাল কাজ করে,

dd if=/dev/zero of=/dev/sda bs=512 count=1 conv=notrunc

তবে যদি আমি এই জাতীয় ওভাররাইটেড ডিস্কের সাথে কাজ করতে চাই, তবে আমি ত্রুটিটি পেয়েছি যে ডিভাইসটি এখনও ব্যবহৃত হচ্ছে।

root@grml ~ # blockdev --rereadpt /dev/sda
BLKRRPART: Device or resource busy

অথবা

root@grml ~ # partprobe
Error: Partition(s) 2, 3 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.
Error: Partition(s) 2, 3 on /dev/sdb have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.

সুতরাং ডিভাইসে যা "বসেছে" তা আমাকে নিজেই অক্ষম করতে হবে

umount /mnt/debootstrap
umount /mnt/debootstrap/tmp
umount /mnt/debootstrap/var/log
umount /mnt/debootstrap/var
umount /mnt/debootstrap/home
service mdadm stop
service lvm2 stop
vgremove vg_main
pvremove /dev/md1
mdadm --stop /dev/md0
mdadm --stop /dev/md1
mdadm --remove /dev/md0
mdadm --remove /dev/md1

এর পরে partprobeকমান্ড কাজ করে।

কিছু আদেশ আছে যা সহজ কাজ করে? মত

harddiskreset /dev/sda

সুতরাং এটি সহজেই আলাদা পার্টিশন / lvm / এমডি লেআউট সহ সিস্টেমে ব্যবহার করা যায়?


1
রিবুট করার পাশাপাশি এটি আপনাকে কী করার পরামর্শ দিয়েছে? এখানে প্রসঙ্গটি কী?
মাইকেল হ্যাম্পটন

আমি আপনার প্রশ্নগুলি বুঝতে পেরেছি কিনা তা নিশ্চিত নই। আমি ব্যাশ স্ক্রিপ্ট যা একটি সেটআপ-স্টোরেজ ব্যবহার করছে তা দিয়ে একটি ডেবিয়ান সিস্টেম বুটস্ট্র্যাপ করতে চাই। স্ক্রিপ্ট সর্বদা কাজ করে তা নিশ্চিত করতে লক্ষ্য সিস্টেমে হার্ডডিস্কটি খালি করা / পুনরায় সেট করা উচিত। আপনি কি প্রসঙ্গটি চেয়েছিলেন? তাহলে আমি আমার প্রশ্ন বাড়িয়ে দিতাম এটা আমার কাছে প্রাসঙ্গিক নয় করলো করেছেন কারণ আমি মাত্র একটি কমান্ড যা হার্ডডিক্সে থেকে MBR & পার্টিশন মুছে ফেলতে সক্ষম হয় খোঁজ করছি ...
c33s

পার্টিশনগুলি সেট আপ করার আগে আপনাকে এমবিআর মুছা উচিত । দেখা যাচ্ছে যে এখানে আপনি সেট আপ করার পরে এটি করছেন !
মাইকেল হ্যাম্পটন

আহ হা! আমি বুঝতে পেরেছি. এটিকে কাজ করতে (লাইভসিডি থেকে) প্রথমে আমাকে এই কাজটি করতে হয়েছিল: sudo wipefs -a / dev / sdb - fdisk -l / dev / sdb তে কোনও বিভাজন সারণী প্রদর্শন করে নি - তারপর - sudo dd if = / dev / = / dev / sdb এর sda প্রাথমিক ড্রাইভের বুটেবল কপি তৈরি করতে কাজ করে।
এসডসোলার

উত্তর:


5

wipefsপ্রোগ্রাম আপনি সহজেই পার্টিশন-টেবিল স্বাক্ষর মুছতে দেয়:

wipefs -a /dev/sda

LVM এর মতো আপনাকে ডিভাইসটি ব্যবহার করে এখনও কোনও প্রক্রিয়া বন্ধ করতে হবে।

থেকে man wipefs

ওয়াইফফগুলি স্বাক্ষরগুলি libblkid এর জন্য অদৃশ্য করতে নির্দিষ্ট ডিভাইস থেকে ফাইল সিস্টেম, রাইড বা পার্টিশন-টেবিল স্বাক্ষর (যাদু স্ট্রিং) মুছে ফেলতে পারে।

ওয়াইফসগুলি নিজেই ফাইল সিস্টেমটি বা ডিভাইস থেকে অন্য কোনও ডেটা মুছবে না। কোনও বিকল্প ছাড়াই ব্যবহার করা হলে, ওয়াইফসগুলি সমস্ত দৃশ্যমান ফাইল সিস্টেম এবং তাদের মৌলিক স্বাক্ষরের অফসেটগুলি তালিকাভুক্ত করে।

মুছে ফেলা বিএলকেআরআরপিআর্ট আইওটিটিএল কল করে যখন এটি পরিবর্তনের বিষয়ে কার্নেলকে জানাতে একটি পার্টিশন-সারণি স্বাক্ষর মুছে ফেলে।


2

আমি সর্বদা এই জন্য বিচ্ছিন্নভাবে ব্যবহার করেছি। এটি ডিস্কলেবেল টাইপ পরিবর্তন করতে এবং পার্টিশন যুক্ত / অপসারণের জন্য ভাল কাজ করে, বিশেষত যেহেতু এটি fdisk এর বিপরীতে আধুনিক বড় এইচডিডি পরিচালনা করতে পারে।

আপনি চালাতে পারেন

$ sudo parted /dev/sda

এটি জিনিসগুলি শুরু করবে এবং বিভক্ত টার্মিনালে আপনাকে প্রবেশ করবে। তারপরে সমস্ত উপলভ্য কমান্ড প্রদর্শন করতে সহায়তা কমান্ডটি চালাতে পারেন। এটি খুব স্ব বর্ণনামূলক।

আমি উল্লেখ করব যে হ্যাঁ আপনার যে ডিস্কের আনমাউন্ট বিন্যাস করতে চান তার সমস্ত বিভাজন থাকতে হবে। আপনি যদি সমস্ত পার্টিশন আনমাউন্ট করার সহজ উপায়ের সন্ধান করেন তবে আমি অনুমান করি যে আপনি এটি আনমাউন্ট কমান্ডের একটি রেইজেক্স দিয়ে করতে পারেন তবে এটি নির্বোধ বলে মনে হচ্ছে।

এইচডিডি পরিচালনা করতে পার্টড ব্যবহার করে আমাকে কখনই ডিস্ক বা অনুরূপ কিছুতে রিফ্রেশ করতে বাধ্য করা হয়নি।

সম্পূর্ণ নতুন ব্র্যান্ডের ব্যবহারের জন্য একটি ড্রাইভ রিফ্রেশ করার জন্য, আমি সাধারণত নিম্নলিখিতগুলি করি:

1) দৌড় দিয়ে বিচ্ছেদ শুরু sudo parted /dev/sda

2) চালিয়ে যে কোনও বিদ্যমান পার্টিশন সন্ধান করুন print

3) rm 1আপনি অপসারণ করতে চান এমন পার্টিশন নম্বরটি 1 দিয়ে প্রতিস্থাপন করে বিদ্যমান পার্টিশনগুলি সরান। তারপরে ডিস্কে থাকা সমস্ত অবশিষ্ট পার্টিশনের জন্য পুনরাবৃত্তি করুন।

৪) ডিসপ্লেবেলটি চালিয়ে পুনরায় সেট করুন mklabel gptআমি জিপিটি লেবেলের ধরণটি ব্যবহার করি তবে আপনি স্ট্যান্ডার্ড এমএসডোস বা আপনার পছন্দনীয় যা কিছু ব্যবহার করতে পারেন। এখানে ডিস্ক্লেবেল ধরণের তালিকা রয়েছে

5) চালিয়ে নতুন পার্টিশন তৈরি করুন mkpartএটি পার্টিশন উইজার্ড তৈরির মাধ্যমে আপনাকে চালিত করবে। প্রারম্ভ এবং শেষের পয়েন্টগুলি সেক্টরে খেলাপি হয়। unitচালানোর আগে আপনি কমান্ডটি চালিয়ে এই পরিবর্তন mkpartকরতে পারেন আপনি এটি জিবি বা টিবি বা এমবি ইত্যাদিতে নির্দিষ্ট করতে পারবেন

)) printআপনার নতুন পার্টিশনের টেবিল তথ্যটি ব্যবহার করে আপনার ফলাফলগুলি পরীক্ষা করুন

)) আপনাকে পার্টিশনগুলি ফরম্যাট করতে হবে। এটি অংশীকরণের মাধ্যমে করা উচিত নয় যদিও এর জন্য কিছু বিকল্প উপলব্ধ। আমি পরিবর্তে quitপার্টেড টার্মিনালটি প্রস্থান করার জন্য এবং তারপরে mkfsপার্টিশনগুলির বিন্যাস করতে ব্যবহার করার পরামর্শ দেব । / Dev / sda এর পরিবর্তে / dev / sda1 অনে 'mkfs' চালানো মনে রাখবেন কারণ আপনি পার্টিশনটি ফর্ম্যাট করছেন এবং পুরো ডিস্কটি নয়।

এটা সম্বন্ধে.

আমি আশা করি এটি আপনার প্রশ্নের উত্তর দেয়।

এছাড়াও, এখানে রেফারেন্সের জন্য অনলাইন পার্টড ম্যানুয়ালটি রয়েছে: https://www.gnu.org/software/p সূত্র / ম্যানুয়াল / html_node/ index.html

সম্পাদনা করুন:

ওপি এই ধরণের কাজটি টার্মিনাল থেকে নয় একটি স্ক্রিপ্ট থেকে করতে চেয়েছিল। পার্টেড টার্মিনালের পরিবর্তে একক লাইন কমান্ডের মাধ্যমে পার্টেড চালিয়ে আপনি স্ক্রিপ্টের মাধ্যমে একই ধরণের পদ্ধতিটি করতে পারেন।

উদাহরণস্বরূপ কমান্ড

$ sudo parted /dev/sda print

ড্রাইভের তথ্য এবং পার্টিশন টেবিলটি বাশ কনসোলে প্রিন্ট করবে যা ভেরিয়েবলগুলি তৈরি করতে বা ব্যাশ স্ক্রিপ্টে আপনি যা চান তা তৈরি করতে গ্রেপ ইত্যাদি ব্যবহার করে ম্যানিপুলেট করা যায়।


আমার এটি টার্মিনাল থেকে ম্যানুয়াল নয়, স্ক্রিপ্ট থেকে স্বয়ংক্রিয়ভাবে প্রয়োজন
c33s

আপনার মূল পোস্টটি কোনও স্ক্রিপ্টের উল্লেখ না করে অপেক্ষা করুন। এর কোন অংশ আপনি স্ক্রিপ্ট করছেন? আমি মনে করি আপনি বিভক্ত টার্মিনালে না গিয়ে পার্টেড কমান্ডগুলি চালাতে পারেন। যদিও আমি সে সম্পর্কে নিশ্চিত নই।
ক্রোনিক 907

কেবলমাত্র নিশ্চিত করতে, আপনি একক লাইন কমান্ডগুলি থেকে বিচ্ছিন্ন চালাতে পারেন। উদাহরণস্বরূপ, parted /dev/sda print/ dev / sda এর জন্য পার্টিশন টেবিলটি প্রিন্ট করবে। যদি আপনি বাশ স্ক্রিপ্টের মধ্যে এটি করার প্রয়োজন হয় তবে আপনি কেবলমাত্র একক লাইন কমান্ড দিয়ে উপরে বর্ণিত একই জিনিসটি করতে পারেন।
ক্রোনিক 907

কমান্ডটি ব্যবহার করার জন্য ডিভাইসের নামটি কী হবে parted /dev/sdaতাও আমাকে জানতে হবে, ড্রাইভটিতে কল করার জন্য কতগুলি পার্টিশন রয়েছে তাও জানতে হবে rm 1, আমি কেবল ডিস্কটি পরিষ্কার করার জন্য একটি কমান্ডের সন্ধান করছি, তাই আমি এটি পুনরায় ভাগ করতে পারি, এমডির এলভি এর অপসারণ বন্ধ করার সমস্ত ম্যানুয়াল স্টাফ না করে doing
c33s

1) আপনাকে ডিডি কমান্ড চালানোর জন্য ডিভাইসের নাম কী হবে তা এখনও জানতে হবে ... আপনি সেখানে কী পাচ্ছেন তা নিশ্চিত নন। dfড্রাইভ মাউন্ট করা থাকলে কেবল গ্রেপ করুন । আপনি কীভাবে "স্ক্রিপ্ট" তৈরির পরিকল্পনা করছেন, যদি আপনি ড্রাইভের অবস্থান না পান? 2) parted $drive printএটি উপলব্ধ এবং এটি উপলব্ধ একটি সহজ অ্যারে মধ্যে সব উপলব্ধ পার্টিশন নম্বর খুঁজে ফলাফলগুলি গ্রেপ এবং তারপরে যথেষ্ট সহজ । তারপরে চালানোর জন্য সেই মানগুলি ব্যবহার করুন parted $drive rm $partition। এই সমস্ত জিনিস বেশ সহজ বাশ স্ক্রিপ্টিং।
ক্রোনিক 907

0

Fdisk এর উন্নত নন-ইন্টারেক্টিভ সংস্করণ ব্যবহার করুন, যা sfdisk

পার্টিশন সারণি মুছে ফেলতে এই কমান্ডটি ব্যবহার করুন:

sfdisk --delete /dev/sda

0

মূলত, এই ত্রুটি

ত্রুটি: পার্টিশন (গুলি) 1 / dev / sdc তে লেখা হয়েছে, তবে আমরা পরিবর্তনের কার্নেলটি জানাতে পারিনি, সম্ভবত এটি / সেগুলি ব্যবহার হচ্ছে। ফলস্বরূপ, পুরানো বিভাজন (গুলি) ব্যবহারে থাকবে। আরও পরিবর্তন করার আগে আপনার এখনই রিবুট করা উচিত।

আপনার ডিস্ক বিভাজন করার সময় আপনি যখন কিছু পরামিতি মিস করেন তখন দেখায় পার্টিশন করার সময় আপনি যে পরামিতিগুলি সংজ্ঞায়িত করেছেন তা ঘনিষ্ঠভাবে দেখে আপনি এই ত্রুটিটি সমাধান করতে পারেন।

ব্যবহার করুন: fdisk -lআপনার ডিস্কের পরামিতি চেক করতে:

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.