Пользователи и пароль |
sudo chown -R test_static:root cannajv.com/ |
Смена владельца папки, подпапок и файлов |
|
sudo su -s /bin/bash netdata |
Переключиться на пользователя сразу в bash |
|
ssh-keygen -f ~/.ssh/known_hosts -R 203.0.113.100 |
Удалить все записи об определенном IP в known_hosts |
|
ssh-copy-id ubuntu@51.195.91.69 |
Добавить первый попавшийся SSH-ключ из ~/.ssh на сервер |
|
ssh-copy-id -i ~/.ssh/your_specific_key.pub username@server_ip |
Добавить конкретный SSH-ключ на сервер |
Backup |
sudo dd if=/dev/sda of=/dev/sdX bs=64K conv=noerror,sync |
Клонировать систему Linux на резервный диск |
Дисковое пространство |
cd / && sudo du -h --max-depth=1 |
Вывести подпапки корневого каталога с размерами |
|
df -i |
Узнать размер файловых дескрипторов (inode) |
|
du -sh имя_директории |
Узнать размер конкретной директории |
|
du -m * |
Узнать размер каждой директории в МБ и ее поддиректорий |
|
lsblk |
Посмотреть подключенные диски и их размер |
|
truncate -s 0 user_deprecated.log |
Очистить содержимое файла, не удаляя его |
|
sudo ncdu -x [directory] |
Посмотреть, какие файлы забивают место |
|
sudo find ./ -type f -mtime +90 -exec rm -f {} + |
Удалить самые старые логи (старше 90 дней) |
|
find . -type d -name ".ssh" |
Найти папку в директории и поддиректориях |
|
lsof +L1 |
Если ты удалил (или лог-менеджер удалил) большие файлы, но они всё ещё открыты каким-то процессом — они всё ещё занимают место на диске, но du их уже не видит.
Проверить такие файлы можно как раз этой командой и затем выполнить kill <pid> этих процессов |
Оперативная память |
top -o %MEM |
Показать процессы, использующие наибольшую память |
|
ps -eo comm,%mem --sort=-%mem | awk '!seen[$1]++' |
Уникальные команды и их использование памяти в % |
ЦПУ |
ps -Ao user,uid,comm,pid,pcpu,tty --sort=-pcpu | head -n 6 |
Топ 6 процессов по использованию CPU |
Передача/поиск файлов |
sudo dpkg -i <path/to/.deb> |
Установка .deb пакета |
|
sudo rsync -avz --progress /var/www/project/liftvz.com/bg2.liftvz.com otulashvili@dev-static:/var/www/project/ |
Передача файлов между серверами через rsync |
|
sudo scp SRC:<user@host:path> DEST:<user@host:path> |
Передача файлов между серверами через scp |
|
scp ubuntu@51.195.91.69:/sbin/node_exporter root@164.92.249.138:/sbin/node_exporter |
Пример передачи файла не на localhost |
|
find . -mindepth 1 -maxdepth 1 ! -name 'dir1' ! -name 'dir2' -exec rm -r {} + |
Удалить все файлы/директории, кроме указанных |
|
sudo find /srv/salt/ -type f -name 'es.sls' |
Поиск файла в поддиректориях |
|
ln -s {оригинал} {симлинк} |
Создание симлинка |
|
tar xvfz prometheus-2.53.2.linux-amd64.tar.gz |
Разархивирование tar.gz файла |
Web |
nginx -t |
Проверить валидность конфига nginx |
|
sudo openssl x509 -in /opt/letsencrypt/certs/vpn441.project/fullchain.pem -text -noout | grep -A1 "Subject Alternative Name" |
Проверить subjectAltName в сертификате |
Содержимое файлов |
ls -ltr |
Сортировка содержимого по возрастанию даты изменения |
|
ls -lt |
Сортировка содержимого по убыванию даты изменения |
|
sed -i 's/arn:aws:s3:::[^"]*/arn:aws:s3:::new-bucket-name/g' |
Поиск и замена строк в файлах |
Процессы и управление ими |
sudo lsof -iTCP -sTCP:LISTEN -P -n |
- -iTCP — только TCP-соединения - -sTCP:LISTEN — только те, которые слушают порты (ожидают подключения) - -P — показывать номера портов (а не их имена вроде http, ssh) - -n — не пытаться определять имена хостов (быстрее) |
|
journalctl -u <service> -f |
Посмотреть логи определенного сервиса в реальном времени |
Сеть |
nc -vzu <ip/domain> <port> |
Проверка, может ли текущий сервер подключиться к указанному по ip/домену и порту |