Шпаргалки

CentOS 7 — команды общего назначения:

КОМАНДЫ ОПИСАНИЕ
Системные:  
— версия системы  
cat /etc/*-release Узнать версию дистрибутива.
uname -a Узнать имя дистрибутива.
uname -m Узнать разрядность дистрибутива.
arch Узнать разрядность дистрибутива, еще вариант.
— версия ядра  
uname -msr Узнать версию ядра системы.
— кто логинился в систему?  
lastlog Узнать список логинов в системе и их дату последней активности.
lastlog | grep -v ‘Never’ | awk ‘{print $1}’ Узнать кто хотя бы раз логинился в операционной системе.
free -m Посмотреть загрузку оперативной памяти RAM в мегабайтах -m или гигабайтах -g.
Сетевые устройства:  
lspci Видит ли ваша операционная система сетевое оборудование?
ifconfig Посмотреть сетевые интерфейсы.
ip link ls Посмотреть какие есть сетевые устройства.
ifdown eth0  Деактивировать сетевой интерфейс.
ifup eth0 Активировать сетевой интерфейс.
YUM:  
rpm -qa | grep -i yum Узнать версию установленного пакета.
yum -y update && yum -y upgrade Обновить операционную систему.
yum search java Посмотреть какие пакеты java есть в репозиториях.
yum list installed pptp Посмотреть установлен ли в системе пакет pptp.
yum -y localinstall *.rpm Устанавливать все пакеты в локальном каталоге.
Процессы:  
ps auxf
Вывести фоновые процессы сервера в виде веток.
ps axu | grep tcpdump Вывести фоновые процессы tcpdump.
kill -9 PID Убить процесс PID tcpdump.
Место расположения файлов процесса:  
whereis ipset Ответ: ipset: /usr/sbin/ipset /usr/share/man/man8/ipset.8.gz
which ipset Ответ: /usr/sbin/ipset
Сетевые:  
route -n Просмотреть таблицу маршрутизации, gateway.
netstat -nr Просмотреть таблицу маршрутизации, gateway. Тоже самое.
netstat -na | grep ‘:443.*LISTEN’ Чтобы узнать, занят ли порт 443.
Работа с файлами и каталогами:  
— структура устройств хранения  
lsblk Посмотреть структуру устройств хранения информации и их размер.
— где я?  
pwd Вывод пути каталога, в котором сейчас находитесь.
— кто я?  
whoami Вывод имени пользователя, под которым вы сейчас в системе.
— перейти в каталог  
cd /way/to/folder Перейти в каталог ../folder.
— создать файл/каталог  
touch /way/file.name Создать файл файл в указанном каталоге.
mkdir -p /way/dir1/dir2 Создать рекурсивно группу каталогов по ветке.
— удалить файл/каталог   
rm /way/file.name Удалить файл.
rm -r /way Удалить рекурсивно все файлы из директории.
— копировать файл/каталог   
cp /from/file.name /copy_to_here Копировать ./from/file.name в директорию ./copy_to_here.
cp /from/folder /copy_to_here Копировать ./from/file.name в директорию ./copy_to_here.
— переместить файл/каталог  
mv /from/file.name /copy_here Переместить ./from/file.name в директорию ./copy_here.
mv /old_name /new_name Переименовать файл/директорию old_name в new_name.
— содержание каталога  
ls /way/folder/dir2 Вывести содержание каталога dir2.
ls Вывести содержание текущего каталога.
— узнать размеры файл/каталога  
du -h /var/lib/vz/images/file.iso Показать размер конкретного файла.
du -h /var/lib/vz/images/ Показать размер конкретного каталога.
du -s * | sort -n Показать размеры каталогов в порядке возрастания их объемов.
Работа с правами доступа:  
chown -R nginx:nginx /way Настроить права для работы nginx с каталогом.
chmod -R 700 /way Настроить права по коду 700 на каталог.
chmod +x /sh/minecraft/restart.sh Сделать файл исполняемым. Чтобы выполнить скрипт в указанной оболочке, нужно установить для него флаг исполняемости.
Выгрузка данных:  
find /var/www >> /tmp/all_files.txt Выгрузить все результаты работы утилиты в текстовый файл.
АРХИВАТОРЫ:  
tar cjf archive.tar.bz2 mydir/
Создать tar.bz2 архив.
tar xvjf archive.tar.bz2 Распаковать tar.bz2 архив в текущую директорию.
tar czf archive.tar.gz mydir/ Создать tar.gz архив.
tar xvzf archive.tar.gz Распаковать tar.gz архив в текущую директорию.
CURL:  
curl ‘https://hamsterden.ru’
curl ‘localhost:9090/metrics’
Вывести на экран результат запроса по доменному имени или IP-адресу.
curl -u user:password ‘ftp://1.2.3.4/from/file.vbm’ -o /to/here/file.vbm Скачать конкретный файл file.vbm с FTP в конкретный каталог.
GREP:  
grep -vE ‘(^[[:space:]]*([#;!].*)?$)’ /sh/restart.sh Вывести файл ./sh/restart.sh без закомментированных строк.
SSH:  
ssh -p 22 user@192.168.022 Подключиться от имени пользователя по ssh к порту 22 на указанный IP-адрес.
ssh -A hamster.fat@server.inperm.ru ssh hamster.fat@10.12.10.11 Проброс ключа через доступный сервер на недоступный сервер за доступным сервером.
ssh friend@192.113.35.162 -i /root/.ssh/friend/id_rsa Подключиться конкретным пользователем с конкретным ключом.
NOHUP:  
nohup [команда] & Скрыто без закрытия процесса, после закрытия терминала, продолжать что-то делать в фоновом режиме.
TCPDUMP:  
tcpdump -i any port 80 -c 100 >> /way/tcpdump-any-443.txt Снять дамп со всех интерфейсов по 80 порту в файл ./way/tcpdump-any-80.txt в количестве 100 строк. Выводить информацию с именами hosts.
tcpdump -i any port 443 -c 100 -nn >> /way/tcpdump-443-nn.txt Снять дамп со всех интерфейсов по 443 порту в файл ./way/tcpdump-any-443.txt в количестве 100 строк. Выводить информацию в виде IP-адресов.
RSYNC:  
rsync —rsh ssh —recursive —verbose —progress -vP —append-verify /go/backup root@1.2.3.4:/here/backup Копирование с одно места в другое с возможностью видеть прогресс с подробностями, выводить статистику по скорости передачи, не удалять недозалитый файл при обрыве соединения.

echo:

При выводе командой echo строки разделить символом перевода строки.:

# echo -e "Test\nTest"

Ответ:

Test
Test

Nginx:

Проверить версию веб-сервера Nginx:

# nginx -v

Просмотреть версию и настройки параметров:

# nginx -V

Проверить конфигурацию Nginx и найти ошибки:

# nginx -t

Проверить конфигурацию Nginx и вывести подробности:

# nginx -T

Перечитать конфигурационные файлы:

# nginx -s reload


Screen:

Создать новую сессию с именем имя_сессии:

# screen -S имя_сессии

Посмотреть список запущенных сессий:

# screen -ls

  • Attached — задействован;
  • Detached — не задействован.

Переход в сессию по параметру:

# screen -r 12345


PostgreSQL:

Авторизация в системе баз данных:

# sudo su postgres
# psql postgres

Создание резервных копий:

# pg_dump users > /tmp/users.dump

Вывести подробный список имён баз данных в системе:

# \l+

Выбрать конкретную базу данных по имени имя_db:

# \c имя_db

Вывести подробный список имён таблиц в базе данных имя_ db:

# \dt

Вывести подробный список имён колонок-столбцов в таблице имя_table:

# \d имя_table

Вывести содержимое колонки-столбца имя_column из таблицы имя_table на экран:

> SELECT имя_column FROM имя_table; 

Вывести содержимое колонки-столбца имя_column из таблицы имя_table в текстовый файл имя_file.txt :

> COPY (SELECT имя_column FROM имя_table | TO '/way/file.txt';

Выйти из интерфейса системы баз данных:

\q

Просто выйти из просмотра списков — клавиша q.


Просмотреть список таблиц баз данных:

# psql -U postgres -l


MariaDB - WordPress:

Команда для MariaDB, убирает резервные копии станиц в базе данных WordPress.

DELETE FROM wp_posts WHERE post_type = "revision";

PHP:
Как посмотреть версию php.
# php -v

IPtables:
Примеры синтаксиса:

-A INPUT -i ens19 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i ens19 -p tcp -m tcp --dport 443 -j ACCEPT

Rsync:

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

  • /dev
  • /media
  • /mnt
  • /proc
  • /sys

Ansuble:

1. Пропинговать сервер KVM учетной записью aleksandr с аутентификацией по паролю:

# ansible kvm -m ping -u aleksandr --ask-pass


Плагин с шорткодами для WordPress:

Спойлер для сайта.

Спойлер для сайта.
Спойлер для сайта.