Корневая файловая система Linux: каталоги и команды

Здравствуйте, уважаемые посетители, читатели, други и недруги, постоянные клиенты и прочие личности сайта.

linux

Мы продолжаем цикл статей, посвященных Linux-системам. Сегодня мы поговорим о таких важных (может быть, и не совсем простых) понятиях, как:

  • Файловая система Linux;
  • Основные каталоги корневой файловой системы;
  • Консольные команды для работы с файлами и каталогами.

Итак, начнем.


Корневая файловая система Linux

Сложно представить операционную систему (даже такую как Linux) без файловой системы. На ней лежит всесистемный порядок. Файловая система строго следит за организацией, хранением, а также именованием данных. Например, когда программа обращается к файлу, она ничего не знает о том, где расположена информация о данном файле, на каком физическом носителе она записана. Единственное, что знает программа, это имя файла, к которому она обращается, его размер  и другие параметры, которыми искомый файл отличается от множества других файлов (дату и время создания файла, имя владельца файла, права и метод доступа к файлу и т.д.). Все эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске или съемном устройстве). Все собранные в одном месте каталоги (по-другому папки), подкаталоги, а так же файлы и есть данные файловой системы. Причем один из этих каталогов в Linux-системах является самым наиважнейшим, а именно «верхушкой» (по-другому - «корнем») файловой системы - в нём содержатся все остальные каталоги и файлы.

Каталоги файловой системы linuxДля того, чтобы Вы понимали, о чем идет речь,  я открыл каталоги файловой системы Linux через файловый менеджер Midnight Commander (MC). Верхушку файловой системы (корневой каталог) указал красной стрелкой - и вот именно к ней монтируются все другие файловые системы. Далее мы попытаемся более доступно описать все, что в данный момент Вы видите на рисунке (по тексту мы будем останавливаться на тех или иных понятиях, чтобы было понятно, о чем идет речь, и Вы, поглядев на рисунок, смогли сориентироваться).

Если жёсткий диск разбит на разделы, то на каждом из них возникают отдельные файловые системы с собственным корнем и с собственной структурой каталогов. Любая операционная система поддерживает несколько файловых систем, например, Windows поддерживает такие известные всем файловые системы, как FAT, FAT32, NTFS и др. Linux не исключение. Однако важно различать файловые системы, которые могут использоваться в качестве корневой файловой системы и файловые системы, которые просто поддерживают операционную систему, но не используются для установки Linux или Windows (к таким можно отнести, например, ISO9660 (эта модель обеспечивает совместимость носителей под разными операционными системами), UDF (а это особенный формат файловой системы, предназначенный для хранения файлов на оптических носителях) и др). Мы не будем рассматривать файловые системы Windows, не будем останавливаться на файловых системах, не использующихся для установки операционных систем, а просто сделаем краткий обзор и познакомимся с некоторыми наиболее известными корневыми файловыми системами Linux.

  • extExtended File System (расширенная файловая система) первая файловая система, разработанная специально для операционных систем на ядре Linux.
  • ext2Second Extended File System (дословно: «вторая расширенная файловая система») - стандартная, но уже устаревшая файловая система Linux. По скорости и производительности работы она может служить эталоном в тестах производительности файловых систем. Единственный ее минус - она не является журналируемой файловой системой (журналируемая файловая система это система, в которой ведется запись журнала и которая хранит список изменений, что в свою очередь, помогает сохранить целостность файловой системы при сбоях). Этот недостаток был устранён в следующей файловой системе ext3.
  • ext3Third Extended File System (третья версия расширенной файловой системы) усовершенствованная версия файловой системы ext2 с поддержкой ведения журнала, что, несомненно, повышает ее надежность.
  • ext4Fourth Extended File System (четвёртая версия расширенной файловой системы) - новейшая файловая система Linux. Начиная с ядра Linux 2.6.28 (вышедшем 25.12.2008 г.) файловая система уже считается стабильной и используется по умолчанию во многих дистрибутивах Linux.
  • Файловая система ext4 рассматривается как переходный шаг на пути к файловой системе следующего поколения Btrfs, которая уже сейчас претендует на звание основной файловой системы Linux в будущем.

Внимание! Есть еще несколько файловых систем, например, ReiserFS, JFS, XFS и т.д., но использовать их в домашних условиях не целесообразно, потому как ReiserFS чувствительна к сбоям и ее нужно регулярно дефрагментировать, JFS плохо работает с большими файлами (например, с видео), лучше использовать эту файловую систему под сервер баз данных, а XFS хорошо использовать на графических станциях для обработки видео.

Еще раз повторимся (повторение - мать учения) :). При установке Linux на выбранном Вами разделе жесткого диска создается корневая файловая система, и для Linux именно она является самой важной. Именно к ней будут монтироваться все остальные файловые системы на других устройствах. Корневая файловая система тоже монтируется, но только не к другой файловой системе, а к «самой Linux», причём точкой монтирования служит корневой каталог. Поэтому при загрузке системы прежде всего монтируется корневая файловая система, а при завершении она размонтируется в последнюю очередь (о самом понятии монтирования и размонтирования мы поговорим в следующих статьях - это отдельная и тоже немаловажная тема). Корневая файловая система содержит набор стандартных каталогов и утилит, без которых невозможна работа Linux. В Linux корневой каталог обозначается так - “/” (слеш). Полные имена (по-другому - пути) всех остальных каталогов получаются из “/”, к которому дописываются справа имена последовательно вложенных друг в друга каталогов. Имена каталогов в пути также разделяются символом “/”. Например, запись /home обозначает каталог “home” в корневом каталоге (“/”), а /home/Sonikelf - каталог “Sonikelf” в каталоге “home”, который, в свою очередь, находится в корневом каталоге. Перечисленные таким образом каталоги, завершающиеся именем файла, и составляют полный путь к файлу.

