Шпаргалка по Linux
SSH-ключи
ssh-keygen
cat ~/.ssh/id_rsa.pub
Прокинуть ключ на удаленный сервер:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remotehost
user - имя пользователя
remotehost - IP или адрес сервера
Если SSH работает на нестандартном порту, например 2222:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remotehost -p 2222
MC - midnight commander
Чтобы выбрать все файлы в папке: Option(Alt) + Shift + = В появившееся окно - впечатать * и Нажать Enter
Tar
tar -zcvf /backup/archive.tar.gz /var/www/test -zcvf - архивировать с сжатием (будет меньше весить) -cvf - архивировать без сжатия (потом быстрее будет извлекаться) /backup/archive.tar.gz - куда положить файл архива /var/www/test - какую папку/файл положить в архив
Общее правило - лучше cvf, но если вдруг надо, чтобы архив занимал поменьше, тогда zcvf.
tar -xf archive.tar.gz
GREP - поиск по содержимому в файлов
grep -Rli word /directory
word - что ищем
/directory - где ищем
grep -rn word /directory
Рекурсивный поиск внутри директориии directory слова word. Дополнительно в результате покажется еще и номер строки в файле, где найдено word.
WC - статистика файла
wc {filename}
{строк} {слов} {символов} {имя_файла}
Создать/удалить пользователя
adduser {username} - добавить нового пользователя
userdel {username} - удалить пользователя, userdel {username} -f - удаляет даже если пользователь еще залогинен userdel {username} -r - удалить домашнюю директорию пользователя и его файлы в системе. userdel {username} -Z - удалить все SELinux объекты для этого пользователя.
usermod -aG sudo {username}
Journalctl - журнал логов
Сами лохи хранятся в /var/log/journal
Вот как можно уменьшить размер логов:
# вот как можно посмотреть размер логов: journalctl --disk-usage # вот как уменьшить размер journalctl --vacuum-time=1d journalctl --vacuum-size=128M
Размер папок в этой папке
du --max-depth=1 -h
Покажет сколько весит каждая папка и все ее содержимое
Composer
Установить только блок require файла composer.json, пропустив require-dev
composer install --no-dev
Как игнорировать конфликт требований совместимости (наличия модулей), и все равно поставить пакет:
composer install --ignore-platform-reqs
Git
Изменить адрес внешнего репозитория
git remote set-url origin {полный адрес до репозитория}
Обновление Ubuntu
apt upgrade - устанавливает самые новые версии всех пакетов доступные в репозиториях apt full-upgrade - тоже самое, только еще и разрешает зависимости "по-умному"
Создание симлинк (symlink) символической ссылки
ln опции файл_источник файл_ссылки Какие бывают опции: -d - разрешить создавать жесткие ссылки для директорий суперпользователю; -f - удалять существующие ссылки; -i - спрашивать нужно ли удалять существующие ссылки; -P - создать жесткую ссылку; -r - создать символическую ссылку с относительным путем к файлу; -s - создать символическую ссылку.
ln -s /real/file/or/directory/path /symlink/path
Информация о процессорах
/proc/cpuinfo