Ვისწავლოთ Linux ბრძანება - fdisk

სახელი

fdisk - განაწილება მაგიდა მანიპულატორი Linux

სინოფსისი

fdisk [-u] [-b sectorsize ] [-C cyls ] [-H ხელმძღვანელები ] [-S სექტორის ] მოწყობილობა

fdisk -l [-u] [ მოწყობილობა ... ]

fdisk -s დანაყოფი ...

fdisk -v

აღწერა

მყარი დისკების შეიძლება დაყოფილი ერთ ან უფრო ლოგიკური დისკების მოუწოდა დანაყოფები . ეს განყოფილება აღწერილია დისკის სექტორში 0-ის დანაყოფი ცხრილში .

BSD- ში მსოფლიოს ერთი დისკუსია "დისკზე" და "დისკლაბელს".

Linux- ს უნდა ჰქონდეს მინიმუმ ერთი დანაყოფი, კერძოდ, მისი ფაილური სისტემისთვის. მას შეუძლია გამოიყენოს swap ფაილები და / ან სვოპ დანაყოფები, მაგრამ ეს უკანასკნელი უფრო ეფექტურია. ასე რომ, როგორც წესი, ერთი მინდა მეორე Linux დანაყოფი მიძღვნილი როგორც swap დანაყოფი. Intel- ის თავსებადი აპარატურის შესახებ, BIOS- ს, რომელიც სისტემების ჩექმებს შეეძლება, მხოლოდ დისკის პირველი 1024 ცილინდრებისთვის. ამდენად, მსხვილი დისკების მქონე ადამიანებს ხშირად ქმნიან მესამე დანაყოფი, მხოლოდ რამდენიმე მბ დიდი, როგორც წესი, დამონტაჟებულია / boot , შესანახად კერნელი იმიჯი და რამდენიმე დამხმარე ფაილი საჭიროა ჩატვირთვის დროს, რათა დარწმუნდეთ, რომ ეს პერსონალია ხელმისაწვდომი BIOS- ზე. შეიძლება არსებობდეს უსაფრთხოების, გამარტივებული ადმინისტრაციისა და სარეზერვო მიზეზები, ან გამოიყენოთ მეტი დანაყოფების მინიმალური რაოდენობა.

ამოიღეთ ბეჭდვითი საკითხები, დროის დაზოგვა ბეჭდვითი რიგის მართვის პროგრამული უზრუნველყოფა.

fdisk (პირველი ფორმის invocation) არის მენიუ ორიენტირებული პროგრამა შექმნა და მანიპულირება დანაყოფი მაგიდები. ეს გულისხმობს DOS ტიპის დანაყოფების ცხრილებს და BSD ან SUN ტიპის დისკლაბელს.

მოწყობილობა , როგორც წესი, ერთ-ერთია:

/ dev / hda / dev / hdb / dev / sda / dev / sdb

(/ dev / hd [ah] for IDE დისკები, / dev / sd [ap] for SCSI დისკები, / dev / ed [ad] for ESDI დისკები, / dev / xd [AB] ამისთვის XT დისკები). მოწყობილობის სახელი ეხება მთელს დისკს.

დანაყოფი არის მოწყობილობის სახელი, რომელსაც მოჰყვება დანაყოფის ნომერი. მაგალითად, / dev / hda1 არის პირველი დანაყოფი პირველი IDE ხისტი სისტემაში. დისკები შეიძლება ჰქონდეს მდე 15 დანაყოფი. იხილეთ აგრეთვე /usr/src/linux/Documentation/devices.txt .