В Linux, помимо полного пути, есть и относительный путь, который строится точно так же, как и полный — перечислением через слеш (“/”) всех названий каталогов, встретившихся при движении к искомому каталогу или файлу. Между полным  и относительным путём есть только одно немаловажное различие: относительный путь начинается от текущего каталога, а полный путь всегда начинается от корневого каталога. Linux различает полный и относительный пути просто: если имя объекта начинается на “/” — это полный путь, в любом другом случае — относительный.

Основные каталоги корневой файловой системы
В разных дистрибутивах Linux каталоги тоже могут быть разные: в некоторых будут дополнительные файлы/каталоги конфигурации, а некоторые файлы конфигурации, вполне возможно, будут называться как-то по-другому. Я приведу названия каталогов, которые входят в дистрибутив Fedora. Итак, поехали:

/ - корневой каталог

  • /bin - содержит стандартные утилиты Linux. Или, скажем так, - этот каталог содержит основные исполняемые файлы (в Windows такие файлы имеют расширение .exe), доступные всем пользователям, а также содержит символьные ссылки на исполняемые файлы. Символьная ссылка это специальный файл в файловой системе, внутри которого есть только одна-две строки с указанием полного пути, который должен быть открыт при попытке обратиться к данной ссылке (файлу).
  • /boot - содержит конфигурационные файлы загрузчика GRUB, образы ядра (по умолчанию хранятся последние три), файлы Initrd. Чтобы было понятно, что это за такие мифические файлы Initrd, немного внесем ясность. Когда начинается начальная загрузка системы, сначала монтируется временный виртуальный диск, который содержит временную корневую файловую систему, с помощью которой, в свою очередь, осуществляется запуск ядра Linux. Файл Initrd - образ этой временной корневой системы, который хранится на загрузочном устройстве.
  • /dev - содержит файлы устройств. В Linux устройством называется оборудование, которое подключается к системе в процессе загрузки ядра или в процессе работы системы. Эти устройства представляют методы для ввода или вывода информации. Например, жесткий диск - устройство для ввода (запись) и вывода (чтение), мышь - устройство ввода. Каждое движение или нажатие на кнопки мыши отправляет символ на устройство /dev/mouse, клавиатура - тоже устройство ввода. Большинство устройств в Linux представляют из себя файлы в особой файловой системе (исключение составляют сетевые карты). И вот эти файлы хранятся в каталоге /dev, куда к ним обращается система для выполнения задач, связанных с вводом/выводом.
  • /etc - содержит конфигурационные файлы операционной системы и всех сетевых служб. Данный каталог можно сравнить с реестром Windows, но в Windows общесистемные настройки хранятся в одном большом бинарном файле, а в Linux - в разных конфигурационных файлах, которые можно редактировать обычным текстовым редактором.
  • /home - название каталога говорит само за себя. Здесь содержатся домашние каталоги всех пользователей, которые зарегистрированы в системе. В домашних каталогах пользователей хранятся пользовательские файлы, а также пользовательские настройки различных программ. Как мы уже упоминали в предыдущей статье, Linux является многопользовательской системой, и поэтому каждый пользователь имеет свой уникальный и неповторимый каталог для своих личных, персональных файлов. Этот каталог называется Домашним каталогом пользователя и обозначается, как мы уже говорили немного ранее, /home/Имя_Пользователя. Такое разделение пользовательских каталогов и файлов операционной системы упрощает сохранение данных и повышает надежность самой операционной системы.
  • /lib - здесь находятся различные библиотеки и модули ядра. В процессе установки различных программ в Linux (в том числе и драйверов) устанавливаются зависимости (о них мы уже говорили) для корректной работы программы. Вот эти зависимости в большинстве случаев и есть библиотеки - набор собранных особым образом файлов, которые подключаются во время установки к устанавливаемой программе.
  • /lost+found - этот каталог нужен для хранения испорченных файлов при проблемах с файловой системой, которые были восстановлены после, например, некорректного размонтирования файловой системы. Это очень ценный каталог, удалить его не получится (он всё равно снова появится).
  • /misc - может содержать все что угодно.
  • /mnt и /media - обычно в этих каталогах содержатся точки монтирования. В современных дистрибутивах Linux этот процесс обычно происходит автоматически. При этом в каталогах /mnt или /media создается подкаталог, имя которого совпадает с именем монтируемого тома.
  • /opt - здесь обычно размещаются установленные программы, имеющие большой дисковый объем, или вспомогательные пакеты, например, у меня в этом каталоге всего две программы - это Adobe Reader и Google Chrome
  • /proc - это не совсем обычный каталог, это каталог псевдофайловой системы procfs, которая используется для предоставления информации о процессах (по-другому это виртуальная файловая система, которая обеспечивает связь с ядром и монтируется в каталогу /proc). Да-да, в системе Linux присутствует виртуальный файловый объект, именуемый каталогом /proc. Он существует только во время работы системы в оперативной памяти компьютера. Каталог представляет интерес и с точки зрения безопасности. Многие из утилит, выводящие информацию о системе (например, команда ps), берут свои исходные данные именно из этого каталога.
  • /root - каталог пользователя root (кто это такой, мы упоминали в одной из предыдущих статей).
  • /run - это совершенно новый каталог, который появился совсем недавно. И создан он (по задумке разработчиков) для хранения данных, которые были запущены приложениями, требующимися в процессе работы (это могут быть и службы, запускаемые самой системой, и программы, которые Вы запускаете сами).
    Сюда входят:
    • Идентификаторы процессов PID (каждый запущенный в среде Linux процесс имеет свой уникальный идентификатор - по-другому это адрес (в числовом виде) процесса, с которым будут взаимодействовать другие запущенные процессы во время работы);
    • Информация о межпроцессорном взаимодействии (проще говоря, это обмен данными между запущенными процессами);
    • Заблокированные файлы (если в процессе работы приложение или не запускается, или работает нестабильно? это может означать, что некоторые файлы этого приложения заблокированы другими процессами и происходит это тогда, когда сразу несколько приложений пытаются использовать один общий ресурс); - ну и другие данные, необходимые во время работы.
  • /sbin - набор утилит для системного администрирования, содержит исполняемые файлы, необходимые для загрузки системы и ее восстановления в различных щекотливых ситуациях. Запускать эти утилиты имеет право только root.
  • /tmp -  каталог, в котором хранятся временные файлы. Linux, в отличие от Windows, следит за чистотой и регулярно очищает этот каталог.
  • /usr - содержит пользовательские программы, документацию, исходные коды программ и ядра. По размеру это один из самых больших каталогов файловой системы. В этот каталог устанавливаются практически все программы. И его (этот каталог) с большой натяжкой можно сравнить с каталогом Program Files в Windows.
  • /var - содержит файлы, которые подвергаются наиболее частому изменению. Например, кэши различных программ; файлы блокировки для недопустимости одновременного использования одной программы несколькими пользователями; файлы системных журналов; временные файлы (при выключении компьютера содержимое очищается); информация о различных программах; общая информация о состоянии системы с момента последней загрузки, входа в систему и т.д.; очередь печати, факсов, а также входящие почтовые ящики пользователей и т.д.

