Файлове и директории в Линукс – 2


В предишната публикация се запознахме накратко с файловата система на линукс, остана ни само папката /usr/, това е най-голямата папка и тя има множество подпапки и описанието им ще засегне по общи въпроси.
Името на тази директория идва от user, потребител, в нея са файловете на всички програми, които сме инсталирали, иконите и темите, които ползваме и още други неща.
Много хора питат, къде са инсталираните програми в линукс (очаквайки папка от типа на program files в Windows), краткия отговор е именно директорията /usr/, но принципа е съвсем различен. Като отворим папката виждаме че съдържанието й до голяма степен копира съдържанието на главната директория, имаме /usr/bin/, където са изпълнимите файлове на инсталираните програми, /usr/lib/, където са библиотеките, в /usr/include/ (включвам) се намират файловете, необходими за компилиране на програми, а в /usr/local/ са самите програми, инсталирани от изходен код (сама по себе си тази директория е умалена файлова система). В /usr/src/ се пази изходния код на ядрото (ядрата), той се ползва когато се прекомпилира ядро, но в съвременните дистрибуции, това се налага все по-рядко, в убунту почти никога… В /usr/share/ се намират иконите, темите, курсорите, шрифтовете и още много файлове, които се ползват от всички програми.
Може би се чудите защо е така? Това е така, защото в линукс, за разлика от уиндоус няма регистър. В регистъра стои записано, коя програма къде се намира на диска, какви са и настройките и т.н… и същия този регистър с времето расте и расте и започва да бави операционната система… В линукс регистър няма, при стартиране на приложение (от менюто на лентата, от пряк път и т.н.) се включва програма, наречена linker, той „търси“ изпълнимия файл в директория /bin/ или /usr/bin/, и от изпълнимия файл разбира коя библиотека е нужна и къде се намира, както и къде е файла с настройките. Това е проста и надеждна система, всяко приложение стартира еднакво бързо както първия, така и сто и първия път.
Друг основен въпрос е къде са файловете с потребителските настройки. Как къде – в домашната директория на потребителя, като скрит файл или папка. В линукс скритите файлове и папки започват с точка, например .conkyrc. Всеки файлов браузър в линукс има настройка за показване на скритите файлове и папки. В Nautilus (ако сте с убунту и не знаете кой Ви е браузъра, значи е той. :P) клавишната комбинация е Ctrl+h, ако сте с нещо друго вижте в настройките… Може да си направите папка .fonts, в която да слагате шрифтове, .icons за икони и .themes за теми, тези неща ще са достъпни само за Вас, т.е. ако зададете тема с икони, която е в папка .icons ще си ги ползвате, но ако отворите nautilus като администратор, няма да зареди Вашите икони а тези, които са по подразбиране за дистрибуцията.
Искам да завърша с йерархията в линукс. Кореновият (root) потребител, този който има абсолютната власт, е този, който е инсталирал линукс дистрибуцията, той не се появява повече никога, но първия потребител, който той създава е с права на супер потребител (su – super user), той понякога се бърка с root потребителя, а не трябва. Супер потребителя има правото, след въвеждане на парола временно да изпълнява правата на администратор (при липса на активност, след няколко минути su става отново обикновен потребител, и при опит да администрира, ще му бъде искана парола отново). Всеки потребител си има домашна директория, която носи името му, там той има права да създава, изпълнява, трие и въобще да прави, каквото си иска, но само там!!! За да извършва дейности на други места той трябва да има права за това. А права се дават (и вземат) от суперпотребителя.
Всеки файл и директория имат три типа права на достъп- за четене (read, отбелязва се с -r), запис (write, -w) и изпълнение (execute, -x). За да можеш да определяш права на файл или папка, трябва да си техен собственик. Ако не си – имаш достъп дотолкова, доколкото собственика е определил и единствения, който може да промени това е потребителя създал файла/папката или администратора. И няма начин да се прескочи това, защото задължително условие за създаване на потребител е паролата. В линукс всеки потребител има парола, няма начин да се създаде потребител без парола. Мисля се досещате че именно строгата йерархия на потребителите и ясно дефинирате права върху файловете и папките правят линукс изключително надеждна и сигурна операционна система. А липсата на регистър е едно от нещата, които правят линукс бърз и стабилен. Има още много да се пише, но друг път…

Благодаря за отделеното време, надявам се че бях полезен и интересен. За да напиша, всичко това и да звуча умно си помогнах със сайта uroci.net и незавършената книга на Тони Тошев.

Advertisements

One comment on “Файлове и директории в Линукс – 2

  1. Браво, страхотна статия в предната част забравих да те поздравя. Само да напомня да промениш няколко неща:

    – usr – unix system resourses;
    – външни –> периферни;
    – FHS задължителен за всяка POSIX система, в него надълго е описано всичко това така кратко и приятно пресъздадено тук;
    – mount се означава с българския термин монтиране.

    Може да добавиш, че в /mnt се намират нещата, който ръчно сме монтирали или описали в /etc/fstab.

    По между другото в ГНУ/Линукс има регистър, но не е задължителен. Това е така наречения gconf и въведен с GNOME 2. Хубавото е, че се отнася само до самия него и програмите му.

    Отново поздравления за добрата работа!

Вашият коментар

Попълнете полетата по-долу или кликнете върху икона, за да влезете:

WordPress.com лого

You are commenting using your WordPress.com account. Log Out / Промяна )

Twitter picture

You are commenting using your Twitter account. Log Out / Промяна )

Facebook photo

You are commenting using your Facebook account. Log Out / Промяна )

Google+ photo

You are commenting using your Google+ account. Log Out / Промяна )

Connecting to %s