Перечень команд постоянно пополняется
Смена группы и владельца файлов/папок
chown -R 600:600 /path/to/change/
Смена прав доступа к папкам (со всеми вложенными)
find -type d -exec chmod 755 {} \;
Смена прав доступа к файлам (со всеми вложенными)
find -type f -exec chmod 644 {} \;
Копирование папок с нашего сервера на удаленный
scp -P 22 -r /home/copy_from/ root@server.name:/root/photos
Копирование папок с удаленного сервера на наш
scp -P 22 -r root@server.name:/root/photos /home/copy_to/
здесь -P ХХ цифра обозначает порт передачи данных, а флаг -r - рекурсивное копирование всех вложенных папок и файлов
Посмотреть размер директорий в текущей
du -sh *
Предварительно нужно с помощью команды cd перейти в нужный раздел
Удаление папок внутри текущей
rm -rf *
С этой операцией очень аккуратно действовать! Предварительно обязательно перейти в нужную директорию с помощью команды cd!!!
Рекурсивное удаление папок внутри текущей
find -type d -name "vn" -exec rm -r {} +
Команда ищет и удаляет папку vn со всеми файлами внутри текущей папки
Посмотреть свободное место на сервере
df -h
Вывести топ10 самых жрущих процессов
ps -eo user,pcpu,pmem,pid,cmd | sort -r -k3 | head -10
Убить процесс принудительно
kill -SIGTERM pid_процесса
здесь pid_процесса получается командой ps, которая указана выше
Поиск по содержимому файлов
find ./ -type f -name "*.php" -exec grep -i -H "SEARCH STRING" {} \; > out.txt
*.php — тип файлов, которые анализируем;
SEARCH STRING — то что ищем в файлах (можно писать и кириллицей);
-i будет игнорировать регистр при поиске.
Результат будет записан в файл out.txt. Если хотите вывести результат на экран, то уберите конструкцию > out.txt из команды
Поиск файлов по дате модификации
find -name "*.php" -mtime -3
Указанный код ищет файлы PHP, измененные за последние 3 дня.
Архивация папок
Предварительно нужно перейти на уровень выше архивируемой папки
ZIP: zip -r archive.zip DirectoryName
TAR: tar -cvf archive.tar DirectoryName
TAR.GZ: tar -zcf archive.tar.gz DirectoryName
Если вы находитесь в директории, которую надо заархивировать, то вместо DirectoryName нужно поставить точку (.)
MySQL
Создать дамп базы
mysqldump -u пользователь_БД -p имя_БД > имя_файла
Заархивировать дамп
tar -zcvf dump.tar.gz dump.sql
Разархивировать дамп
tar -xzvf dump.tar.gz dump.sql
Продолжение следует...
Больше полезных материалов в нашем Telegram канале. Вступайте и будем на связи! https://t.me/bf_conversion