Вывод. Файловая  система в Linux это неразделимое целое, начинающееся с корневого каталога (так называемой "верхушки"), а внутри каталога могут находиться целые диски или их разделы (с другими файловыми системами), которые можно легко примонтировать (присоединить) и также легко отмонтировать (отсоединить) от единственного, единого, неразделимого, целого дерева. Специально выделил эти слова, чтобы было понятно отличие от файловой системы Windows. Если кто не в курсе, в Windows каждый логический диск это корневой каталог. Например, если есть три логических диска - C, D, F, значит будет три корневых каталога.

Необходимые команды, которые нужно знать для работы с файлами и каталогами

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

Примечание:
Обращаю Ваше внимание, что все имена файлов и названия команд нужно вводить в правильном регистре, т.е. имена в Linux «чувствительны к регистру». Например, команда cd — совсем не то же самое, что команда Cd или CD. То же относится к именам файлов и каталогов.

Команда cd - используется для движения по дереву каталогов. Если Вы введете эту команду без аргументов (т.е. просто напишите cd - смотрите первую строку на рисунке), то попадете в свой домашний каталог, а чтобы попасть в любой другой каталог, необходимо указать путь к нему. По умолчанию Вы всегда изначально находитесь в своем домашнем каталоге (/home). В первой строке указан относительный путь, во второй - полный. Если Вам нужно передвинуться в какой-либо другой каталог, то введите cd, обязательно пробел и тот каталог, куда Вам нужно перейти, например cd /usr. На четвертой строке рисунка в квадратных скобках указано, что мы перешли в каталог usr. Можно сразу указать весь путь, например, cd /usr/games. Вы попадете в каталог games, который находится в каталоге usr, который, в свою очередь, находится в корневом каталоге системы. Чтобы вернуться обратно в свою домашнюю директорию, достаточно указать относительный путь cd ~.

команда cd

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

Команда ls

Не обязательно находиться в том каталоге, содержимое которого Вы хотите узнать с помощью команды ls. Например, чтобы увидеть, что имеется в каталоге /etc, находясь при этом в вашем домашнем каталоге, введите:

ls -al /etc

команда ls-al

Здесь мы указали два ключа - это показывать скрытые файлы (a) и вывести информацию (l). Обратите внимание, мы можем сразу указывать несколько ключей, чтобы получить всю информацию о каталоге или файле.

Приведу наиболее часто употребляемые ключи команды ls:

-a (all) — выведет список всех файлов каталога, в том числе и скрытые файлы;

-l (long) — выведет информацию о содержимом каталога, включая права доступа (первая графа), владельца (вторая графа), группу (третья графа), размер (четвертая графа), время создания (пятая графа), является ли файл символьной ссылкой на другой файл и на какой именно (шестая графа);

ls -l

-r (reverse) — выведет список содержимого каталога в обратном порядке;

ls -r

-S (size) — отсортирует файлы по размеру.

ls -S

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

команда pwd

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

Команда mkdir - создание нового каталога.  В домашнем каталоге пользователя - /home, как и в любом другом, можно создавать неограниченное число подкаталогов, в них — свои подкаталоги и т.д. Другими словами, Вам принадлежит "поддерево" файловой системы, корнем которого является домашний каталог пользователя.
Чтобы организовать такое поддерево, потребуется создать каталоги внутри домашнего. Вот для этого и используется утилита mkdir. Она используется с одним обязательным параметром: именем создаваемого каталога. По умолчанию каталог будет создан в текущем каталоге.

