কমান্ড লাইন থেকে সমস্ত পার্টিশন মোছা হচ্ছে


40

আপনি লিনাক্সের কমান্ড লাইন (বিশেষত উবুন্টু) থেকে কোনও ডিভাইসের সমস্ত পার্টিশন কীভাবে মুছবেন? আমি fdisk দেখার চেষ্টা করেছি, তবে এটি একটি ইন্টারেক্টিভ প্রম্পট উপস্থাপন করে। আমি একটি একক কমান্ড সন্ধান করছি, যা আমি একটি ডিভাইস পাথ দিতে পারি (যেমন / dev / sda) এবং এটি ext4, লিনাক্স-অদলবদল এবং এটির যে কোনও পার্টিশন খুঁজে পায় তা মুছে ফেলবে। মূলত, এটি একই জিনিস হবে যেমন আমি জিপিআরটি খুলি এবং ম্যানুয়ালি সমস্ত পার্টিশন নির্বাচন করে মুছে ফেলব। এটি মোটামুটি সহজ বলে মনে হচ্ছে, তবে দুর্ভাগ্যক্রমে আমি গুগলের মাধ্যমে কিছুই খুঁজে পাচ্ছি না।

উত্তর:


44

এই যথেষ্ট হবে?

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

4
এটি পার্টিশনগুলি মুছবে না। পার্টিশনগুলি মুছে দিয়ে তিনি বোঝাতে চেয়েছিলেন এমবিআর সংরক্ষণ করুন এবং পার্টিশন টেবিলটি খালি করুন।
মিরসিয়া ভুটকোভিচি

2
না, এটি আমার যা প্রয়োজন ঠিক তা করছে appears ডেটা এখনও আছে কিনা আমি সত্যিই চিন্তা করি না। জিপিআর্ট দেখায় যে এটি চালানোর পরে পার্টিশনগুলি চলে গেছে এবং আমি এটি চেয়েছিলাম।
সেরিন

মিরসিয়া ভুটকোভিচি আপনার ডেটা নিয়ে কথা বলছিল না, তবে আপনার এমবিআর-র বুটস্ট্র্যাপ কোডের বিষয়ে। এটি এখন চলে গেছে, কারণ আপনি এটি এমবিআর-স্টাইল পার্টিশন টেবিল থেকে 4 টি প্রাথমিক এন্ট্রি সহ মুছে ফেলেছেন।
জেডিবিপি

1
ড্রাইভার আনমাউন্ট করতে ভুলবেন না, অন্যথায় এটি কাজ করবে না।
অরেঞ্জটাক্স

আপনি যদি ড্রাইভে জেডএফএস ব্যবহার করেছেন এবং অন্য কোনও কিছুর জন্য এটি পুনঃপ্রকাশ করছেন তবে এটি দুর্দান্ত কাজ করে। কোনও স্ট্যান্ডার্ড উইন্ডোজ বা লিনাক্স পার্টিশন এবং ফর্ম্যাট এর উপরের জেডএফএস লেবেল থেকে মুক্তি পাবে না যা আপনাকে বড় সমস্যার কারণ হতে পারে।
টনি মারো

32

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

wipefs -a /dev/sda

থেকে man wipefs

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

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

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


12

দ্রুত এবং নোংরা: gpartedপার্টিশনগুলি মুছতে ব্যবহার করুন , বা আপনি যদি তাড়াহুড়া করছেন:

dd if=/dev/zero of=/dev/[disk device] bs=512 count=1

এটি ড্রাইভের এমবিআর জ্যাপ করবে (ডেটা এখনও অক্ষত)।

বিকল্পভাবে:

dd if=/dev/zero of=/dev/[disk device]

