UCS - коллекция мануалов

Практика - критерий истины...

Инструменты пользователя

Инструменты сайта


linux:commands

Команды, комбинации и их алиасы в Linux

Анализ файлов конфигурации

Просматриваем не закомментированные строки в конфигах/файлах

grep -v '^$\|^\s*\#' config.conf   # исключая комментарии и пустые строки

grep -v '^$\|^#' config.conf       # не учитывая комментариев, начинающихся не с начала строки
  • пример с конфигом ejabberd'а старых версий, где комментарии в виде «%» 1):
grep -v '^$\|^\s*\%' /etc/ejabberd/ejabberd.cfg

Поиск файлов и директорий

find /$HOME -type d -name "mime"   # найти директорию mime в домашнем каталоге
find /$HOME -type f -name "types"  # найти файл types в домашнем каталоге

Управление правами пользователей и групп

Находим и рекурсивно изменяем права

find . -type d -exec chmod 0755 "{}" \;               # директорий (в данном примере мы уже в ней)

find . -type f -exec chmod 0644 "{}" \;               # файлов (в данном примере в этой же директории)

find /path/to/target/ -type d -exec chmod 755 {} \;   # на строго указанные директории

find /path/to/target/ -type f -exec chmod 644 {} \;   # файлов в строго указанных директориях

find . -type f -iname '*.sh' -exec chmod 755 "{}" \;  # файлов с определенными расширениями (в данном примере на bash-скрипты в этой же директории)

Находим и рекурсивно изменяем владельца/группу

chown -R user:group /path/to/target/                         # всех файлов и каталогов по заданному пути

find /path/to/target/ -type d -exec chown user:group {} \;   # только каталогов по заданному пути

find /path/to/target/ -type f -exec chown user:group {} \;   # только файлов по заданному пути

Очень подробную и интересную статью о правах доступа можно почитать здесь

Потребление памяти

Смотрим, какие процессы самые прожорливые

ps -eo pmem,ppid,comm | sort -k 1 -r | head -11 | tail -10   # вывод на 10 строк

ps -eo pmem,ppid,comm | sort -k 1 -r | head -21 | tail -20   # вывод на 20 строк

Значение можно изменять самостоятельно, присмотритесь к командам и вы все поймете сами :-).

Посмотреть потребление ресурсов более подробно

А также убить любой процесс при наличии соответствующих прав можно с помощью top или htop. Как правило, top входит в стандартную поставку почти всех Linux-дистрибутивов, htop же можно установить одной командой:

sudo yum install htop   # RPM-based дистрибутивы

sudo apt install htop   # DEB-based дистрибутивы

htop часто применяется в тех случаях, когда информации, получаемой от утилиты top, недостаточно, например, при поиске утечек памяти в процессах. Официальный сайт проекта HTOP

Посмотреть общее потребление памяти и управление ее ресурсами

free -h   # ключи для необходимого отображения вывода можно посмотреть в "man free"

При необходимости выгрузить память из SWAP, необходимо временно его отключить и дождавшись окончания операции, снова подключить его:

sudo swapoff -a   # дожидаемся окончания, затем:
sudo swapon -a   # снова подключаем SWAP

Лри необходимости выгрузить закешированную память:

sync; echo 3 > /proc/sys/vm/drop_caches

Мониторинг и безопасность сетевых соединений

Проверить, с каких IP-адресов к вам «стучатся» по SSH, с какой интенсивностью и какие логины при этом используют, полезно при аудите безопасности вашего сервера:

cat /var/log/auth.log | grep 'Invalid user' | awk '{print $1 "-" $2; print "-";print  $3; print $8; print $10}'

То же самое, но с записью в текстовый файл:

cat /var/log/auth.log | grep 'Invalid user' | awk '{print $1 "-" $2; print "-";print  $3; print $8; print $10}' > /push/to/auth.txt

Посмотреть отфильтрованный вывод текущих ipv4-соединений:

netstat -tulpn | grep -i 'tcp' | grep -v 'tcp6'

Заблокировать диапазон сетей:

iptables -I INPUT -m iprange --src-range 192.168.0.8-192.168.0.25 -j DROP
iptables-save

Работа с архивами

Распаковать архив

1)
erlang синтаксис
linux/commands.txt · Последнее изменение: Luciferus