команда mkdir

Давайте создадим каталог globus (первая строка на рисунке). Введем команду mkdir globus. Чтобы удостовериться, что каталог создан, введем команду ls с ключом -F (для каждого имени каталога добавлять суффикс "/"). Каталог создан.

Следующая команда mv. С помощью этой команды можно перемещать файлы и каталоги. У mv два обязательных параметра: первый — должен быть указан перемещаемый файл или каталог, второй — должен быть указан файл или каталог назначения (конечный пункт). Имена файлов и каталогов могут быть заданы в любом допустимом виде: при помощи полного или относительного пути. Кроме того, mv позволяет перемещать не только один файл или каталог, а сразу несколько (перечисление файлов/каталогов осуществляется через пробел).

Давайте немного потренируемся: создайте в домашнем каталоге два каталога - Globus и Dos и создайте файл - dokument. А теперь приступим к практике:

1) Переименуем один файл в другой. Чтобы переименовать, например,  файл dokument в dokument.old, введите:

mv dokument dokument.old

2) А теперь переместим один каталог в другой. Чтобы переместить каталог Globus из текущего рабочего каталога в каталог Dos, введите:

mv Globus Dos

команда mv

Если каталог Dos уже существует (как в нашем случае), mv поместит Globus внутрь Dos. А если каталога Dos Вы не создали, то mv ПЕРЕИМЕНУЕТ (перезапишет) Globus в Dos

3) Чтобы переместить файл или каталог, который не находится в текущем каталоге, укажите в качестве опции его полное имя и путь.

Например, чтобы переместить файл /usr/tmp/dokument в текущий рабочий каталог, введите:

mv /usr/tmp/dokument txt.txt

mv

Файл dokument был изначально в /usr/tmp/, мы его переместили в домашний каталог переименовав в txt.txt

4) А теперь чтобы переместить файл txt.txt из текущего рабочего каталога в каталог /usr/tmp, наберите:

mv txt.txt /usr/tmp

mv txt

продолжение

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

Следующая полезная и нужная команда - cp.
Она создает копию файла. Утилита cp тоже требует присутствия двух обязательных параметров: первый — то, что мы хотим скопировать (файл или каталог), второй — куда мы хотим это скопировать (пункт назначения). Например, надо скопировать файл dokument в каталог Globus - введите команду

cp dokument Globus

и в каталоге Globus появится файл dokument (это будет копия файла dokument, который находится в нашем домашнем каталоге)

команда cp

С помощью команды cp можно копировать не только по одному файлу или каталогу - можно путем перечисления всего того, что Вы хотите скопировать, указать это команде cp. Например, нам надо скопировать два файла dokument и dokument.old в каталог Dos, ничего нет проще - перечислите все файлы или каталоги через пробел:

cp dokument dokument.old Dos

копируем 2 файла в один каталог

Можно не только копировать, но и удалять файлы и каталоги, и в этом нам помогут команды rm (удаляет файлы)..

пример

..И rmdir (удаляет каталоги). rmdir согласится удалить каталог только в том случае, если он пуст, т.е. в нём нет никаких файлов и подкаталогов.

пример2

Удалить каталог вместе со всем его содержимым можно командой rm с ключом «-r». Команда rm -r имя каталога(ов) — очень удобный способ потерять в одночасье все файлы: она рекурсивно (этот термин обозначает примерно то же, что у Windows запустить uninstaller) обходит весь каталог, удаляя всё, что попадётся - файлы, подкаталоги и т.д., а ключ «-f» (force) делает её работу ещё более неотвратимой, так как подавляет запросы вида «удалить защищённый от записи файл», так что rm работает безмолвно и безостановочно. Будьте внимательны при использовании этой команды.

пример 2

Команда cat - позволяет вывести на экран содержимое любого файла, однако в таком виде эта команда практически не используется. Если файл слишком большой, то его содержимое пролистается на экране, а Вы увидите только последние строки файла. С помощью этой команды можно комбинировать и объединять копии файлов, а также создавать новые файлы. Если набрать просто в командной строке cat и нажать Enter, то можно вводить (и соответственно видеть) текст на экране. Повторное нажатие клавиши Enter удвоит строку и позволит начать следующую. Когда текст набран, следует одновременно нажать клавиши Ctrl и d.

команда cat

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

cat > txt

пример 3

Эта команда сможет прочесть и открыть любой файл, не только текстовый, но толку от того, что вы откроете, например, графический файл, не будет никакого. На экран выведется бестолковый набор символов.

Некоторые опции, которые можно использовать с этой командой:

  • -A показывает все невидимые символы;
  • -E показывает символы конца строки;
  • -e показывает непечатаемые символы плюс символ конца строки;
  • -b нумерует непустые строки;
  • -n нумерует все строки.

Давайте попробуем объединить два файла в один с помощью команды cat:
У нас есть два файла - dokument и txt, мы объединим их в один galina, введя команду

cat dokument txt >galina

Вот и все - наши два файла объединены в один с сохранением и первого, и второго файлов в одном общем файле :)

пример 4

Если файл слишком большой, то для просмотра на экране надо воспользоваться командами more и less.

  • more выводит содержимое файла на экран постранично, размером как раз на целый экран. Для того, чтобы увидеть следующую страницу, надо нажать на клавишу пробела. Выйти из режима просмотра можно с помощью клавиши Q.
  • less содержит все функции и команды управления выводом, имеющиеся в more и дополнительные, например, для перемещения по тексту Вы можете использовать клавиши Стрелка вверх, Стрелка вниз, PgUp, PgDown.
  • Команда locate - выполняет поиск файла. С помощью этой команды Вы можете увидеть все файлы или каталоги, названия которых содержат искомый образец. Например, для поиска файла, содержащего в названии слово dokument.old, введите в командной строке

locate dokument.old

команда locate

Команда locate нашла все файлы dokument.old. В системе их оказалось три. Можно задать и более расширенный поиск, например, если вместо dokument.old Вы укажите "кусочек" названия, например "doku". Будут найдены ВСЕ файлы, где встречается это буквосочетание.

Есть еще одна аналогичная команда для поиска файлов - это find. У этой команды много опций, но чаще всего используется опция -name - она задает поиск всех файлов и каталогов, содержащих в названии заданное вами сочетание букв.

Еще одна полезная команда - which. Она показывает положение исполняемых файлов. Команда полезна при создании кнопки запуска какого-либо приложения.

команда which

Чтобы создать кнопку запуска, Вы должны знать команду запуска приложения, для которого захотите создать кнопку запуска на рабочем столе. На данном рисунке видно, что команда запуска ls - это /usr/bin/ls

Команда clear (а также сочетание клавиш Ctrl+L) - очищает окно терминала. Это бывает полезным, когда Вы передвигаетесь по каталогам, файлам, поскольку окно терминала заполняется кучей команд или просто какой-нибудь информацией. При этом приглашение командной строки будет смещено вниз – что не всегда удобно. Чтобы не выходить из командной строки и снова заходить в нее, нужно воспользоваться командой clear.

Ну и напоследок хочу отметить еще две полезных и очень нужных команды.

Первая это history. Само название команды говорит само за себя. Это история команд, которую Вы вводили в окне терминала. Для новичков или даже продвинутых пользователей довольно утомительно запоминать, как пишется та или иная команда (я говорю не об однословных командах, а о командах, содержащих в себе 2-3-4 слова, например, system-config-authentication). Эта команда выведет на экран список ранее введенных команд (список этих команд можно ещё посмотреть в файле .bash_history. Он находится в вашей домашней папке пользователя). Просто наберите: !'номер команды в history', например !847.

Команда history

И закончим мы знакомство, пожалуй, с самой важной командой в Linux. Это команда man - сокращенно от "manual" (руководство). Ею можно вызвать страницы документации о предназначении и об использовании команд в системе. Введя man, пробел и название любой команды, Вы увидите страницу документации по выбранной команде, например, введите man clear

команда man

Выход из справки - q

Как и любая другая справочная система, система man имеет собственную man-страницу. Введите man man и получите подробнейшую документацию по самой команде man.

к содержанию ↑

Послесловие.

Как-то так. Как и всегда ждем от Вас комментариев, дополнений и всего такого прочего.

На этом мы закончим нашу очередную лекцию :). Будут и следующие, надеюсь, что интересные и захватывающие. Если есть, что дополнить (добавить), милости прошу, добавляйте в своих комментариях.

P.S. За существование данной статьи спасибо члену команды Pantera

Любая операционная система поддерживает несколько файловых систем, например, Windows поддерживает такие известные всем файловые системы, как FAT, FAT32, NTFS и др. Linux не исключение.
Sonikelf's Project's логотип Sonikelf's Project's логотип Космодамианская наб., 32-34 Россия, Москва (916) 174-8226
Sonikelf

Ну, линух, чего. Ковыряйтесь :)

RuskanKF

Во те то да!!!!

kovZOLeg39

/mt и /media – обычно в этих каталогах содержатся точки монтирования. В современных дистрибутивах Linux этот процесс обычно происходит автоматически. При этом в каталогах /mnt или /media создается подкаталог, имя которого совпадает с именем монтируемого тома.

Исправьте /mt на /mnt

neuch58

Как всегда, первый комм - самый интересный :-)
Ковыряйтесь - в носу что ли? :-)
Уверен, многие научаются с установкой! Не каждому охота возиться с VB...
А у кого-то бут сектор полетит, и остается человек без Windows...
Нет бы про мультизагрузку рассказать, про установку в отдельную папку Windows...
А есть дистры, которые прямо с CD запускаются и работают, напр Кноппикс...
ИМХО, надо сначала научиться просто и безвредно ставить Линукс 2й-3й системой, а там уже все позабавимся!
Хотя АБ Гуру, ему видней...
P. S. Просто сам в свое время ковырялся, знаю, как бывает :-)

neuch58

Установка Ubuntu в папку Windows:
https://help.ubuntu.ru/wiki/%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_ubuntu_%D0%B8%D0%B7_%D0%BF%D0%BE%D0%B4_windows
Создается папка в Windows и добавляется строка в меню загрузки. Больше ничего!
Проще - только LiveCD...
Ставим и ковыряемся :-)

Pantera

Какое-то извращение получается :grin: .
1) Этот вариант пригоден исключительно для Ubuntu. А может кто не захочет пробовать ubuntu?
2) В такой установке тоже есть свои минусы (не поддерживаются некоторые функции, чаще чем запланировано нужно проводить дефрагментацию (ubuntu будет работать медленней, чем ежели вы бы ее поставили нормально).
3) Иногда система установленная через wubi ведет себя более неадекватно, чем ежели бы вы ее поставили нормально.
Список можно продолжать. Но тут как говорится кому что удобней.

Detonat0r

Соник привет! Пишу в комментакх так как до тебя не достучаться не по почте не по аське...что там с учебой то?

вадим

