Помощни програми за маркиране
Нека започнем с fdisk : това беше fdisk, който беше най-страшен в старите дни от начинаещите потребители на Linux, предлагайки приятелски алтернативи като Disk Dru >
Произходът на fdisk се губи в мъглата на времето, връщайки се към дните на първия UNIX за компютърната архитектура - доколкото разбирам, не е имало нужда от него преди и помощни програми като disklabel или bsdlabel бяха основните инструменти за етикетиране на дискове. Също така не можах да разбера кога тази помощна програма се появи в Linux. Мога само да предполагам, че в много ранните етапи на създаване на рамкиращи помощни програми за нейното ядро - т.нар. помощни програми за linux. fdisk вече е част от пакета linux-utils-ng.
Като начало трябва да запомните, че стартирането на командата fdisk във всякакво качество, дори само за получаване на информация за диска, е възможно само с права на суперпотребител, които трябва да предоставите сами по какъвто и да е начин, например чрез su или sudo .
Ако командата fdisk е дадена без опции или аргументи, тя ще отпечата кратко резюме на нейното използване:
Аргументът на командата е името на файла на устройството - целия физически диск. Тъй като в съвременните версии на ядрото на Linux всички устройства, независимо от техните интерфейси (PATA, SATA, SCSI, SAS, USB), се дефинират от една подсистема ATA-SCSI, всъщност тези имена ще изглеждат като / dev / sda, / dev / sdb и т.н.
Значението на опциите на командата fdisk е следното:
- l не предписва никакви действия, а само показва информация за диска и неговите дялове, ако има такива;
- b задава размера на блока - единици дисково пространство; по подразбиране, без да се посочва тази опция, той е равен на физически блок (512 байта), други възможни стойности са кратни на неговия размер - 1024, 2048 или 4096 байта;
- u изпълнява fdisk, което е опцияпо подразбиране.
Първо, нека разгледаме информационната функция fdisk, за която я изпълняваме по следния начин:
Отговорът ще бъде нещо подобно:
Ако аргументът на командата е пропуснат, тогава ще се покаже подобна информация за всички физически дискове на тази машина: първо обща информация за диска, включително неговия размер, брой глави, сектори и цилиндри, а след това за всеки дял, съществуващ на диска, са посочени неговият първи и последен цилиндър (дялове, които не заемат напълно последния цилиндър, са маркирани със символа +), размер в блокове (физически или посочени от опция b), идентификатор на типа на файловата система и името му.
За всяко манипулиране на дискови дялове, командата fdisk трябва да се изпълни в интерактивен режим:
Какво може да се направи без опции, но посочването на аргумента тук ще бъде задължително.
След това получаваме на наше разположение определен интерфейс, който изисква въвеждането на определена команда, чието изпълнение се свежда до отговор на няколко въпроса. Пълен списък на наличните команди може да бъде намерен в отличната помощна система, извикана от командатаm.
Например командатаp ще покаже текущия списък с дялове на диска, като посочи техния тип и размер. Освен това дяловете могат да бъдат създадени (с помощта на командатаn ) или изтрити (с помощта на командатаd ), но преди командата за запис на промените (w ) няма да последват необратими действия, които биха могли да унищожат съществуващото преди това маркиране (и съответно файловите системи и данните, прикачени към него): неуспешно създадените дялове могат да бъдат изтрити и на тяхно място да бъдат създадени нови. И по всяко време с командатаq можете да излезете от програмата без никакви последствия.
При създаване на дял с помощта на fdisk първо се определя дали той ще бъде първичен(основен) или разширен (разширен). Разгледайте първо първия случай. Когато е по-нататък просто се посочва номерът на секцията (от 1 до 4). В рамките на тези граници номерът може да бъде всякакъв - можете първо да създадете дял 2, а след това 1 или дори да разпределите целия диск под дял 4. Номерът на дяла ще остане за векове: той ще идентифицира файла на устройството, съответстващ на създадения дял (например /dev/sda2 или /dev/sdb1).
След това се определя първоначалният цилиндър на дяла, който ще се създаде (по подразбиране първият свободен цилиндър, за празен диск само първият). Никой обаче не си прави труда да посочи друг цилиндър като начален (на непрекъснато пространство, разбира се). И след това - последният цилиндър (по подразбиране - последният физически на неразделеното дисково пространство) или просто размерът на дяла в мегабайти, например+300M (необходими са както +, така и M, в противен случай размерът на диска ще се окаже много странен). Когато посочвате размер в единици, различни от цилиндри, той винаги ще бъде закръглен (съгласно обичайните правила за закръгляване) до най-близкото цяло число, кратно на последното. Така че не бива да се изненадвате, ако вместо желания дял от 20 MB се появи дял от 16 MB, а вместо дял от 22 MB се появи дял от 24 MB.
Когато създавате разширен дял, първо всичко се случва по абсолютно същия начин - задаване на номера (очевидно в същия диапазон 1-4), посочване на началния цилиндър и крайния (или - обем в мегабайти). Това обаче все още е половината битка, трябва да разделите разширения дял на логически дялове. И следователно със следващата команда за създаване на дял вече ще ни бъде предложен избор между основен (ако броят на последния все още не е изчерпан) и логически (в края на краищата вторият разширен дял не може да бъде създаден с помощта на fdisk):
Освен това логическият дял се създава по същия начин като основния.
Завсеки нов дял (първичен или логически), създаден от fdisk, ще използва по подразбиране ИД на родната файлова система на Linux (83 шестнадесетичен). Разширената секция също автоматично получава правилния идентификатор на своя тип - 5. Тези типове обаче не са нещо неизменно. Освен това, поне в един случай, когато създавате суап дял, промяната на типа на дяла е задължителна. Това също ще е необходимо за използване на технологии като софтуерен RAID или LVM, които ще бъдат обсъдени по-късно.
Това става с командатаt, след което се изисква номерът на дяла, чийто тип ще се променя, а след това и идентификаторът на желания тип. Пълен списък на поддържаните типове файлови системи (и техните идентификатори) може да бъде показан с командатаl. Позволете ми да ви напомня, че идентификаторът на типа на файловата система на дяла в никакъв случай не е файловата система, която се намира на него. И на основния дял на Linux, както подчертава името, можете да създадете всяка файлова система измежду поддържаните от Linux като естествени (ext2 / ext3, ext4, XFS, ReiserFS, JFS, btrfs, NILFS2).
Теоретично, fdisk ви позволява да присвоите идентификатор на типа на създадения дял в почти всяка възможна файлова система - от FAT12 до Free-, Open- и NetBSD. Самите файлови системи обаче не се създават с помощта на fdisk и следователно за дялове от чужд тип по-късно ще трябва да бъдат форматирани (от гледна точка на DOS): или в естествената среда (например, използвайки командата FORMAT DOS за FAT дял), или със специални команди като mkfs, които ще бъдат обсъдени в следващата глава.
Това, надявам се, е достатъчно, за да осъзнаем голямото предимство на fdisk - изключителна гъвкавост: можете да дефинирате дял със строго определен размер ипозиционирайте го точно върху диска. Или запазете неразделено пространство навсякъде на устройството, заобиколено от двете страни от създадените дялове.