Основные команды при работе по SHH для Веб-сервера Linux через SHH клиент PuTTY

Основные команды при работе по SHH
  • 21.09.2015
  • 8781
  • 3.3
  • 0
  • Константин Винниченко

SSH команды проверены в CentOS

Ниже приведен список основных команд при работе SSH (на деле в OS Linux в командной оболочке Bash по соединению SSH, через программу PuTTY). Остальные команды не стал добавлять, так как на моей практике редко используются. Для каждой команды можно получить подробный мануал, вызвав следующую инструкцию:

  • man ИмяКоманды — вывести справку для ИмяКоманды, помощь по работе с командой

Если вы работаете в PuTTY, то правый клик вставит текст из буфера обмена, так что копируем команду и делаем правый клик в программе.

Данные команды проверены при работе с OS Linux CentOS 6

Клавиатурные сочетания в 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

Просмотр списка базы данных

SHOW DATABASES;

Создать новую базу данных с именем sitemanager0

CREATE DATABASE sitemanager0;

Просмотр списка пользователей

SELECT user, host FROM mysql.user;

Создать пользователя mainsite и задать пароль PASS

CREATE USER 'mainsite'@'localhost' IDENTIFIED BY 'pass';

Указать все привилегии для базы данных sitemanager0 пользователю mainsite

GRANT ALL ON sitemanager0.* TO 'mainsite'@'localhost';

Задать пароль PASS2 пользователю mainsite

SET PASSWORD FOR 'mainsite'@'localhost' = PASSWORD('pass2');

Удалить пользователя

DROP user 'mainsite'@'localhost';

Экспорт базы данных в файл

mysqldump --opt -Q -uЛОГИН -pПАРОЛЬ ИМЯ_БАЗЫ > ИМЯ_ФАЙЛА.sql

Импорт базы данных из файла

mysql -uЛОГИН -pПАРОЛЬ ИМЯ_БАЗЫ < ИМЯ_ФАЙЛА.sql

Команды для php

Обычно php.ini находится в /etc/php.ini, чтобы узнать точно, введите последовательность команд:

  • updatedb потом locate php.ini — показать где находится php.ini
  • find / -name php.ini — поиск всех файлов с именем php.ini c корня OS
  • php index.php — выполнить php-файл

Полезные решения

Как синхронизировать время сервера по SSH

/usr/sbin/ntpdate -b ru.pool.ntp.org если скажет нет такой команды то сделать yum install ntp -y и снова выполнить предыдущую команду, для проверки времени следует использовать команду date

Как найти вирус во всех файлах сервера по SSH

  • grep -R "Hacked by" /home/bitrix/www > /home/bitrix/find-grep.txt — найти все файлы с текстом "Hacked by", где -R рекурсивно
  • find /home/bitrix/www/ -mtime +14 -print > /home/bitrix/find.txt — найти все файлы которые изменялись/создавались за последние 14 дней, список вывести в отдельный файл

Полезно сделать

Рейтинг:
(3.3 из 5 - 1 голос)
Сохранить страницу себе: