Сайт создан в 1996 году

Научно-исследовательская клинико-диагностическая лаборатория
ВHMУ им.Н.И.Пирогова
Института химии поверхности НАН Украины.
 Избранные

Поиск
 o Google
 o PubMed

По сайту
 o Главная
 o Рабочие ссылки
 o Portable Soft
 o Lab Soft
 o Linux & Co
 o HPLC

Кафедра
 o Главная
 o Эл.журнал
 o Google Scholar

 

 Counters

Kiev



Файловая система Линукса

(содрано, не помню у кого)

    Oдно из первых препятствий, на которое натыкается новичок в Linux, это загадочная и пугающая файловая система. Где, к примеру, ободряющий значок Мой компьютер? Что такое /usr? Где C:\, A:\ и прочие привычные обозначения используемых устройств? К счастью, файловая система Linux сложна лишь на вид – и большую ее часть можно без проблем проигнорировать, если только вы не собираетесь стать хакером Linux или системным администратором.

    Составить представление о структуре вашей компьютерной системы вполне возможно, и это определенно стоит сделать. Во-первых, знакомство с файловой системой поможет вам избежать случайных повреждений (т.е. удаления жизненно важного для системы файла без возможности восстановления), да неплохо и знать, где искать, если загруженный файл или пиктограммка приложения не появились в ожидаемом месте.

    Итак, в путешествие по файловой системе Linux.

    Файловая система просто описывает, как ваш компьютер организует различные папки и файлы, среди которых присутствуют операционная система, приложения и данные – документы, картинки, музыка и фильмы. Сейчас будет показано, что делают элементы системы, с упором на основные (с точки зрения пользователя), и отмечено, в чем их раскладка сходна или отлична от Windows-аналогов.

    Хотя мы будет исследовать данную структуру преимущественно как пользователь, иногда нам потребуется «стать супером» для полного исследования каталога. В таких случаях следует позаботиться о том, чтобы случайно не изменить жизненно важные файлы: результатом может быть гибель установленной системы. Для получения привилегий суперпользователя откройте терминал и наберите su, затем нажмите Enter и введите пароль root. Затем вы можете открыть Nautilus или Konqueror, для Gnome и KDE соответственно, из командной строки, введя nautilus или konqueror. Если под KDE у вас установлен Krusader (аналог Total Commander'a), то лучше запустить его в режиме суперпользователя из главного меню системы (там, где в Windows кнопка ПУСК).

    Держа это предупреждение в голове, незамедлительно начнем сверху... или снизу…

    Для начала откройте ваш файловый менеджер. В Ubuntu, Fedora или любом другом дистрибутиве на базе Gnome вам необходимо кое-что поменять, прежде чем мы продолжим, поскольку поcледние версии Gnome предпочитают прятать древо файловой системы.

    Для легкой перестройки Gnome, выберите меню Переход, а затем Домашняя папка. Далее подобные операции будут обозначены так: Переход > Домашняя папка. Стандартный способ работы в Gnome предусматривает, что двойной щелчок на каталоге открывает новое окно. Это хорошо при мониторе размером с киноэкран и организаторских способностях, как у колонии муравьев, но большинство из нас очень скоро увязнет. Поэтому выполните Правка > Параметры и выберите вкладку Поведение. Щелкните на флажке с надписью Всегда открывать в окне браузера, а затем нажмите кнопку Закрыть. Теперь закройте браузер файлов и вновь выполните Переход > Домашняя папка. На сей раз менеджер файлов отобразит файлы в главной части окна. По верхнему краю отобразится несколько иконок браузера – Назад, Вперед, Вверх, Обновить и т.д. – а внизу слева появится список различных мест, куда можно перейти. Под панелью инструментов будет так называемая «тропка из хлебных крошек» (помните Мальчика-с-пальчик?). Она отображает маршрут к вашему текущему положению в файловой системе через серию кнопок, на которые можно нажимать. Чтобы переключиться к текстовому отображению пути, нажмите кнопку с иконкой записной книжки у левого края.

    Теперь, после настройки, можно двигаться далее. Дважды щелкните на иконке панели Переход с названием Файловая система. Сразу же заметим, что файловая система Linux имеет единую иерархию. Дискеты, съемные диски и CD, вставляемые в компьютер, становятся частью этой иерархии. Она называется унифицированной файловой системой – в отличие от мира Windows, где эти устройства считаются отдельными, или разделенными, местами в файловой системе.

    Наверху этой иерархии – то есть он содержит все остальные элементы – находится /, так называемый слэш - или корневой каталог (не путайте с /root). Когда мы щелкали на иконке Файловая система, первым появился /. Ниже располагается ряд каталогов (в Ubuntu их 19), хранящих другие каталоги и файлы. Принято, чтобы / содержал только каталоги, но некоторые дистрибутивы размещают в нем пару файлов. Вы не делайте этого!

    /home

    Для большинства из нас /home – самый важный каталог в системе Linux, потому что в нем располагаются домашние папки всех пользователей, имеющихся в системе. Вероятно, там находится все: фотографии, музыка, презентации и документы. Здесь также располагаются файлы настроек конкретного пользователя, вроде тех, что определяют фон рабочего стола, оконные рамки и параметры приложений и данные, связанные с жизнью в сети – история браузера, архив электронных писем и так далее. Каталоги в /home обычно доступны только пользователю, которому принадлежат, и суперпользователю (root, или системному администратору). При первом взгляде на /home/username вы можете не увидеть никаких файлов конфигурации. Дело в том, что они скрыты; но вы можете их «засветить», перейдя в меню Вид и выбрав Скрытые файлы. Тогда окно заполнится гуще, и вы отметите, что все ранее скрытые элементы начинаются с точки (.). Это способ Unix/Linux прятать файлы и каталоги от пользователя, хотя если вы дважды щелкнете по любому из них, они откроются так же, как и обычный.

    Однако будьте осторожны: не трогайте скрытые файлы и папки, если не ведаете, что творите. Часто они содержат важные настройки, и любое некорректное изменение или удаление может серьезно затруднить возможность использования конкретного приложения.

    Здесь есть каталог Desktop; перенесите что-нибудь в него, и оно возникнет на рабочем столе пользователя. Windows-эквивалентом этой папки является C:\Documents and Settings\имя_пользователя\Desktop.

    /root

    Каждый пользователь имеет собственный каталог, и пользователь root – не исключение. Его каталог аналогичен каталогу обычного пользователя и содержит документы и каталог Desktop. Однако он не должен быть особо заполнен документами, потому что рутинные работы пользователь root не выполняет, а значит, в этой учетной записи данным накапливаться не с чего.

    /bin

    Двигаемся дальше. /bin – это сокращение от binaries [двоичные файлы], и здесь вы найдете набор исполняемых файлов с загадочными именами вроде ls, rm, mkdir и rmdir, которые весьма полезны для системных администраторов и продвинутых пользователей. Если вы немного знакомы с командной строкой Linux, то уже сталкивались с этими именами, а те, кто работал только с графической оболочкой, пользовались этими программами, не подозревая об этом. Давайте рассмотрим некоторые их функции.

    Откройте терминал, который обычно находится в меню под именем Терминал или Консоль. Когда он появится на экране, наберите
    mkdir LXF
    В терминале ничего не произойдет, но, открыв менеджер файлов и заглянув в ваш домашний каталог, вы должны увидеть новую папку с именем LXF. Она здесь потому, что терминал по умолчанию открывается в домашнем каталоге, а mkdir – это команда “make a directory” [создать каталог] (то же происходит, если вы щелкаете правой кнопкой мыши в окне и выбираете Создать каталог). Теперь в терминале наберите
    rmdir LXF
    Новый каталог будет удален – как если бы вы после правого на нем выбрали пункт Удалить. Кстати, если вы не хотите ради проверки запускать менеджер файлов, просто наберите ls, и увидите содержимое каталога.

    /sbin

    /bin содержит приложения, необходимые вам для ежедневной работы (пусть вы и не осознаете этого); а /sbin – место, где система Linux хранит элементы, запускаемые в фоновом режиме [а точнее, инструменты, предназначенные для администратора]. Windows-эквивалентом ему может быть каталог C:\Windows\System. Здесь вы можете найти такие программы, как Lilo – загрузчик Linux, fdisk – для работы с различными разделами диска, и все остальное ПО, помогающее в работе системы. Нечего и говорить – что баловство с содержимым этого каталога способно серьезно повредить вашу ОС, поскольку оно жизненно важно для каждого пользователя.

    /usr

   Этот каталог немного странноват, поскольку содержит множество вещей, которым самое бы место прятаться где-то в /bin или /sbin.

   Отличие в том, что эти двоичные файлы более приближены к пользователю. В Windows вы можете видеть подобное в C:\Windows\Program Files (хотя следует помнить, что Windows, в отличие от Linux, не чувствителен к регистру), и если вы хотите вручную запустить приложение, установленное при помощи менеджера пакетов, но не появившееся в меню, то начинать нужно отсюда.

    Внутри /usr много подкаталогов. Их количество и имена зависят от используемого дистрибутива, но всегда имеется /bin для бинарных файлов, lib для файлов библиотек и X11, где вы найдете все для взаимодействия вашего компьютера со внешним миром. Здесь же, внутри каталога /src, располагаются исходные тексты ядра Linux. Можете посмотреть их, но они не очень-то интересны.

    Так же как в /bin и /sbin, хорошей идеей будет перемещаться по этим каталогам осторожно – здесь легко учинить катастрофу [напомним еще раз: проблемы могут возникнуть, только если вы работаете от имени root. Однако, для простого просмотра системных каталогов привилегии суперпользователя обычно не нужны, а обычный пользователь при всем желании не сможет нанести вред /usr и другим системным каталогам].

   /opt

    В стандартной структуре Unix, многие приложения, не являющиеся частью основного дистрибутива, помещаются в /opt, но в Linux он используется не часто. Если вы тщетно искали двоичный файл приложения в различных подкаталогах /usr, то может быть, он расположен где-то здесь [в некоторых дистрибутивах в /opt устанавливаются крупные приложения, такие как KDE, Gnome и OpenOffice.org. Обычно для них создается каталог с подходящим именем, внутренняя структура которого повторяет файловую систему Unix «в миниатюре»: здесь можно найти те же bin, lib и т.п.].

   /etc

    Те же предупреждения верны и для каталога /etc – он содержит многие файлы конфигурации, отвечающие за корректную работу вашего компьютера. Например, здесь находится файл с именем fstab, разъясняющий Linux, как обращаться с различными монтируемыми файловыми системами. В системах на основе Debian в /etc/apt имеется файл sources.list, точно описывающий, откуда системе можно брать новые программы. Одним из наиболее важных подкаталогов здесь – и его регулярно нужно резервировать – это rc.d; он содержит стартовые скрипты системы. Заглянув в каталог, вы увидите, что там больше одного rc.d. На самом деле их семь: rc0.d, rc1.d, rc2.d и так далее. Они соответствуют различным уровням запуска [runlevel], используемым в Linux.

   Что такое уровень запуска? Он определяет количество запускаемых программ: будут ли это текстовые службы или полный графический интерфейс. Например, уровень запуска 1 обеспечивает простейшую реализацию системы (она полезна для поиска неисправностей, но вам вряд ли понравится), тогда как уровень запуска 5 – это полностью графическая загрузка с поддержкой сети, которую вы видите каждый день. Уровень запуска 0 – это выключение [halt], а 6 – перезагрузка. Пожалуй, с уровнями запуска связываться не стоит, но если, допустим, вы захотите перезагрузить машину из командной строки (от имени root), то можете просто набрать:
    init 6

   /mnt

    Если вы вставите в компьютер CD, дискету или подключите переносной диск в USB-порт, то иконка носителя выскочит на рабочий стол или в меню Переход в Gnome так же шустро, как продавец сельской лавочки к покупателю. Теперь вы можете дважды щелкнуть на ней и получить доступ к содержимому при помощи вашего менеджера файлов. Если устройство не появилось там, где ожидалось, лучше всего поискать его в /mnt (от mount). (в моем случае все они выскакивали в /media, вне зависимости от сборки линуха). Это каталог, в котором устройство подключается к иерархии Linux (учтите, некоторые дистрибутивы могут запутать вас, помещая сменные носители вроде CD и DVD в /media). Однако, поскольку мы живем в XXI веке, эти операции не должны требовать дополнитель- ной помощи – ваши диски должны появляться магически.

    Если вы все еще используете двойную загрузку Windows и Linux, то ваши Windows-диски также, скорее всего, появятся в каталоге /mnt. Однако вам следует знать, что хотя большинство дистрибутивов Linux без проблем осуществляют чтение/запись в старой файловой системе Windows FAT32, они не умеют производить запись в файловой системе NTFS, используемой большинством систем XP, хотя NTFS прекрасно поддерживается в режиме чтения. Есть и обходные пути, основанные на свободных программах, что с каждым днем становятся лучше, но пока еще не слишком дружелюбны к начинающим.

    Во время нашего прочесывания файловой системы вы могли отметить, что все рассмотренное нами является файлом. Часть системы, отвечающая за перевод перемещений мыши в движение курсора на экране – это файл, и нечто, информирующее компьютер, сколько пикселей и цветов отображает ваш монитор – тоже... файл.

    Это верно и для Windows, но в системе Linux эти файлы более доступны и полностью поддаются редактированию. В прошлом, большая часть настройки системы состояла в поиске в каком-то Богом забытом каталоге текстового файла с расширением .conf и в последующей его правке от имени пользователя root. Не удивительно, что это казалось маргинальным хобби, и гарантия Debian была такова: если вы сломаете это, вам достанутся обе половины. Теперь большинство дистрибутивов поставляются с набором графических инструментов, преобразующих нажатия кнопок, флажков и манипуляции с полосами прокрутки в значения во все тех же .conf файлах. Но файлы остаются, вот почему современная система Linux пригодна и для новых пользователей, и хакеры ею довольны.

   /dev

    Желающим убедиться, что все в системе является файлом, лучшее всего смотреть именно в этом каталоге. Здесь будет несколько файлов, соответствующих разделам вашего жесткого диска (hda1, hda2), дисководу (fd0), CD (cdrom) и любому другому устройству (/dev – от device [устройство]), подключенному к компьютеру. Но не думайте, что они статичны, только потому, что мы говорим о файлах. Например, все, что записывается в файл /dsp, будет переправлено через вашу звуковую систему на колонки. Чтобы увидеть этот эффект, вы можете взять любой файл, скормить его звуковой системе и услышать, как он звучит. Наберите
    cat /etc/fstab > /dev/dsp
    и услышите некий шум из динамиков (сначала убедитесь, что они не на максимуме!): это речи – интересные и бессмысленные одновременно – текстового файла!

   /proc

    Это странная псевдофайловая система, находящаяся в памяти ОС и потому никогда реально не сохраняемая на физическом устройстве. "proc" происходит от process, потому что она хранит сведения обо всех процессах, запущенных на вашем компьютере. Процессами может быть все что угодно: от открытого web-браузера до работающего демона NTP, синхронизирующего часы вашего ПК с сервером в сети. То есть это динамический каталог, новая версия которого создается при каждой загрузке [на самом деле, содержимое каждого файла и каталога в /proc определяется непосредственно в момент их чтения и определяет самую свежую на тот момент информацию о состоянии вашей системы].

    /var

    Этот каталог является пристанищем данных, отправляемых из приложений на принтер. Интересного тут мало [спул принтера – лишь малая часть обязанностей каталога /var. В нем также хранятся системные журналы (/var/log), сведения о запущенных демонах (/var/run) и принятые сервером почтовые сообщения (/var/mail или /var/spool/mail), а в некоторых системах – документы, доступные через web-сервер].

    /boot

    После /, это первый каталог, к которому обращается компьютер после старта. Кроме файлов, связанных с вашим менеджером загрузки (Lilo или Grub), Linux хранит здесь действующее ядро ОС. Оставьте его в покое.

    /lib

    Любой, кто работал с Windows хоть какое-то время, сталкивался с DLL. DLL – это сокращение от dynamic linked library [динамически подключаемая библиотека]. Подобные библиотеки имеются и в Linux, отсюда и /lib. Библиотеки – часть программного обеспечения, необходимая для работы других программ. Например, Gimp может открывать и записывать JPEG файлы благодаря библиотеке jpg, содержащей необходимую информацию для работы с этим форматом. Более того, другие приложения могут также использовать данную библиотеку. Навряд ли вы загляните в этот каталог, разве что из любопытства.

    /lost+found

    Этот каталог, который, кажется, назвал Баз Лурхман [Baz Lurhmann], вы должны посетить в первую очередь в случае перезагрузки после сбоя или нештатного окончания работы (например, из-за отключения питания). Linux любит выключаться правильно, а именно: все файловые системы размонтируются и все процессы уничтожаются до того, как штепсель выдернут из розетки. Таким образом, когда случается неожиданное выключение, Linux требует восстановления системы. После катастрофического сбоя первым произойдет запуск системы fsck, программы, которая просматривает ваши диски в поисках поврежденных файлов. Она попытается исправить любые найденные повреждения и поместит их в /lost+found.

    /tmp

    В Windows имеется каталог Temp, в Linux – /tmp. В этом месте ОС хранит данные, необходимые ей временно, типа файлов, загружаемых из Интернета и открытых в приложениях, но еще не сохраненные в обычном месте. Большинство Linux систем очищает этот каталог – удаляя все содержимое – во время загрузки, так что ничего в нем не храните!

    Большинство из описанных в этом кратком обзоре каталогов мало интересны тем пользователям, которые хотят просто использовать свой компьютер, и верно также то, что вам не нужно понимать структуру ОС, чтобы продуктивно работать. Однако даже краткий экскурс под капот вашей системы – очень полезное упражнение. Поначалу он должен подвигнуть вас на дальнейшее изучение и эксперименты с вашим компьютером, чего отнюдь не советуют делать пользователям Windows и OS X. Не исключено, что вы доэкспериментируетесь до поломки компьютера [не физической – ваше оборудование останется в целости, но систему придется чинить или переустанавливать,], что может быть весьма обидно. Вот прекрасный повод изучить одну из возможностей виртуализации, имеющихся в Linux. С каким-нибудь бесплатным VMware Player вы можете играть и ломать все, что хотите, а потом отключите виртуальное устройство и перезагрузитесь по новой. Чем не отличная игра!


Связь через гостевую книгу, т.к. спамеры меня уже задрали.
А.Ильченко

© 1996-2017