Тема: Работа с файлами и каталогами в ОС Linux.

Файловая система — это логическая коллекция файлов на разделе или диске. Раздел представляет собой контейнер для информации и при желании может охватывать весь жесткий диск.

Шаг Lsblk

В Linux устройства классифицируются как блочные или символьные. Символьные устройства — это такие устройства, как клавиатуры и принтеры. Блочные устройства — это, например, жесткие диски, устройства DVD и флеш-накопители.

У нас есть команда lsblk (list block), которая отображает нам в виде списка основную информацию о каждом блочном устройстве. Она также отображает все устройства в виде дерева, показывая все разделы дисков в виде ветвей этого дерева. В качестве примера можно посмотреть на отображение диска sda с ветвями sda1, sda2 и sda3.

Шаг Lsblk

kali> lsblk

В вышеприведенных результатах также есть fd0 (дисковод для дискет, флоппи-дисковод) и sr0 (DVD-привод). Дополнительная информация — это точка монтирования устройства. Обратите внимание, что оба моих внешних USB-диска примонтированы в /media/root.

Регистр имен

Также стоит отметить чувствительность файловой системы Linux к регистру. Файлы и будут интерпретироваться как разные файлы и могут находиться в одной директории, в отличие от ОС Windows, который не различает регистр имен. То же правило действует и на каталоги — имена в разных регистрах указывают на разные каталоги.

Назначение каждой директории регламентирует «Стандарт иерархии файловой системы» FHS (Filesystem Hierarchy Standard). Ниже опишем основные директории согласно стандарту FHS:

Регистр имен

Стандарт иерархии файловой системы

  • / — root каталог. Содержит в себе всю иерархию системы;
  • /bin — здесь находятся двоичные исполняемые файлы. Основные общие команды, хранящиеся отдельно от других программ в системе (прим.: pwd, ls, cat, ps);
  • /boot — тут расположены файлы, используемые для загрузки системы (образ initrd, ядро vmlinuz);
  • /dev — в данной директории располагаются файлы устройств (драйверов). С помощью этих файлов можно взаимодействовать с устройствами. К примеру, если это жесткий диск, можно подключить его к файловой системе. В файл принтера же можно написать напрямую и отправить задание на печать;
  • /etc — в этой директории находятся файлы конфигураций программ. Эти файлы позволяют настраивать системы, сервисы, скрипты системных демонов;
  • /home — каталог, аналогичный каталогу Users в Windows. Содержит домашние каталоги учетных записей пользователей (кроме root). При создании нового пользователя здесь создается одноименный каталог с аналогичным именем и хранит личные файлы этого пользователя;
  • /lib — содержит системные библиотеки, с которыми работают программы и модули ядра;
  • /lost+found — содержит файлы, восстановленные после сбоя работы системы. Система проведет проверку после сбоя и найденные файлы можно будет посмотреть в данном каталоге;
  • /media — точка монтирования внешних носителей. Например, когда вы вставляете диск в дисковод, он будет автоматически смонтирован в директорию /media/cdrom;
  • /mnt — точка временного монтирования. Файловые системы подключаемых устройств обычно монтируются в этот каталог для временного использования;
  • /opt — тут расположены дополнительные (необязательные) приложения. Такие программы обычно не подчиняются принятой иерархии и хранят свои файлы в одном подкаталоге (бинарные, библиотеки, конфигурации);
  • /proc — содержит файлы, хранящие информацию о запущенных процессах и о состоянии ядра ОС;
  • /root — директория, которая содержит файлы и личные настройки суперпользователя;
  • /run — содержит файлы состояния приложений. Например, PID-файлы или UNIX-сокеты;
  • /sbin — аналогично /bin содержит бинарные файлы. Утилиты нужны для настройки и администрирования системы суперпользователем;
  • /srv — содержит файлы сервисов, предоставляемых сервером (прим. FTP или Apache HTTP);
  • /sys — содержит данные непосредственно о системе. Тут можно узнать информацию о ядре, драйверах и устройствах;
  • /tmp — содержит временные файлы. Данные файлы доступны всем пользователям на чтение и запись. Стоит отметить, что данный каталог очищается при перезагрузке;
  • /usr — содержит пользовательские приложения и утилиты второго уровня, используемые пользователями, а не системой. Содержимое доступно только для чтения (кроме root). Каталог имеет вторичную иерархию и похож на корневой;
  • /var — содержит переменные файлы. Имеет подкаталоги, отвечающие за отдельные переменные. Например, логи будут храниться в /var/log, кэш в /var/cache, очереди заданий в /var/spool/ и так далее.
Читайте также:  Как разблокировать windows от вируса-вымогателя

Монтирование файловой системы

Файловая система должна быть смонтирована, чтобы ее можно было использовать в системе. Чтобы увидеть, что в настоящий момент смонтировано (доступно для использования) в вашей системе, используйте следующую команду:

$ mount /dev/vzfs on / type reiserfs (rw,usrquota,grpquota) proc on /proc type proc (rw,nodiratime) devpts on /dev/pts type devpts (rw) $

Каталог / mnt , в соответствии с соглашением Unix, — это место, где находятся временные монтирования (такие как дисководы CDROM, удаленные сетевые диски и дисководы гибких дисков). Если вам нужно смонтировать файловую систему, вы можете использовать команду mount со следующим синтаксисом:

mount -t file_system_type device_to_mount directory_to_mount_to

Например, если вы хотите смонтировать компакт-диск в каталог / mnt / cdrom , вы можете набрать —

$ mount -t iso9660 /dev/cdrom /mnt/cdrom

Это предполагает, что ваше устройство CD-ROM называется / dev / cdrom и вы хотите смонтировать его в / mnt / cdrom . Обратитесь к странице руководства по монтированию для получения более подробной информации или введите в командной строке mount -h для получения справочной информации.

После монтирования вы можете использовать команду cd для навигации по новой доступной файловой системе через точку монтирования, которую вы только что сделали.

Монтирование файловых систем: mount

Команда mount монтирует файловые системы, соединяя их содержимое в системную иерархию файлов в их точках монтирования. Под GNU/Linux это иногда запутано, поскольку приходится иметь дело со всеми известными типами файловых систем и их опциями. Обычно запустить mount может лишь root, хотя в некоторых случаях можно сделать исключения, как в случае, обсуждаемом далее в главе.

Файловую систему вы указываете с помощью опции -t:

mount [опции] устройство точка_монтирования

Например (# является приглашением для root):

# mount -t iso9660 /dev/cdrom /mnt/cdrom /* Монтировать CD-ROM */

# mount -t vfat /dev/fd0 /mnt/floppy /* Монтировать гибкий диск MS-DOS */

Читайте также:  Яндекс-Браузер для Windows, Android и Linux

# mount -t nfs :/ /mnt/files /* Монтировать файловую систему NFS */

Можно использовать ‘-t auto’, чтобы заставить mount угадать тип файловой системы. Это обычно работает, хотя если вы точно знаете, каков тип файловой системы, опция ‘-t’ помогает указать тип и избежать вероятности ошибочного определения файловой системы, mount по умолчанию угадывает нужный тип, поэтому ‘-t auto’ не является абсолютно необходимым.

Системы GNU/Linux предусматривают специальную разновидность монтирования посредством кольцевого (loopback) устройства. Таким способом образ файловой системы, содержащийся в обычном файле, может быть смонтирован, как если бы это было настоящее дисковое устройство. Эта возможность очень полезна, например, при использовании образов CD-ROM. Она позволяет создать образ и испытать его без необходимости прожига на болванке CD с последующим его монтированием. Следующий пример использует первый образ CD из дистрибутива GNU/Linux RedHat 9:

# ls -l /* Исследование файла образа CD */

-rw-r—r— 1 arnold devel 668991488 Apr 11 05:13

# mount -t iso9660 -o ro,loop /mnt/cdrom

/* Смонтировать его в /mnt/cdrom */

# cd /mnt/cdrom /* Перейти туда */

# ls /* Посмотреть файлы */

autorun                          

dosutils                         

EULA                             

GPL                              

images               _BR         

isolinux             _CN          RELEASE-NOTES-pt_

README               _TW         

README-Accessibility RedHat                RELEASE-NOTES-zh_

            RELEASE-NOTES         RELEASE-NOTES-zh_

             RPM-GPG-KEY

            

# cd /* Сменить */

# umount /mnt/cdrom /* Демонтировать */

Возможность монтирования таким способом образа ISO 9660 особенно полезна при тестировании сценариев, создающих образы CD. Вы можете создать образ в обычном файле, смонтировать его и проверить, что он подготовлен правильно. Затем, убедившись, что все в порядке, можно скопировать образ на записываемый CD («прожечь» CD). Возможность кольцевого устройства полезна также для монтирования образов гибких дисков

Команды Windows XP

Сводка команд Windows XP (в алфавитном порядке) представлена в следующей табл. 4.3.

Таблица 4.3. Сводка команд Windows XP

Имя команды

Действие команды

ASSOC

Вывод либо изменение сопоставлений по расширениям имен файлов.

AT

Выполнение команд и запуск программ по расписанию.

ATTRIB

Отображение и изменение атрибутов файлов.

BREAK

Включение/выключение режима обработки комбинации клавиш Ctrl+C.

CACLS

Отображение/редактирование списков управления доступом (ACL) к файлам.

CALL

Вызов одного пакетного файла из другого.

CD

Вывод имени либо смена текущей папки.

CHCP

Вывод либо установка активной кодовой страницы.

CHDIR

Вывод имени либо смена текущей папки.

CHKDSK

Проверка диска и вывод статистики.

CHKNTFS

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

CLS

Очистка экрана.

CMD

Запуск еще одного интерпретатора командных строк Windows.

COLOR

Установка цвета текста и фона, используемых по умолчанию.

COMP

Сравнение содержимого двух файлов или двух наборов файлов.

COMPACT

Отображение/изменение сжатия файлов в разделах NTFS.

CONVERT

Преобразование дисковых томов FAT в NTFS. Нельзя выполнить преобразование текущего активного диска.

COPY

Копирование одного или нескольких файлов в другое место.

DATE

Вывод либо установка текущей даты.

DEL

Удаление одного или нескольких файлов.

DIR

Вывод списка файлов и подпапок из указанной папки.

DISKCOMP

Сравнение содержимого двух гибких дисков.

DISKCOPY

Копирование содержимого одного гибкого диска на другой.

Читайте также:  Как узнать MAC адрес: 3 самых простых способа

DOSKEY

Редактирование и повторный вызов командных строк; создание макросов.

ECHO

Вывод сообщений и переключение режима отображения команд на экране.

ENDLOCAL

Конец локальных изменений среды для пакетного файла.

ERASE

Удаление одного или нескольких файлов.

EXIT

Завершение работы программы CMD.EXE (интерпретатора командных строк).

FC

Сравнение двух файлов или двух наборов файлов и вывод различий между ними.

FIND

Поиск текстовой строки в одном или нескольких файлах.

FINDSTR

Поиск строк в файлах.

FOR

Запуск указанной команды для каждого из файлов в наборе.

FORMAT

Форматирование диска для работы с Windows.

FTYPE

Вывод либо изменение типов файлов, используемых при сопоставлении по расширениям имен файлов.

GOTO

Передача управления в отмеченную строку пакетного файла.

GRAFTABL

Позволяет Windows отображать расширенный набор символов в графическом режиме.

HELP

Выводит справочную информацию о командах Windows.

IF

Оператор условного выполнения команд в пакетном файле.

LABEL

Создание, изменение и удаление меток тома для дисков.

MD

Создание папки.

MKDIR

Создание папки.

MODE

Конфигурирование системных устройств.

MORE

Последовательный вывод данных по частям размером в один экран.

MOVE

Перемещение одного или нескольких файлов из одной папки в другую.

PATH

Вывод либо установка пути поиска исполняемых файлов.

PAUSE

Приостановка выполнения пакетного файла и вывод сообщения.

POPD

Восстановление предыдущего значения текущей активной папки,

сохраненного с помощью команды PUSHD.

PRINT

Вывод на печать содержимого текстовых файлов.

PROMPT

Изменение приглашения в командной строке Windows.

PUSHD

Сохранение значения текущей активной папки и переход к другой папке.

RD

Удаление папки.

RECOVER

Восстановление читаемой информации с плохого или поврежденного диска.

REM

Помещение комментариев в пакетные файлы и файл CONFIG.SYS.

REN

Переименование файлов и папок.

RENAME

Переименование файлов и папок.

REPLACE

Замещение файлов.

RMDIR

Удаление папки.

SET

Вывод, установка и удаление переменных среды Windows.

SETLOCAL

Начало локальных изменений среды для пакетного файла.

SHIFT

Изменение содержимого (сдвиг) подставляемых параметров для пакетного файла.

SORT

Сортировка ввода.

START

Запуск программы или команды в отдельном окне.

SUBST

Сопоставляет заданному пути имя диска.

TIME

Вывод и установка системного времени.

TITLE

Назначение заголовка окна для текущего сеанса интерпретатора

командных строк .

TREE

Графическое отображение структуры папок заданного диска или заданной папки.

TYPE

Вывод на экран содержимого текстовых файлов.

VER

Вывод сведений о версии Windows.

VERIFY

Установка режима проверки правильности записи файлов на диск.

VOL

Вывод метки и серийного номера тома для диска.

XCOPY

Копирование файлов и дерева папок.

Для того, чтобы вывести приведенный в таблице список команд Windows XP необходимо ввести команду help без параметров.

Справка по команде Windows XP выводится либо с помощью команды

имя-команды /?

либо с помощью команды

help имя-команды

Например, справку по команде dir можно получить с помощью одной из команд:

dir /? или help dir