Пътища и директории в LINUX

В Linux, както и във всяка друга операционна система, файловете и директориите са организирани в йерархична структура. Пътеките се използват за идентифициране на файлове и директории в тази структура.

Linux операционната система предлага мощни инструменти за управление на файлове и директории. В тази статия ще разгледаме основните понятия и техники за работа с пътища и директории в Linux.

Основни понятия

Коренова Директория

Кореновата директория в Linux се обозначава с символа "/", и тя е началната точка на цялата файлова система. Всички файлове и директории са подредени под нея.

Абсолютни и относителни пътища

Абсолютният път започва от кореновата директория, например, "/home/user/documents". Относителният път започва от текущата директория и може да бъде "documents" или "../folder/file", където ".." означава родителската директория.

Команди за Навигация

  • pwd: Показва текущата директория.
  • cd: Сменя текущата директория.
  • ls: Извежда съдържанието на директорията.
  • ls -l: Показва подробна информация за файловете и директориите.
  • ls -a: Извежда скритите файлове и директории.

Пример: cd /home/user/documents – сменя текущата директория на "/home/user/documents".

Създаване и изтриване на директории

Командата mkdir създава нова директория без файлове в нея

$ mkdir Test

За изтриване на директория без файлове се използва команда rmdir:

$ rmdir OldTest

За изтриване на директории с файлове се използва командата rm с опция -r (recursive)

$ rm -r OldTest

Скрити файлове

Файловете, имената на които започват точка са разглеждани като „скрити“. Те обикновено се използват като конфигурационни файлове и не се извеждат с команда ls. Командата:

$ls -a

извежда всички файлове, включително и скритите.

Директориите в LINUX

Линукс, както всяка друга операционна система има определена структура на директориите и съответно техните функции. Основно Линукс има два типа директории: системни и потребителски. Системни са тези директории, които се създават при инсталирането на операционната система или в тях се съдържат файловете, на допълнително инсталираните приложения.

Такива например са директориите /dev, /bin, /lib, /var/ и др. Потребителски са директориите, които се създават от потребителите с основна цел да пазят тяхната собствена информация. Такива са директориите намиращи се в /home.

Особеното тук, е че в /home всяка подпапка обикновено е с името на потребителя, чиято собственост е. Казвам в повечето случаи, защото в Линукс ВСИЧКО Е КОНФИГУРИРУЕМО, което само по себе си е нож с 2 остриета .

Oсновни папки и техните функции

/ – Това е основната папка ако мога така да се изразя, в която един вид се намират всички останали папки

/bin – съдържа основните програми на операционната система, без които тя не би функционирала правилно. Повечето програми от тази директория може да се изпълняват от всички потребители.

/boot – съдържа ядрото на операционната система, както и други файлове, необходими за правилното функциониране и зареждане на самото ядрото.

/dev – съдържа файловете отговарящи за работата и разпознаване на самоте хардуерни. Вътре файловете са с права само за четене от потребителите.

/etc – съдържа глобалните конфигурационни файлове на операционната система и допълнително инсталираните програми и пакети, естествено някои програми не ползват тази папка.

/home – съдържа домашните директории на потребителите. Тук за всеки потребител се създава отделна директория в която може да се съхраняват конфигурационни файлове или документи от различен тип. Специфичното в тези директории е начина на разграничаването на конфигурационните файлове и поддиректории от обикновените, а именно чрез добавяне на точка в началото им. Повечето файлови мениджъри скриват файл или директория, който започва с точка.

/lib – директорията съдържа най-важните споделени библиотеки на операционната система – glibc-solibs. Тези библиотеки се наричат споделени (shared object), защото повечето програми ги използват при изпълнението си.

/lib/modules – Tук се съхраняват модулите на ядрото, т.е. драйверите на операционната система. Ако Линукс системата има повече от 1 ядро, то в тази папка се създават поддиректории с номера на всяко едно инсталирано ядро.

/mnt (от mount) – много важна системна директория. В тази папка излизат всички външни устройства за съхранение на данни. Поне при Debian е така. За пореден път – всичко е конвертируемо.

/opt – тук повечето дистрибуции инсталират графичните среди като KDE и GNOME.

/proc – това е специална директория в която няма реални файлове. Посредством тази директория вие имате достъп до различни параметри на ядрото, както и до различна информация пряко предоставяна от ядрото на операционната система.

/root – домашната директория на /root pотребителят, който е "върховен" потребител за всяка Linux/Unix система. За обикновения потребител тази директория е заключена.

/sbin – важна системна директория с множество програми за управление на операционната и файловата система. Тази директория не е включена в пътя по подразбиране на обикновения потребител. Всички програми в тази директория искат root привилегии, за да работят.

/tmp – директория в която програмите записват временните си файлове. Тя има неограничен достъп за всички потребители. В нея обаче може да има поддиректории създадени от програми, които да са недостъпни за обикновените потребители.

/usr – Съхранява повечето инсталирани програми, помощната информация и др.

/usr/X11R6, /usr/X11 – съдържа файловете на графичния сървър, шрифтовете му и неговите библиотеки.

/usr/bin – съдържа бинарните файлове на инсталираните програми, които не са важни за нормалното функциониране на операционната система.

/usr/doc – част от документацията на програмите, както и самата вградена инструкция, за дистрибуцията, която ползвате.

/usr/include – тази директория е необходима само ако ще се инсталират програми от изходен код. Тук се пазят заглавните C файлове на инсталираните библиотеки и програми, които са необходими за инсталиране на други програми.

/usr/info – част от документацията на Линукс. Достъпа до нея се осъществява чрез специална програма – info.

/usr/local – директория в която по подразбиране се инсталират програмите компилирани от изходен код. Тази директория копира структурата на /usr.

/usr/lib – важна директория, в която се съхраняват повечето инсталирани библиотеки. Тези библиотеки не са необходими за работата на операционната система, а за работата на допълнително инсталирания софтуер.

/usr/share – също важна директория. Тук програмите инсталират файловете, необходими за тяхната правилна работа.

/usr/src – в тази директория се пази изходният код на Линукс ядрото. Той е необходим само когато ядрото ще се прекомпилира. И тук подобно на /lib/modules може да има код на повече от едно ядро. Те се съхраняват в директории, различаващи се с номера на версията. В директорията /usr/src присъства и линк linux, който сочи към една от директориите съдържащи изходен код.

/var – системна директория съдържаща предимно логове на програмите и система, както и опашка с отложените или предстоящи задачи за автоматично изпълнение. Директория съдържа и друга информация, като пристигнали писма, файлове заключващи дадени процеси и сокети на работещи в момента програми.

Федя Серафиев

Федя Серафиев

Федя Серафиев e собственик на уебсайта urocibg.eu. Той намира удовлетворение в това да помага на хората да решават и най-сложните технически проблеми. Сегашната му цел е да пише лесни за следване статии, така че подобни проблеми изобщо да не възникват.

Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу: