find и grep в Linux как инструмент для администрирования

Узнать размер папки Linux администратору дает возможность команда du из пакета coreutils. Просто набери в терминале «du» и вы получите размер всего дерева каталогов, начиная с текущего каталога. Однако, такой способ в большинстве случаев не всегда удобен, так как вывод команды получается огромным. Давайте на примерах рассмотрим, как можно менять поведение утилиты du с помощью дополнительных ключей.

Права суперпользователя

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

Способы получить права root в Linux

  • Вход от имени суперпользователя в виртуальной консоли, введя логин и пароль пользователя root.
  • Разовое переключение на роль суперпользователя в терминале с помощью специальных утилит.

О втором варианте расскажем подробнее.

  1. sudo

    (Super User Do). Позволяет исполнять команды с правами суперпользователя. Перед переходом в режим root администратора система выполнит запрос пароля и логина root. Пример:

    sudo имя_команды

  2. sudo su

    Инструмент применяется, когда нужно запустить несколько «суперпользовательских» команд. Все следующие вводимые команды будут запускаться в режиме суперпользователя до закрытия командной строки.

  3. sudo gksudo

    Осуществляет запуска приложений от имени суперпользователя, использующих не терминал, а графический интерфейс. В дистрибутиве Kubuntu имя этой команды выглядит несколько иначе — sudo kdesudo.

  4. sudo !!

    Команда применяется, если нужно перезапустить с правами root уже отданную (от имени обычного пользователя) команду.

Максимальную производительность приложений Linux зависит от правильного подбора платформы для ОС. Мощный виртуальный сервер от Eternalhost обеспечит интернет-ресурсу стабильную работу и пространство для развития.

Файловый менеджер

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

Создание документа

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

  1. Нажать правую кнопку мыши.
  2. Выбрать пункт «Создать папку/документ».
  3. Через контекстное меню (правая кнопка мыши) можно переименовать документ.
Файловый менеджер

Удаление

Несколько проще. Требуется:

  1. Найти нужный документ.
  2. Нажать по нему правой кнопкой мыши и выбрать «удалить» (или выделить с помощью левой кнопки мыши и клацнуть delete на клавиатуре).
  3. Подтвердить удаление.
  4. Очистить корзину на главном экране.

Работа с файловой системой

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

Показывает список файлов и подкаталогов.

По умолчанию все файлы, которые начинаются с точки, являются скрытыми. Чтобы их показать необходимо добавит ключ «-a».

ls -a

Если нужно вывести полную информацию, то добавим символ -l.

Итого получаем: ls -al

Результат ls -la

Расcмотрим результат выполнения ls -la:

  • drwr -xr -x — это права доступа;
  • цифра 1 — указывает количество жестких ссылок;
  • root — имя пользователя. Кто владелец;
  • root — имя группы к которой принадлежит документ;
  • 68 размер.

Показывает на экране содержимое документа. Например нужно посмотреть содержимое файла Вводим команду и путь, получается так: cat /etc/

tac противоположна cat. Выводит слово в обратном порядке.

Используется для просмотра длинных текстов с прокруткой по одной странице. Бывает так, что документ очень большой и обычный редактор не может его отрыть например mcview. Например логи. Как правило, если не задать ограничение размера логов, то они могут быть большого размера. less без труда откроит в терминале. less /var/log/syslog

Результат выполнения команды less /var/log/syslog

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

сp может:

  • копировать файл в другую директорию;
  • копировать несколько файлов в новый каталог;
  • копировать содержимое файла в другой файл той же директории.

Позволяет перейти в другую директорию: cd /etc

Перемещение на уровень выше: cd ..

Перейти в домашний каталог: cd ~

~ этот же сивол используется, если нужно обратиться к документу в домашнем каталоге. ~/

Поиск информации в файловой системе. В Линуксе найти нужный документ бывает непросто, так так файловая система разветвлена. Синтаксис такой: find path -name filename.

После имени, идет путь к каталогу где искать. Поиск будет искать во всех подкаталогах.

Можно указать несколько директорий. find /etc /var -name networks.

Система будет искать в директориях «etc» и «var» документ с именем networks.

mkdir

Создает новый каталог: mkdir newpapka

touch

Создает новый файл: touch test

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

rm /var/test

Ключи rm:

  1. -d. удалить каталог;
  2. -r. рекурсивно удалять содержимое каталогов;
  3. -f. Не запрашивать подверждения при удалении файлов.

chmod

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

Утилита терминала Линукс. Считает количество слов, символов, байт.

Основные ключи wc:

-l. Считает количество строк.

-w . Количество слов.

-m. Количество байт и символов.

Работа с диском

Показывает объем свободного места на жестком диске.

Результат выполнения df

mount.

Монтирование файловых систем. Например флешку или cdrom.

mount /dev/sdc

umont.

Размонтирования устройств.

umount /dev/sdc

Работа с пользователями

Популярная команда. Означает «SuperUser Do». Позволяет запускать сценарий с правами супер пользователя root. sudo passwd mar

useradd / userdel / usermod

useradd — позволяет создавать пользователя: useradd mar

userdel удаляет пользователя: userdel mar

usermod — добавление пользователя в группу.

passwd

Меняет пароль пользователя. Для смены пароля нужно войти в привилегированный режим linux. Добавим слово sudo или войти «sudo bash» или так «su -«.

sudo passwd user.

Основные ключи:

  • -d. Удалить пароль.  passwd -d user.
  • -l. Блокировка пароля.
  • -u. Раблокировка пароля.

-n. Дезактивировать пароль, через n дней. То есть, если пользователь не сменит пароль через n дней он не сможет войти в систему Линукс. passwd -n 80 user

Результат выполнения passwd -n 80 user

Узнать размер диска, занятое и свободное место

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

df -ah

Результат будет выглядеть примерно так:

Строки, начинающиеся с /dev/ — это физические диски, ниже — файловые системы на этих дисках. Параметр «-a» необходим для того, чтобы вывести информацию о всех установленных дисках в системе.

Если у вас остались вопросы или нужны уточнения — пожалуйста, задайте вопрос или оставьте комментарий.

grep — что это и зачем может быть нужно

Про «репку» (как я её называю) почему-то в курсе не многие, что печалит. «Унылая» (не в обиду) формулировка из Википедии звучит примерно так:

grep — утилита командной строки, которая находит на вводе строки, отвечающие заданному регулярному выражению, и выводит их, если вывод не отменён специальным ключом.

Не сильно легче, но доступнее, можно сформулировать так:

grep — утилита командной строки, используется для поиска и фильтрации текста в файлах, на основе шаблона, который (шаблон) может быть регулярным выражением.

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

Справку можно вычленить так же как по find, т.е методом pgrep, fgrep, egrep и черт знает что еще:

grep - что это и зачем может быть нужно

man grep

Или:

help grep

Расписывать все ключи и даже основные тут (вы еще помните, что это блоговая часть сайта?) не буду, так как в отличии от find‘а, последних тут вообще страшное подмножество, особенно учитывая, что существуют pgrep, fgrep, egrep и черт знает что еще, которые, в некотором смысле тоже самое, но для определенных целей.

Потрясающе удобная штука, которая жизненно необходима, особенно, если Вы что-то когда-то где-то зачем-то администрировали. Взглянем на примеры.

Заключение

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

Также рекомендуем прочитать:

  1. 8 команд Linux при использовании которых, нужно соблюдать осторожность
  2. 5 лучших дистрибутивов Linux для ноутбуков-8
  3. Самые легкие дистрибутивы Linux. Топ-10 для старых компьютеров
  4. 10 наиболее часто задаваемых вопросов о Linux

Заключение

В заключении приведу пример просмотра файла в другой директории, так как вполне возможно вам придется это делать, и не обязательно для этого переходить в саму директорию. Думаю тут все достаточно ясно, но, на всякий случай приведу данный пример. Предположим, нам необходимо просмотреть содержимое файла “” в каталоге “/etc”. Просматривать мы будем командой “head”. Для этого вводим данную команду, а затем вводим путь до файла и само название файла:

head /etc/

Заключение

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

А на этом сегодня все. Надеюсь данная статья будет вам полезна. Журнал Cyber-X

Регистр имен

Также стоит отметить чувствительность файловой системы 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/ и так далее.
Читайте также:  Сколько места занимает сайт?