Спасибо за статью,только сейчас узнал ,что Пантеру зовут Галина.
Статья наверное тянет на медаль (действительно очень редко можно
можно встретить таких девчонок )
Насколько я понял то линукс состоит из виртуальных приводов,
(если вообще так можно сказать) что-то типа Daemon в Windows
И по зтому он монтирует каждый файл (картинку,игрушку и т.д)
а потом размонтирует,то есть, не создавая всяких записей, как в реестре Windows.
Ещё раз спасибо за пояснения всех каталогов.

neuch58

Отвечаю Пантере,(ну нету у меня кнопки :-) )
Все мы где-то извращенцы :-)
Ссылку дал для тех, кто хочет сейчас и сразу... Поковыряться. Без последствий.
Посмотреть каталоги, изучить терминал, освоить команды...
Многие же хотят, но боятся, а вдруг Windows закроются :-)
Вообще, надо статью о том как ставить Линукс, чтоб люди себя уверенно чувствовали, неудачная установка может оттолкнуть...
P. S. Плавали, знаем... :-)

neuch58

Подчеркиваю: это не для работы, а поковыряться чтоб... Безбоязненно.
Типа песочницы... :-)

barn4k

Можно же установить в виртуалке, тогда уж точно с Windows ничего не случится :)

neuch58

А я и не спорю, просто, вдруг кому-лень с виртуалкой возиться :-)

ордобой

с первого раза не понял,щас ещё перечитаю :)

Razlagutt

Здорово! Одно смутило "Корневая файловая система". А какая файловая система в линуксе не корневая?

neuch58

Любая, отличная от корневой. :-)

Razlagutt

Приведи пример.

Pantera

Одно смутило “Корневая файловая система”. А какая файловая система в линуксе не корневая?

Просто повторюсь (из самой статьи):

Файловая система в Linux это неразделимое целое, начинающееся с корневого каталога (так называемой “верхушки”), а внутри каталога могут находиться целые диски или их разделы (с другими файловыми системами), которые можно легко примонтировать (присоединить) и также легко отмонтировать (отсоединить) от единственного, единого, неразделимого, целого дерева.

В Linux нет понятия НЕ корневой ф.с. - есть всего один "/" (корневой) каталог, к которому все монтируется - раз монтируется, значит становится общим и неразделимым - короче становится одним целым :smile:

Razlagutt

Так собственно это и причина смущения. Зачем было "подчеркивать" очевидное? Только если есть альтернатива.

neuch58

Диск 0, раздел 3 - там живет пингвин :-),
каталог - /, корневой, FS - ext4
Диск 0, раздел 1 - домик Билла, FS - NTFS
каталог - /dev/HDD0,1
Пишу по памяти, Пантера поправит, если что...

вадим

Для того,чтобы не напугать людей,
каталогами (да ещё корневыми ) плюс разделами.
Советую ,тем кто ,ещё не видел линукс
посмотреть это видео и понять , что простому пользователю.
вполне достаточно пользоваться центром приложений.
Я имею ввиду убунту.

Pantera

вполне достаточно пользоваться центром приложений.

А вот это вызывает большую печальку :grin: Пользователям (особенно начинающим) кажется, что они ни когда ни в жизни не будут прибегать к командной строке (некоторые даже боятся этого слова). Суть моих мыслей - чем больший опыт приобретут пользователи, тем эта необоснованная боязнь пользоваться терминалом пропадет. Ведь с помощью командной строки можно выполнить действия, которые не возможно сделать при работе с графическим интерфейсом. Многие действия гораздо быстрее и эффективнее выполнять, пользуясь командной строкой. Кстати командная строка есть во всех ОС, другое дело, что вы не видите результатов своей работы. Ставя программу в windows, или linux, или MacOS X через графический интерфейс у вас все протекает в виде наглядной полосочки, и если установка или удаление дает сбой, то кроме как надписи типа "упс, что то не так" вы ничего не увидите. Когда вы ставите или удаляете (или делаете еще что-то) через командную строку весь процесс установки/удаления/еще чего-то вы видите на экране монитора.
Хотя, конечно, выбор все равно остается за конечным пользователем. Я не заставляю пользоваться командной строкой, но знать ее хоть чуть-чуть по жизни надо :grin:

neuch58

Золотые слова!
Поэтому быстро всем поставить Убунту и проделать то, что Мастер написал!
А потом...

Выбираем дистр по своему вкусу и работаем!

Razlagutt

+9999999999 :cool:

Шоладем

То, что Вы установите Linux - ничего не изменит (для Вас любимых естесно - Да!) ведь будете считать себя крутым хакером, эдаким спец-гуру... Бросайте вашу несбыточною фантазию. Никогда не быть вам спецом.

cthdth

опа... :) в том же направлении и продолжайте :)

colfield

Спасибо за эту статью!! Давно хотел осилить этого "монстра" :grin: Но,скорей всего ни сегодня, ни завтра не получиться....,но эта тема мне очень интересна...да я думаю - не только мне.... Спасибо вообще за твой труд...Мало пишу тебе , но много читаю..

neuch58

Да, похоже, все боятся Тукса...
Наверное, прочли, как пингвин Линуса в молодости цапнул! Потому и стал аватаркой :-)
Неужели так никто и не попробовал?
А Пантера ТАК старалась для вас! Эх...

вадим

Дело не в Туксе, а в выборе дистрибутива.
У меня даже ссылку на убунту деактивировали,
ЭХ , надо было про соломенную шляпу ,
ссылку давать :oops:

neuch58

