Linux Commands
Категория | Команда | Описание |
---|---|---|
Пользователи и пароль | 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/домену и порту |