KnigaRead.com/

Михаил Флёнов - Linux глазами хакера

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Михаил Флёнов, "Linux глазами хакера" бесплатно, без регистрации.
Перейти на страницу:

Нам предстоит поближе познакомиться с файловой системой, основными конфигурационными файлами и командами, которые пригодятся в каждодневной работе. ОС Linux может работать в двух режимах — графическом и текстовом. Многие авторы почему-то ограничиваются рассмотрением только текстового режима в консоли. Это пугает тех пользователей, которые привыкли к Windows и интуитивно понятному интерфейсу. Мы будем разбирать одновременно оба режима. И все же, консоли будет уделяться достаточно много внимания, потому что зачастую с ее помощью можно быстрее, нежели через графические утилиты, решить какие-либо проблемы. Я постараюсь показать вам преимущество консоли перед курсором мыши. Дело в том, что серверы на предприятиях должны стоять в отдельной комнате и, возможно, даже без монитора. Управление происходит через удаленную консоль, и визуальные возможности Linux не используются. Тогда зачем загружать тяжелые графические библиотеки, файлы и другие ресурсы? Это же пустое расходование памяти!!! Не лучше ли ее освободить для более полезных вещей.

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

Как видите, возможность работать в двух режимах — это преимущество Linux, а не недостаток. Если бы в Windows можно было выгрузить из памяти графическую оболочку и оставить только командную строку, то вы смогли бы сэкономить драгоценную память и повысить надежность этой ОС. Когда не работают графические библиотеки, то и проблемы с ними отсутствуют. Сколько раз мы видели синие экраны с ошибками в драйвере видеокарты? В консоли Linux этого произойти не может.

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

3.1. Файловая система

Прежде чем перейти к настройкам системы, нам нужно познакомиться поближе с файловой системой Linux. О структуре мы уже немного поговорили в разд. 2.3, когда разбивали жесткий диск. В табл. 2.1 были перечислены разделы, которые можно создать в Linux, а это не что иное, как основные папки.

Теперь, наверное, нужно было бы перечислить команды, с помощью которых можно управлять директориями и файлами, а также просматривать и редактировать их. Но мы сделаем это чуть позже, а сейчас я хочу показать одну лишь программу Midnight Commander (МС). Это лучшее средство для решения всех описанных выше задач. Программа присутствует в большинстве дистрибутивов, в том числе и в Red Hat. Для ее запуска наберите в командной строке mc и нажмите клавишу <Enter>. Постепенно мы будем знакомиться с этой утилитой, и вы полюбите ее за удобство и мощь, а сейчас рассмотрим только основные возможности.

На рис. 3.1 изображено окно терминала, в котором запущена программа МС. Окно состоит из двух независимых панелей, в каждой из которых вы можете видеть файлы и папки текущей директории (имена папок начинаются с символа слэш). Для перемещения между панелями используется клавиша <Tab>.

Рис. 3.1. Окно терминала с запущенной программой Midnight Commander

С правой стороны показана корневая папка. Это самый верхний уровень вашей файловой системы. Посмотрите на список папок в этой панели. Большинство названий нам знакомо по табл. 2.1. Каждая из этих папок может находиться в собственном разделе жесткого диска, если при установке вы его создали. Но даже в этом случае в файловой системе вы будете видеть все как одно целое.

В разд. 2.3.3 мы говорили про корневой каталог, который в Linux обозначается как знак "/". Именно он является вершиной пирамиды в иерархии всех каталогов. Например, папки пользователя находятся в каталоге /home. Тогда /home/flenov будет определять путь к подкаталогу пользователя flenov. Чтобы попасть в эту директорию, нужно навести на нее курсор и нажать <Enter>.

В списке папок и файлов самой первой всегда стоит папка с именем /... Реально такого каталога не существует. Это указатель на родительскую директорию, с помощью которой вы можете попасть на уровень выше. Например, вы находитесь в подкаталоге /home/flenov. Если войти в папку /.., то вы поднимитесь на предыдущий уровень и окажетесь в директории /home.

Внизу окна МС (см. рис. 3.1) можно увидеть строку-приглашение для ввода команд. Эта та же строка, что мы видели в терминале, и позволяет выполнять те же директивы. Еще ниже расположена строка меню с подсказками о назначении клавиш <F1>—<F10>:

□ 1 (Помощь) — вызов файла помощи по программе;

□ 2 (Меню) — вызов меню основных команд МС;

□ 3 (Просмотр) — просмотр выделенного файла;

□ 4 (Правка) — редактирование выделенного файла во встроенном текстовом редакторе;

□ 5 (Копия) — копирование выделенного файла или папки. Если выделить файл и нажать клавишу <F5>, то появится окно подтверждения копирования. По умолчанию операция выполняется в текущую директорию противоположной панели программы МС;

□ 6 (Перемес) — переместить выделенные файлы или папки. По умолчанию файл будет перенесен в директорию, являющуюся текущей для противоположной панели программы МС;

□ 7 (НвКтлог) — создать новый каталог в текущем;

□ 8 (Удалить) — удалить выделенные файлы и папки;

□ 9 (МенюМС) — вызвать меню программы МС, которое находится вверху окна;

□ 10 (Выход) — выход из программы.

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

3.1.1. Основные команды

Давайте рассмотрим основные команды файловой системы, которые мы будем использовать в книге, и заодно подробнее познакомимся с файловой системой Linux.

pwd

Эта команда выводит на экран полный путь к текущему каталогу. С ее помощью вы можете в любой момент узнать, где находитесь.

ls

Команда ls выводит список файлов и подкаталогов указанной директории. Если имя каталога (файла) отсутствует в параметрах команды, то отображается содержимое текущего каталога. По умолчанию все настроечные файлы (имена начинаются с точки) являются скрытыми. Чтобы их вывести, нужно указать ключ -а:

ls -а

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

ls -al

Но такая команда отобразит файлы текущей директории, и не факт, что мы сейчас находимся, например, в каталоге /etc, который надо просмотреть. Чтобы увидеть именно его, после ключей (можно и до них) нужно указать требуемую папку:

ls -al /etc

Примечание

Более подробную информацию о команде ls можно получить из справочной системы. Для этого выполните команду man ls.

Рассмотрим результат вывода команды ls -al:

drwx------ 3 Flenov FlenovG 4096 Nov 26 16:10 .

drwxr-xr-x 5 root   root    4096 Nov 26 16:21 ..

-rw-r--r-- 1 Flenov FlenovG   24 Nov 26 16:10 .bash_logout

-rw-r--r-- 1 Flenov FlenovG  191 Nov 26 16:10 .bash_profile

-rw-r--r-- 1 Flenov FlenovG  124 Nov 26 16:10 .bashrc

-rw-r--r-- 1 Flenov FlenovG 2247 Nov 26 16:10 .emacs

-rw-r--r-- 1 Flenov FlenovG  118 Nov 26 16:10 .gtkrc

drwxr-xr-x 4 Flenov FlenovG 4096 Nov 26 16:10 .kde

По умолчанию список файлов выводится в несколько колонок. Разберем их на примере первой строки:

□ drwx------ права доступа. Их мы подробно рассмотрим в гл. 4. Сейчас вам только нужно знать, что если первая буква "d", то это директория;

□ цифра 3 — указывает количество жестких ссылок;

□ Flenov — имя пользователя, являющегося владельцем файла;

□ FlenovG — группа, которой принадлежит файл;

□ 4096 — размер файла. Для директории это значение отсутствует, т.к. не устанавливается ее размер;

□ дата и время последних изменений файла;

□ имя файла.

cat

Команда позволяет вывести на экран содержимое указанного в качестве аргумента файла. Например, вы хотите просмотреть текстовый файл need.txt. Для этого нужно выполнить команду:

cat need.txt

Но это справедливо, если файл находится в текущей директории. А если нет? В этом случае можно указать полный путь:

cat /home/root/need.txt

tac

Эта команда обратная для cat (даже название команды — это слово cat наоборот), т.е. выводит на экран файл в обратном порядке, начиная с последней строки до первой.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*