А что, Убунту моветон?
Тогда пусть будет Кноппикс. :-)

вадим

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

Pantera

Вадим, насчет конструктивного предложения надо подумать :smile: Но, здесь есть одно большое но... Linux ставят люди уже чего то умеющие делать в компьютерной сфере, кто-то из интереса, кто-то по необходимости. Человеку (пользователю) не умеющему использовать командную строку в linux (*unix) делать нечего (пусть это и звучит грубо, но это правда). Или скажем так, более лояльно - если вы решились на установку Linux, то соответствующие знания у вас уже должны иметься. И о какой последовательности идет речь? Если открыть рубрику Linux, то последовательность изложения материала очевидна. Уже рассказывали как установить linux на виртуальную машину (для новичков это то, что надо - все расписано по шагам, виртуалка тем и хороша, что при сбоях не падает windows :grin: ), затронута тема графической оболочки (выбор за пользователем). Объяснены (по крайней мере с моей стороны были сделаны попытки) такие важные понятия как репозитории, зависимости, что из себя представляет файловая система, кто такой root, группы и т.д. т.п. Планировалось написать о монтировании, об установке программ, ну и так по мелочам. Это все основное, что должны знать и понимать пользователи. Остальное дело наживное, и осваивается в процессе изучения. Только на своих ошибках мы учимся. А вы мне предлагаете опять с нуля с установки дистирибутива? :grin:

В такой последовательности ,все твои статьи как нельзя к стати.

Значит в той последовательности, которая велась на сайте все статьи (кстати не только мои) не имеют смысла? Ну может быть, я не спорю, вам видней.
P.S. Если бы, в то время, когда я начала изучать linux, я нашла бы хоть что-то похожее (в то время информации было, практически, ноль), наверно мне бы было НЕ ТАК интересно осваивать его. Когда к цели идешь сам - это интересней - но это мое личное мнение, а ваше право с ним не согласиться :smile:

Русский

Вот отремонтировал свой древний ноутбук с XP (SP3), дабы познакомиться вплотную с Linux. :smile: Планирую ставить Linux Mint 14 (Cinnamon или MATE) - вроде как самый оптимальный дистрибутив для новичков...
Вот только имею один вопрос: Где можно посмотреть системные требования для Линукс? :roll:

вадим

Пантера ,возможно ты не совсем меня,правильно поняла.
Или я не смог донести свою мысль.
В отношении того ,что изначально необходимо знать командную строку(терминал)
я думаю,что это преувеличение.
Установка на виртуалку ,это не совсем то ,что многие хотят.
Раньше порой самым пугающим при установке linux ,зто было
создание тома на винчестере под создание таблицы разделов,
порой надо было создать три-четыре раздела.
Сейчас создавать раздел подкачки практически не надо ( если на борту 2 и более гб)
Да и это уже далеко. Например в Убунту установка практически доведена до
установки windows , то есть на полуавтомате.
При создании разделов ,можно просто указать ползунком сколько надо места под ОС
А то, что нужны твои статьи или не нужны, я и говорить не хочу ,конечно НУЖНЫ.
Но когда люди потрогают интерфейс оси , поставят программы,украшательства,
что то не смогут найти, тогда полюбому почешут голову и запустят терминал.
Просто я хотел сказать, почему бы не взять и с нуля не обучить,
ведь ты видишь ,что желающие есть.
И не обязательно толкать в воду и смотреть выплывит али нет.

Pantera

А напомните ка мне, когда мы с вами на "ты" перешли? Вроде за одним столом не сидели и не пили вместе :grin:
Ну, а теперь по существу момента:

Например в Убунту установка практически доведена до установки windows

Это касается не только Ubuntu, это касается всех дистрибутивов.

И не обязательно толкать в воду и смотреть выплывит али нет.

Я не толкаю, а ПОДталкиваю :grin:

У меня к вам встречное предложение - давайте вместе напишем, то что вы хотите... вы мне базис, а я подправлю!

Pantera

Системные требования Linux Mint

Русский

512 Мб оперативной памяти

:shock: Википедия, случаем, не врет? Ноутбук то древний (ECS Elitegroup Green G320) и имеет на борту всего 256 МБ.
Похоже Минт отпадает, может какой другой дистрибутив подскажете? )

Razlagutt

Slitaz, PuppyLinux.

Pantera

Не знаю как первая, но PuppyLinux это загрузочный liveCD - он загружается в оперативную память. Он не ставится на диск, он только сохраняет свою сессию, если пользователь захочет. Т.е. присутствие диска обязательно всегда :smile:

Русский

В сети еще рекомендуют ALT Linux и прочие устаревшие дистрибутивы... Но оно ведь, наверное, не лучше будет той же ХРюши, поэтому планирую приобрести планку на 512 МБ (предел для G320) и поставить Минт, либо оставить всё как есть. :smile:
Спасибо.

вадим

Извените за ты ( видимо я явно заблудился ,мне 52 года ,и просто по этому я
позволил себе такую роскошь )

Pantera

Ну а как насчет моего предложения?

У меня к вам встречное предложение – давайте вместе напишем, то что вы хотите… вы мне базис, а я подправлю!

вадим

Пантера , скорее всего , я не смогу быть тебе полезен ( даже в написании базиса )
По одной простой причине , я не настолько хорошо знаю Linux.
Недавно нашёл , неплохой сайт про Linux
Насколько я понимаю твой любимый дистрибутив это Fedora
И меня заинтересовала установка на компьютер Fedora и Ubuntu
Насколько я понимаю , то отличается разительно.

Pantera

1. Недавно нашёл , неплохой сайт про Linux
2. Насколько я понимаю твой любимый дистрибутив это Fedora
3. И меня заинтересовала установка на компьютер Fedora и Ubuntu. Насколько я понимаю , то отличается разительно.

1) Да, сайт, неплохой.
2) "Любимый" не совсем то слово, которое я бы употребила :grin:. Просто, скажем так, более привычный.
3) То, что заинтересовало установка на компьютер дистрибутивов это хорошо. Только я не поняла в чем отличается установка Fedora от установки Ubuntu? Отличие только в том, что автор в своей статье при установке Fedora не выбрал в самом начале установки РУССКИЙ язык, и почему то решил, что весь процесс лучше показать на английском языке. Перед выбором раскладки клавиатуры, есть смена языка. Причем, автор рассматривает в картинках установку Fedora 16 - а уже не за горами Fedora 19. Могу сказать точно, что когда устанавливала на виртуалку Fedora 18, меня поразило как все устанавливается в один клик - пользователю без надобности вообще ничего делать не надо - кнопку нажал - выбрал чего надо (из ПО) и вперед - установка пошла. Ставила и Убунту на виртуальную машину и сразу с чем столкнулась - не хотела обновляться + не понравилась их оболочка Unity - но тут как говорится каждому свое. Можно, конечно в картинках продемонстрировать установку Fedora - да и Ubuntu тоже - только в сети столько статей в картинках, что глаза разбегаются :grin: Но, обещаю, что подумаю над Вашим предложением. Но все таки, хотелось бы вот что сказать. Если вы новичок в linux, не ставьте Fedora с Ubuntu :grin:, для начала поставьте что-нибудь попроще, например openSUSE - вот этот дистрибутив точно для начинающих пользователей (и сделан, и продуман разработчиками до мелочей). Там практически не надо пользоваться командной строкой, все интуитивно понятно (даже сама установка) - настроек побольше выведено для глаз, все запускается через "графический режим", как в windows, нажал на кнопку и меняй параметры, или устанавливай программы, или что там вашей душе понадобится.

neuch58

Что-то народ какой-то вялый пошел, никому не интересно...
Пять дней прошло, а НИКТО так и не написал - Ребята, а я вот взял, и попробовал!
Обидно...

Razlagutt

Ребята, а я вот взял и попробовал.

neuch58

Ну и?
Получилось что-нибудь?

Razlagutt

Все получилось, конечно. А почему вопросы то такие? Это же просто ОС. Как и винда.

neuch58

Да я не о том...
Я имел ввиду - побродить по каталогам, поработать в командной строке, в общем, поковыряться :-)

Pantera

А Вы то сами так и не побродили по каталогам, не поработали в командной строке, не получили удовольствия? У вас какие то проблемы случились? Так вопрос задайте, в чем именно трудность у вас возникла... Что вы у других интересуетесь - получилось или не получилось. Чему тут не получаться? Открыл терминал и тупо вводи команды - результат будет как на картинках.

neuch58

О Великая Жрица Линукса!!!
Неуч58 смиренно преклоняет колени пред сиянием мудрости твоей!
Мне обидно, что нет аншлага в теме твоей!
Наивные не понимают, что наступает Эра ПостПК...
Что миром давно уже правит Линукс! Он везде: флешка. мобилка, планшет, телевизор, роутер, модем, холодильник, умный дом, контроллер SSD, Ebook, и т. д, и т.п, унд зо вайтер...
Надо не просто юзать его как Ось, а учиться изменять и настраивать...
То, что предлагается, я еще в начале века делал и балдел по полной...
А в прошлом году залез в планшет и посмотрел в корень(/)... Очень интересно!
Вот я и спрашиваю у всех: что же вы так индифферентно восприняли тему сию?

neuch58

Что-то на некоторых сайтах в моих постах стали пропадать целые строки :-(
Наверно из-за того, что я Wi-Fi роутер экранировал...

20-4

Зд`оровская статья! Особенно мне понравилось первое предложение, последняя фраза " ... странные существа". Наверно, без веществ точно не обошлось :-)lol

вадим

Позвольте узнать , а Вы себя ,к кому относите ?

everto

Спасибо за статью, нашёл опечаточку. ununstaller -> uninstaller

Алексей

Очень доходчивая статья, прям разжёвано как для детей. Ну у меня ещё более знания упорядочились, просто спасибо. Сохраню как памятку.

Minase

Эээ... да-да класная статья... и заметку да возьму... хехе пойду ка я обратно на окно.
Неужели это надо чтобы изменить цыфру в фаиле груба находящегося в системной папке? Если да и так обстоят дела с линуксом (досихпор) то я не удивлена что винда процветает...

Алексей

Винда до сих пор процветает потому, что её разработкой и распространением занимается 1 корпорация, которой это позарез надо и она сделает всё, чтобы её продукт был как на можно большем количестве ПК и серверов.
Десктопный Linux до сих пор по большей части разрабатывается энтузиастами, несмотря на Canonical, Red Hat, Suse и даже Google с их внутренней Ubuntu. Каждый ковыряется в своём огородике и строит проекты астрономического уровня "с нуля", имея в распоряжении 1,5 программиста-студента, ковыряющихся в коде одинокими ночами.
Поэтому сейчас Linux процветает только серверах, а десктопы до сих пор являются уделом отдельных энтузиастов и отделов внедрения крупных организаций, которые могут себе позволить вложиться в специалистов по *nix.

arc8

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