Linux файлова система

Операционните системи съхраняват данни на диск, използвайкифайлови системи. Класическата файлова система представя данни под формата на вложенидиректории (наричани още папки), които съдържатфайлове 1 . Една от директориите е "върхът" на файловата система (и технически казано - "коренът" 2 ), тя съдържа (или, ако желаете, расте от нея) всички други директории и файлове.

Ако твърдият диск е разделен на дялове, тогава на всеки дял се организира отделна файлова система със собствен корен и структура на директория (в края на краищата дяловете са напълно изолирани един от друг).

В Linux основната директория се нарича много кратко - "/". Пълните имена (пътища) на всички други директории се получават от "/", към който имената на последователно вложени директории се добавят отдясно. Имената на директориите в пътя също са разделени със знака "/" ("наклонена черта"). Например записът /home се отнася до директорията "home" в главната директория ("/"), а /home/user се отнася до директорията "user" в директорията "home" (която от своя страна е в главната директория) 3 . Изброените по този начин директории, завършващи с името на файла, сапълният път към файла.

Относителният път се изгражда по същия начин като пълния път - чрез изброяване през "/" на всички имена на директориите, срещани при преместване към желаната директория или файл. Има само една съществена разлика между пълния път и относителния път: относителният път започва от текущата директория, докато пълният път винаги започва от основната директория. Относителният път на всеки файл или директория във файловата система може да има всякаква конфигурация: за да стигнете до файла, който търсите, можете да се придвижите както към основната директория, така и извън нея. Linux прави разлика между пълно и относителноПътят е много прост: ако името на обекта започва с "/" - това е пълният път, във всеки друг случай - относителен.

Монтаж

Винаги има само една главна директория в Linux и всички останали директории са вложени в нея, т.е. за потребителя файловата система е едно цяло 4 . Всъщност различни части на файловата система могат да бъдат разположени на напълно различни устройства: различни дялове на твърдия диск, на различни сменяеми носители (лазерни дискове, флопи дискове, флаш карти), дори на други компютри (с достъп през мрежа). За да се изгради едно дърво с един корен от тази ферма, се използва процедуратаmount.

Монтирането е връзка към една от директориите на цяла файлова система, разположена някъде на друго устройство. Тази операция може да се разглежда като "присаждане" на клон върху дърво. Монтирането изисква празна директория - тя се наричаточка на монтиране. Всяка директория може да служи като точка на монтиране, няма ограничения за това в Linux. С помощта на командата mount декларираме, че в дадената директория (засега празна) трябва да покажем файловата система, налична на такова и такова устройство или в мрежата. След тази операция всички тези файлове и директории, които са на съответното устройство, ще се появят в директорията (точка на монтиране). В резултат на това потребителят може дори да не знае на кое устройство кои файлове се намират.

Свързана по този начин („монтирана”) файлова система може да бъде прекъсната по всяко време -unmount (за това има специална команда umount), след което директорията, в която е била монтирана, отново ще бъде празна.

За Linux най-важната еосновната файлова система (основна файлова система). Тогава беше за неявсички други файлови системи на други устройства ще бъдат свързани (монтирани). Обърнете внимание, че основната файлова система също е монтирана, но не към друга файлова система, а към "самия Linux", като "/" (основната директория) служи като точка на монтиране. Следователно, когато системата се зарежда, основната файлова система се монтира първа, а когато бъде спряна, се демонтира (последна).

Потребителят обикновено не трябва да монтира и демонтира ръчно: когато системата се стартира, всички устройства, които съхраняват части от файловата система, ще бъдат монтирани, а когато системата бъде спряна (преди изключване), всички те ще бъдат демонтирани. Файловите системи на преносими носители (лазерни дискове, флопи дискове и т.н.) също се монтират и демонтират автоматично - или при свързване на носителя, или при достъп до съответната директория.

Стандартни директории

Основната директория на Linux система обикновено съдържа само поддиректории със стандартни имена. Освен това не само имената, но и типът данни, които могат да попаднат в определена директория, също се регулират от стандарта 5 . Този стандарт е доста последователен във всички Linux системи: например, във всеки Linux винаги ще намерите /etc , /home , /usr/bin и т.н. директории и можете доста точно да предвидите какво точно има в тях.

Стандартното местоположение на файловете позволява както на човек, така и на програма да предвиди къде се намира този или онзи компонент на системата. За човек това означава, че той може бързо да навигира във всяка Linux система (където файловата система е организирана в съответствие със стандарта) и да намери това, от което се нуждае. За програмите стандартното местоположение на файла е възможността за организиране на автоматично взаимодействие между различникомпоненти на системата.

Опции за монтиране

Когато извършвате операция по монтиране, включително избиране на точка на монтиране по време на инсталиране на Linux система, можете да промените свойствата на монтираната файлова система. За да направите това, трябва да предоставите на помощната програма за монтиране една или повече опции. Има редица опции за монтиране, поддържани от всички файлови системи. Има опции, специфични за една конкретна файлова система. За повече информация относно опциите за монтиране вижте ръководството за помощната програма за монтиране ( mount(8) ).

1File е област с данни със собствено име.

2Тази директория се наричаосновна директория, защото служи като корен на дървото на файловата система (в математическия смисъл на думите "дърво" и "корен").

3 Много подобен начин за запис на пълния път се използва в системите DOS и Windows, с тази разлика, че главната директория се обозначава с буквата на устройството, последвана от двоеточие, а знакът "\" ("наклонена черта") се използва като разделител.

4Това е различно от технологията, използвана в Windows или Amiga, където всяко устройство, което има файлова система, има своя собствена основна директория, обозначена с буква, като "a", "c", "d" и т.н.