SSH команды

1 ноября 2017
Cтатья скопирована от сюда: https://seoup.su/seoup/blog/shh-komandy_detail/

Клавиатурные сочетания в PuTTY

  • Ctrl+C — завершить текущую команду
  • Ctrl+D — разлогиниться как exit
  • Ctrl+W — удалить одно слово в текущей строке
  • Ctrl+U — удалить строку
  • Tab — автозаполнение, завершение команды когда других вариантов нет

Команды для пользователей системы

  • su root — сменить текущего пользователя на пользователя root
  • passwd root — сменить пароль для пользователя root
  • whoami — вывести имя текущего пользователя
  • who — показать список пользователей в системе
  • w — показать информацию о работающих в данный момент на сервере и о их процессах, а также среднюю нагрузку сервера за последние 1, 5 и 15 минут (uptime + who).

Команды с файлами и папками

  • ls — список файлов и папок в текущей директории
  • ls -lia — вывод списка даже скрытых файлов и папок по алфавиту с отображением размеров
  • cd ПУТЬ/ — (change directory) сменить директорию на путь/
  • pwd — показать текущую папку
  • cd / && du -hs * — когда жесткий забит до отказа, то посмотреть в какой именно директории много файлов
  • df — (disk free) узнать размер всех смонтированных дисков
  • mkdir ПАПКА — создать папку
  • rmdir ПАПКА — удалить папку из файловой системы
  • rm -rf ПАПКА – удалить папку со всем содержимым без подтверждения
  • mv ПАПКА1 ПАПКА2 — (move) используется для перемещения или переименования файлов или папок
  • cp -r ПАПКА1 ПАПКА2 — скопировать папка1 в папка2
  • du -sh — сколько весит текущая папка
  • du -sh * — показать размер каждого файла в текущей папке
  • vi ФАЙЛ или view ФАЙЛ — вывести файл на экран в редакторе, для выхода ESC и отправить команду :q
  • touch ФАЙЛ — создать файл
  • rm ФАЙЛ — удалить файл
  • cp ФАЙЛ1 ФАЙЛ1 — скопировать файл1 в файл2
  • ln -s ФАЙЛ ССЫЛКА — создать символическую ссылку к файлу
  • fsck -y — автоматическая проверка и исправление ошибок в файловой системе
  • find / -name php.ini — поиск файла с именем php.ini c корня OS
  • find / -name a.txt -printf '%TY-%Tm-%Td %TT %p\n' | sort -r — поиск файлов с именем a.txt c корня OS с выводом датой изменения и сортировкой в обратном порядке
  • find /home/bitrix/www/ -mtime -14 -printf '%TY-%Tm-%Td %TT %p\n' > /home/bitrix/find.txt — поиск всех файлов в папке WWW которые изменялись за последние 14 дней и выводом результата в файл

Команды работы с архивами

  • tar АРХИВ.tar ФАЙЛ — заархивировать файл и присвоить ему имя архив.tar:
  • tar cf АРХИВ.tar ФАЙЛ — создать tar-архив с именем file.tar содержащий files
  • tar xf АРХИВ.tar — распаковать файл.tar
  • tar czf АРХИВ.tar.gz ФАЙЛ — создать архив tar с сжатием Gzip
  • tar xzf АРХИВ.tar.gz — распаковать tar с Gzip
  • tar cjf АРХИВ.tar.bz2 — создать архив tar с сжатием Bzip2
  • tar xjf АРХИВ.tar.bz2 — распаковать tar с Bzip2
  • gzip ФАЙЛ — сжать файл и переименовать в file.gz
  • gzip -d АРХИВ.gz — разжать архив.gz в file
  • zip -r АРХИВ.zip ПАПКА/ — запаковать в архив.zip включая все папки в ПАПКА

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

  • chown root:testuser ПАПКА/ - сменить владельца для папки или файла
  • chmod 751 ПАПКА/ - сменить права доступа на директорию (для директорий зачастую используются 751(-rwxr-xr-x) или файлов - 644(-rw-rw-r--)), где сумма чисел
  • 4 — чтение (r)
  • 2 — запись (w)
  • 1 — исполнение (x)

Процессы

  • top — показать все запущенные процессы
  • kill pid — убить процесс с id pid
  • killall proc — убить все процессы с именем proc
  • ps — вывести ваши текущие активные процессы
  • ps -aux — вывести все процессы (от рута)