পুরো ড্রাইভটি মুছতে (সমস্ত কিছুর উপরে একত্রে জিরো লিখুন "" সুরক্ষিত "নয় তবে সাধারণত যথেষ্ট ভাল), বা সুরক্ষিত মোছার জন্য একটি" ডিস্ক শ্রেডার "সরঞ্জাম ব্যবহার করুন।


7

দেখুন man sfdisk, যা এফডিস্কের একটি অ-ইন্টারেক্টিভ বৈকল্পিক। এটি ছাড়া, আপনি পিসি যেমন লিখেছিলেন তেমন পার্টিশন টেবিলটি ডিডি দিয়ে মুছতে পারেন।


6

আপনার পাশাপাশি পার্টিশনের মাধ্যমে লুপ করতে কিছু স্ক্রিপ্টিং জড়িত থাকতে পারে, তবে এর জন্য পার্টেড ব্যবহার করতে সক্ষম হওয়া উচিত ।


3

আমরা যদি এমবিআর-স্টাইলের পার্টিশন সম্পর্কে কথা বলি ...

dd if=/dev/zero of=/dev/[disk device] bs=1 count=64 seek=446 conv=notrunc

ব্যাখ্যা:

dd

এই স্ট্যান্ডার্ড কমান্ডটি কোনও উত্স থেকে বাইটগুলি অনুলিপি করে সেগুলিকে একটি গন্তব্যে লিখে দেয়। এটি এই কাজের জন্য সহজতম নমনীয় সরঞ্জাম।

if=/dev/zero

এখানে, আমরা উল্লেখ করছি যে আমরা যেখান থেকে পড়ছি /dev/zero, এটি একটি বিশেষ ডিভাইস যা NULবাইট - জিরোস নির্গত করে ।

of=/dev/[disk device]

এখানে, আমরা নির্দিষ্ট করছি যে আমরা কোন ডিভাইসে লিখছি।

bs=1

ddব্লক পদ বিবেচনা । আপনার সিস্টেমের উপর নির্ভর করে ডিফল্ট ব্লকের আকার 512 বাইট, 1024 বাইট বা 4096 বাইট হতে পারে। যাইহোক, আমাদের এর চেয়ে জিনিসগুলিকে আরও স্পষ্টভাবে সম্বোধন করা দরকার, তাই আমরা dd1 বাইটের একটি ব্লক আকার ব্যবহার করতে বলি ।

গণনা = 64

এখানে, আমরা blocks৪ ddটি ব্লক (বা আমাদের bs=1প্যারামিটারের কারণে বাইটস ) লিখতে বলি , যেহেতু প্রাথমিক পার্টিশন টেবিলটিতে মোট 64 বাইটের জন্য 4 16-বাইট পার্টিশন এন্ট্রি রয়েছে of

চাইতে = 446

এমবিআর-র মধ্যে প্রাথমিক পার্টিশন টেবিল (সুতরাং, এখানে জিপিটি সম্পর্কে কথা বলা হচ্ছে না) 446 বাইট ইন ইন অবস্থিত, তাই আমরা ddলেখার আগে 446 বাইট সন্ধান করার নির্দেশ দিই ।

প্রসারিত পার্টিশন টেবিলের দিকে নির্দেশ করতে প্রাথমিক পার্টিশন স্লট ব্যবহার করে সাধারণত বর্ধিত পার্টিশন তৈরি করা হয়, সুতরাং আমরা যদি 4 টি প্রাথমিক পার্টিশন মুছে ফেলি, তবে আমরা কার্যকরভাবে প্রসারিত পার্টিশন টেবিলটিও মুছতে পারি; ওএস এটি সন্ধান করতে পারবে না, সুতরাং এটি এটি পড়তে এবং ব্যাখ্যা করতে সক্ষম হবে না। (আপনি যদি বর্ধিত পার্টিশন টেবিলটি মুছতে চান তবে আপনাকে অপারেটিং সিস্টেম সম্পর্কে আরও জানতে হবে; বিভিন্ন অপারেটিং সিস্টেমগুলি বিভিন্ন উপায়ে প্রসারিত পার্টিশনগুলি করে))


2

আমি একই জিনিসটি করতে চেয়েছিলাম (স্ল্যাকওয়্যার ১৪.২ ব্যতীত) তবে আমি এখানে প্রস্তাবিত বেশিরভাগ সমাধানকে কার্যকর করতে পারিনি, সর্বাধিক বিস্তৃত এবং ডকুমেন্টযুক্ত সমাধান প্রতিস্থাপন পার্টিশন তৈরির ক্ষেত্রে নতুন সমস্যা তৈরি করেছে। এটি পার্টিশনটি মুছে ফেলেছে তবে কিছু পার্টিশন সফ্টওয়্যার স্পষ্টতই স্বয়ংক্রিয়ভাবে পার্টিশনের ব্যাকআপ খুঁজে পেয়েছে।

আমি দেখতে পেয়েছি f3probe ( http://oss.digirati.com.br/f3 ) সমস্ত পার্টিশন মুছে ফেলার সমস্যাটি সমাধান করেছে, দ্রুত এবং সহজেই, বৃহত ক্ষমতার ড্রাইভের সাথে কাজ করে, এবং পুরো ড্রাইভ বিস্তৃত ঠিক 1 পার্টিশন তৈরি করেছে, যা সহজ ছিল মুছে দিন.

সেখান থেকে নতুন পার্টিশন তৈরি করাও সহজ ছিল, সরাসরি-অগ্রগামী উপায়ে।

অর্থাত

f3probe --destructive --time-ops /dev/sdb
# Now we know only 1 partition exists on /dev/sdb
#    which is /dev/sdb1
#
# Unmount that partition
umount /dev/sdb1

#
# Delete that single partition
parted /dev/sdb rm 1

#
# Now you can create new partitions
# i.e. parted /dev/sdb mkpart primary fat32 1049K 15.8G
# 
# Update /etc/fstab before rebooting....

0

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

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

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