Мои любимые команды Linux
Горячие клавиши
Ctrl + Alt + T = консоль в GUI Shift + Ctrl + C / Shift + Ctrl + V = копировать вставить Tab = автозавершение ввода
Общие команды
Полное обновление
# sudo apt update && sudo apt full-upgrade && sudo apt autoremove && sudo apt autoclean && sudo apt clean
Выключение или перезугрузка (аргумент -r)
# shutdown -r now
Установка консольной оболочки Midnight Commander (интерфейс, аналогичный Norton Commander для Dos)
# sudo apt-get install mc
Консольный браузер
# sudo apt install elinks
Все сетевые интерфейсы
# ip addr
Установка из пакета *.deb
# dpkg -i
Смена пароля
# passwd
Выход из сеанса
# exit
Очистить терминал
# clear
Работа с файловой системой
При указании имен файлов можно использовать спец символы:
* - любое количество символов
? - один символ в имени файла
Смена владельца, если ошибка доступа к файлу
# sudo chown -R [пользователь] [каталог или файл]
Вывод списка файлов каталога
# ls -l
-lh - размер файлов в нормальном виде.
-R - рекурсивно вложенные файлы.
-a - отображать скрытые (перед имененм стоит точка)
Список файлов в порядке «последние использованные - снизу» с информацией о правах и времени их модификации
# ls –lhatr
Смонтированные разделы и процент занятого места
# df -h
Узнать текущий каталог
# pwd
Смена каталога
# cd
На уровень выше. Пробел после cd
# cd ..
Вывод содержимого файла/потока целиком
# cat
Вывод по страницам
# less
Создание/изменение времени файла
# touch
Текстовые редакторы
# gedit
# nano
Cоздать каталог
# mkdir
Ключ -p - создать все директории, которые есть в пути
Удалить рекурсивно (опасно!)
# rm -r
Копирование файлов
# cp [откуда] [куда]
Перемещение файлов
# mv [откуда] [куда]
Создать файл для тестирования старой датой
# touch -d '2 Apr' test.txt
Добавить признак выполнеия к файлу (скрипту)
# sudo chmod ugo+x auto.sh
Работа с SSH
# sudo apt-get install openssh-server
Подключение по ssh с указанием логина и IP
# ssh login@0.0.0.0
Перезапуск ssh
# sudo systemctl restart ssh
Генерация пары ключей
# ssh-keygen
Безопасное копирование открытого ключа на другой комп
# ssh-copy-id -i .ssh/id_rsa.pub login@0.0.0.0
Безопасное копирование файлов на удаленный комп
# scp myfile login@0.0.0.0:/home/login/myfile
Службы
Текущие запущенные процессы
# ps
-e - вообще все текущие процессы
Запущенные процессы в виде дерева
# pstree -p
Управляет процессами systemd
# systemctl
Архивы
Архивация в заданную папку по маске
# tar czvf Папка/ИмяАрхива.tar/gz *.txt
Архивация работающей установки Linux по ssh на удаленный компьютер.
# tar czvf - --one-file-system / /usr /var --exclude=/home/andy/ | ssh username@0.0.0.0 "cat > /home/username/archive-backup-Apr-10.tar.gz"
"/ /usr /var" - доп. папки. --exclude=/home/andy/ - исключения
--one-file-system - исключает все данные из любой файловой системы, кроме текущей.
Скрипт для перемещения файлов и удаления старых
#!/bin/bash
Archiv_Dir="/volume4/backup"
Save_Dir="/volume4/backup/safe"
FileType="zip"
OldFiles=30
mv $Archiv_Dir/*.$FileType $Save_Dir;
find $Save_Dir/*.$FileType -type f -mtime +$OldFiles -exec rm {} \;