Системная информация и команды

  • reboot ИЛИ shutdown -r — перегрузить сервер
  • df — показать инф. о использовании дисков
  • free — использование памяти и swap
  • vmstat — свободная память и загрузка процессора
  • uptime — показывает текущее время, время работы после загрузки, количество текущих пользователей и нагрузку за последние 1, 5 и 15 минут
  • date — вывести текущую дату и время
  • cal — вывести календарь на текущий месяц
  • cat /proc/cpuinfo — информация о процессоре CPU
  • cat /proc/meminfo — информация об оперативной памяти DDR
  • cat /etc/*release* — узнать версию дистрибутива Linux

Информация о сети и сетевые настройки

  • ifconfig — показать сетевые интерфейсы и подключения
  • ifconfig -a — Отображение всех интерфейсов, включая отключенные
  • ifconfig eth0 down — выключаем интерфейс eth0
  • ifconfig eth0 up — поднимаем (включаем) интерфейс eth0
  • ping ya.ru — сделать пинг сайта, проверка соединений в сетях TCP/IP
  • traceroute ya.ru — определить маршрут следования данных в сетях TCP/IP
  • dig ya.ru — получить DNS информацию ya.ru
  • wgеt ФАЙЛ — скачать файл по сети
  • wgеt -c ФАЙЛ — продолжить остановленную закачку

Установка пакетов

  • yum update — обновление всей системы
  • yum update foo — обновить только пакет foo
  • yum remove foo — удалить пакет foo из системы
  • yum install foo — установка пакета через интернет
  • yum localinstall foo.rpm — установить пакет локально
  • yum list foo — просмотреть название пакетов и их версии для foo
  • yum search foo — поиск пакета с названием foo
  • yum provides foo — поиск пакетов содержащих файл foo
  • yum clean all — очистить кэш
  • yum makecache — создать кеш заново

Текстовый редактор VIМ

VIM имеет три режима работы:
  • командный — нажатие Esc
  • режим редактирования — нажатие Ctrl+V
  • визуальный режим — нажатие клавиш редактирования

Основные команды VIM редактора

  • vi ФАЙЛ — открыть файл в редакторе VIМ
  • i — перейти в режим редактирования
  • a — перейти в режим редактирования после текущего символа
  • h — Перемещает курсор на один символ влево
  • j — Перемещает курсор вниз на одну строку
  • k — Перемещает курсор вверх на одну строку
  • l — Перемещает курсор на один символ вправо
  • x — Удалить символ
  • u — отмен::q:qlить последнее действие
  • yy — копировать строку
  • dd — вырезать строку
  • p — вставить
  • <CR> — Возврат каретки
  • <ESC> — Перейти из режима ввода в командный режим
  • :w — сохранить файл на диске
  • :q — Завершить работу с редактором
  • :q! — выход без сохранения файла
  • :wq или zz — выход с сохранением файла

Настройка задач в Cron и автоматизация работы

  • crontab -e — настройка автозапуска в редакторе vi
  • vi /etc/crontab — основной файл конфигурации cron

Пример команды
*/5 2 10,12,31 1-3,12 7 cd /home/www/ && php send_reports.php

Команды делаться пробелом, где:
  • */5 – запускать каждые 5 минут (принимает * или любое целое число от 0 до 59)
  • 2 – в 2 часа ночи (* или 0-23)
  • 10,12,31 – только в дни 10, 12, 31 числа (* или 1-31)
  • 1-3,12 – месяцах Январь, Февраль, Март, Декабрь (* или 1-12)
  • 7 – запускать в день недели, когда Воскресенье (0-7)
  • cd /home/www/ && php send_reports.php – сама команда, здесь в папке /home/www/ запускаем файл send_reports.php в программе php

Перечисляемые значения

  • x — конкретное число и значение
  • * — принимать все допустимые значения
  • */x — задать шаг значений
  • x,x — перечисление
  • x-x — интервал значений


Команды для управления Веб-сервером

Команды для Apache

  • service httpd restart ИЛИ apachectl -k restart — рестарт веб-сервера Apache
  • service httpd stop — остановка веб-сервера Apache
  • service httpd start — запуск веб-сервера Apache
  • service nginx restart — рестарт nginx

Команды для MySQL

  • /etc/init.d/mysqld restart или /etc/rc.d/mysql-server restart или /usr/local/etc/rc.d/mysql-server restart — перезапуск MySQL
  • /usr/local/etc/rc.d/mysql-server stop — остановка MySQL
  • /usr/local/etc/rc.d/mysql-server start — запуск MySQL
  • mysql –v — узнать версию MySQL
  • mysql –uЛОГИН –pПАРОЛЬ — вход в MySQL