BSD / SUN ტიპის დისკლაბელს შეუძლია აღწეროს 8 ტიხრები, რომელთა მესამედი უნდა იყოს `მთელი დისკის 'დანაყოფი. არ დაიწყოთ დანაყოფი, რომელიც იყენებს პირველ სექტორს (როგორც სვოპ დანაყოფს) ცილინდრიან 0-ში, რადგან ეს განადგურდება დისკლაბელს.

IRIX / SGI ტიპის დისკლაბელს შეუძლია აღწეროს 16 ტიხარი, რომლის მეთერთმეტეც უნდა იყოს მთელი "მოცულობის" დანაყოფი, ხოლო მეცხრე უნდა იყოს "volume header". მოცულობა ჰედერი ასევე დაფარავს დანაყოფის ცხრილს, ანუ იწყება დაბლოკვის ნულოვანი და ვრცელდება ნაგულისხმევი ხუთი ცილინდრიანი. დარჩენილი სივრცე შეიძლება გამოყენებულ იქნას სათაურის სათაურების სათაურში. არ შეიძლება დანაყოფების გადაფარვა ხმის თავით. ასევე არ შეიცვლება მისი ტიპი და გააკეთეთ გარკვეული ფაილური სისტემა, რადგან დაკარგავს დანაყოფის ცხრილს. გამოიყენეთ ეს ტიპის ეტიკეტი მხოლოდ Linux- ში IRIX / SGI მანქანების ან IRIX / SGI დისკის Linux- ზე მუშაობისას.

DOS ტიპის დანაყოფი მაგიდა შეიძლება აღწეროს შეუზღუდავი რაოდენობის დანაყოფები. სექტორში 0 არსებობს 4 განყოფილების აღწერილობა ("პირველადი"). ერთი ეს შეიძლება იყოს გაფართოებული დანაყოფი; ეს არის ლოგიკური დანაყოფების ჩატარების ყუთი, სადაც აღინიშნება დარგთა დაკავშირებული სიაში აღწერილი დებულებები, თითოეული წინა ლოგიკური დანაწილების წინ. ოთხი ძირითადი დანაყოფი, რომელიც დღემდე ან არ არის, მიიღებთ ნომრებს 1-4. ლოგიკური ტიხრები დაიწყება 5-დან.

DOS- ის ტიპის დანაყოფის ცხრილში თითოეული დანაყოფის საწყისი ოფციტი და ზომა ინახება ორ გზით: როგორც სექტორის აბსოლუტური რიცხვი (32 ბიტიდან) და ცილინდრების / მეთაურთა / სექტორის სამჯერ (მოცემულია 10 + 8 + 6 ბიტი). ყოფილი OK - 512-ბიტიანი სექტორებით, ეს 2 ტუბერკულოზზე მუშაობს. ამ უკანასკნელს ორი განსხვავებული პრობლემა აქვს. უპირველეს ყოვლისა, ამ C / H / S დარგების შევსება შეიძლება მხოლოდ მაშინ, როდესაც ხელმძღვანელების რაოდენობა და სექტორის რაოდენობა ცნობილია. მეორეც, მაშინაც კი, თუ ჩვენ ვიცით, რა რიცხვი უნდა იყოს, 24 ბიტი, რომელიც ხელმისაწვდომი არ არის საკმარისი. DOS იყენებს C / H / S მხოლოდ, Windows იყენებს ორივე, Linux არასოდეს იყენებს C / H / S.

თუ შესაძლებელია, fdisk ავტომატურად მიიღებს დისკის გეომეტრიას. ეს არ არის აუცილებელი ფიზიკური დისკის გეომეტრია (სინამდვილეში, თანამედროვე დისკები ნამდვილად არ ჰგავს ფიზიკურ გეომეტრიას, რა თქმა უნდა, არ არის რაღაც, რაც შეიძლება აღწერილია მარტივი ცილინდრების / მეთაურებისა / სექტორების სახით), მაგრამ არის დისკი გეომეტრია, რომელსაც MS-DOS იყენებს დანაყოფის ცხრილისთვის.

როგორც წესი, ყველაფერი კარგად ხდება, და პრობლემა არ არის, თუ Linux არის ერთადერთი სისტემა დისკზე. თუმცა, თუ დისკი უნდა იყოს გაზიარებული სხვა ოპერაციულ სისტემებთან, ეს ხშირად კარგი იდეაა, რომ სხვა ოპერაციული სისტემისგან fdisk- ის შექმნა მინიმუმ ერთი დანაყოფი. როდესაც Linux boots გამოიყურება დანაყოფი მაგიდა, და ცდილობს დავაკანონ, რა (ყალბი) გეომეტრია საჭირო კარგი თანამშრომლობა სხვა სისტემები.

როდესაც დანაყოფის მაგიდა იბეჭდება, თანმიმდევრულობის შემოწმება ხორციელდება დანაყოფი ცხრილის ჩანაწერებზე. ეს შემოწმება ადასტურებს, რომ ფიზიკური და ლოგიკური დაწყების და საბოლოო წერტილები იდენტურია და დანაყოფი იწყება და მთავრდება ცილინდრიანი საზღვარზე (გარდა პირველი დანაყოფისა).

MS-DOS- ის ზოგიერთი ვერსია ქმნის პირველ დაყოფას, რომელიც არ იწყება ცილინდრიანი საზღვრებზე, მაგრამ სექტორის 2 სექტორზე. ცილინდრიანი 1-ში დაწყებული ტიპები ვერ დაიწყება ცილინდრიანი საზღვარზე, მაგრამ ნაკლებად სავარაუდოა, რომ თქვენს კომპიუტერში OS / 2 გაქვთ.

Sync () და BLKRRPART ioctl () (ხელახლა დისკის დანაყოფი მაგიდა) ხორციელდება, სანამ გამორთული მაგიდა განახლდება. დიდი ხნის წინ გამოყენებული იყო fdisk- ის გამოყენების შემდეგ გადატვირთვისთვის. მე არ მგონია, რომ ეს ასეა - მართლაც, გადატვირთვა ძალიან სწრაფად შეიძლება გამოიწვიოს არარსებული წერილობითი მონაცემების დაკარგვა. გაითვალისწინეთ, რომ ორივე კერნელი და დისკის აპარატი შეიძლება ბუფერული მონაცემები.

Dos 6.x გაფრთხილება

DOS 6.x FORMAT ბრძანება გამოიყურება გარკვეული ინფორმაციის დანაყოფის მონაცემთა არეალის პირველ სექტორში და ამ ინფორმაციას უფრო საიმედოდ მიიჩნევს, ვიდრე დანაყოფის ცხრილის შესახებ ინფორმაცია. DOS FORMAT DOS FDISK- ის მოსალოდნელია, თუ რა ზომის შეცვლისას ხორციელდება დანაყოფის მონაცემთა არეალის პირველი 512 bytes. DOS FORMAT შეისწავლის დამატებით ინფორმაციას, თუნდაც / U დროშა მიენიჭოს - ვთვლით, რომ ეს შეცდომა DOS FORMAT- სა და DOS FDISK- ში.

ქვედა ხაზი არის ის, რომ თუ თქვენ იყენებთ cfdisk ან fdisk- ს DOS დანაყოფის ცხრილის ზოლის შესაცვლელად, ასევე უნდა გამოიყენოთ dd , რომ ეს დანაყოფის პირველი 512 ბაიტი გამოიყენოთ DOS FORMAT- ის დანაყოფამდე. მაგალითად, თუ იყენებთ cfdisk- ს, რომ / dev / hda1- ისთვის DOS დაყოფის ცხრილის შესვლის შემდეგ, მაშინ (fdisk ან cfdisk- ის შემდეგ და Linux- ის გადატვირთვის შემდეგ, რომ დანაყოფის ცხრილის ინფორმაცია მოქმედებს) გამოიყენეთ ბრძანება "dd if = / dev / zero of = / dev / hda1 bs = 512 count = 1 "ნულოვანი პირველი 512 bytes დანაყოფი.

თუ თქვენ იყენებთ dd ბრძანებას, რადგან მცირე ტიპოს შეუძლია თქვენი მონაცემები თქვენს დისკზე უსარგებლო იყოს.

საუკეთესო შედეგების მისაღებად, ყოველთვის უნდა გამოიყენოთ OS- ის კონკრეტული დანაყოფის პროგრამა. მაგალითად, თქვენ უნდა გააკეთოთ DOS ტიხრები DOS FDISK პროგრამით და Linux დანაყოფებით Linux fdisk ან Linux cfdisk პროგრამით.

პარამეტრები

-b სექტორში

მიუთითეთ დისკის სექტორის ზომა. მართებული მნიშვნელობებია 512, 1024, ან 2048. (ბოლო კერნელი იცნობს სექტორის ზომას, გამოიყენეთ ეს მხოლოდ ძველი კერნებით ან კერნელის იდეების გადალახვა.)

-C ცილები

განსაზღვრეთ დისკის ცილინდრების რაოდენობა. მე არ ვიცი, რატომ სურს ამის გაკეთება.

-H ხელმძღვანელები

მიუთითეთ დისკის ხელმძღვანელები. (არა ფიზიკური რიცხვი, რა თქმა უნდა, მაგრამ დანაყოფი ცხრილებისთვის გამოყენებული რიცხვი). გონივრული მნიშვნელობებია 255 და 16.

-S სექციები

მიუთითეთ დისკის რაოდენობის თითო სექტორის რაოდენობა. (არა ფიზიკური რიცხვი, რა თქმა უნდა, მაგრამ დანაყოფი ცხრილებისთვის გამოყენებული რიცხვი). გონივრული ღირებულებაა 63.

-l

მიუთითეთ დანაყოფის ცხრილები მითითებული მოწყობილობებისთვის და შემდეგ გაითიშეთ. თუ მოწყობილობები არ არის მოცემული, რომლებიც გამოიყენება / proc / დანაყოფებში (თუ არსებობს) გამოიყენება.

-u

როდესაც დანაყოფის ცხრილების ჩამონათვალია, ზომები სეგმენტებში ნაცვლად ცილინდრების ნაცვლად.

- დანაყოფი

დანაყოფის ზომა (ბლოკებში) დაბეჭდილია სტანდარტული გამომავალი.

-ვ

საბეჭდი ვერსია ნომერი fdisk პროგრამა და გასასვლელი.