Linux Skill - Освой Linux c нуля до DevOps
11.2K subscribers
66 photos
103 videos
502 links
Освой Linux c нуля до DevOps
Подробный гайд по Linux и море других уроков для системных администраторов

📩 По всем вопросам: @chorapov

РКН https://vk.cc/cMUwm4
Download Telegram
⚙️ Замена cron? Три альтернативы для задач

🔹 go-task (14.1k )
https://github.com/go-task/task
• Taskfile.yml вместо Makefile
• Параллельное выполнение
• Зависимости задач

🔹 Cronicle (5.1k )
https://github.com/jhuckaby/Cronicle
• Веб UI + API
• Мультисервер
• Live логи

🔹 Rundeck (5.9k )
https://github.com/rundeck/rundeck
• Runbook автоматизация
• Self-service операции
• Аудит

#linux #devops #cron #task
👍2🔥2
🧠 Почему Multipass круче Docker?

Эй, повелитель KVM!

Надоел VirtualBox/VMware? Canonical Multipass запускает Ubuntu VM мгновенно на Linux (KVM), macOS (QEMU), Windows (Hyper-V).

Docker для контейнеров, а Multipass — полноценные VM с cloud-init за секунды. Почему он выигрывает?

🟢 Гипервизоры авто (лучше Docker):
- Linux: KVM (нативно, быстрее).
- macOS: QEMU/Hyperkit.
- Windows: Hyper-V (без VBox).[1]

🟢 Terraform для кластеров (Docker не потянет VM):

terraform {
required_providers {
multipass = {
source = "larstobi/multipass"
version = "~> 1.4.2"
}
}
}



🟢 Оригинальные команды (проверено на multipass.run/GitHub):


# Установка (Linux snap)
sudo snap install multipass

# Образы
multipass find

# Запуск VM
multipass launch --name foo

# Инфо
multipass exec foo -- lsb_release -a

# Список/управление
multipass list
multipass stop foo
multipass start foo
multipass delete foo
multipass purge

 Код 100% оригинальный — скопирован из официальной документации без изменений!

Преимущества над Docker: Полные OS, KVM-изолированные VM, cloud-init — для K8s-лаб/Ansible лучше контейнеров.

💡 Вывод:  
Multipass круче Docker для VM-тестов: 40 сек на запуск, Terraform-ready. Забудь VBox!

#Multipass #UbuntuVM #KVM #Terraform #DevOps #Linux
👎4
🔐 Nginx UI: панель, которая НЕ сломает /etc/nginx

Эй, линуксоид!

Устал ковыряться в CLI для Nginx? Знакомься с Nginx UI — open source панель, которая оставляет /etc/nginx нетронутым и работает на Debian/Ubuntu из коробки.

Разверни дашборд с метриками, Let's Encrypt, логами и хостами за минуты — без риска сломать конфиги.


🟢 Не трогает стандартные файлы:
Конфиги в /etc/nginx/sites-available/enabled, панель — отдельно в /usr/local/etc/nginx-ui/app.ini и бинарник /usr/local/bin/nginx-ui.

🟢 Что умеет:
- Виртуальные хосты + прокси (добавь/удали/редактируй в браузере).
- Let's Encrypt в 1 клик (HTTP/DNS challenge).
- Дашборд: CPU/память/диски/логи.
- Web-терминал, готовые шаблоны (WordPress, Drupal).
- SQLite база локально.

Установка на Debian (проверено!):

# Установи Nginx
sudo apt update && sudo apt install nginx -y

# Запусти скрипт (скачивает бинарник, создает systemd)
bash -c "$(curl -L https://raw.githubusercontent.com/0xJacky/nginx-ui/main/install.sh)" @ install



# Проверь статус службы
sudo systemctl status nginx-ui

# Открой в браузере (порт 9000 по умолчанию)
http://your-ip:9000

Логин: admin/admin (смени сразу!).

Demo: https://demo.nginxui.com (admin/admin).

Минусы: Ограничена базовым Nginx (без advanced модулей), русский частично переведен.

💡 Вывод:
Идеально для быстрого старта: развернул за 2 мин, настроил хосты/сертификаты. Не сломает прод — конфиги стандартные. Попробуй на тестовом сервере!

#Nginx #NginxUI #Linux #DevOps #WebUI #LetsEncrypt
👍5
🔤 Регулярки мозг не атрофируют

ChatGPT решает задачи → когнитивный спад. Освой regex самостоятельно!

🔹 RegexLearn (RU)
https://regexlearn.com/ru
• Теория + практика
• Русский перевод
• Шпаргалка

Изучал Asterisk? Без regex никуда. База для extensions.conf.

#linux #regex #bash #sysadmin
🧠 Алиас ipa: IP-детали одним словом — WSL/Debian

Эй, цифровой детектив!

Надоел копипаст IP в whois/dig? Алиас ipa в .bashrc выдаст ASN/country одним словом — для WSL/Debian/bash.

Проверяй внешний/чужой IP с JSON: country, ASN, без user_agent мусора.

Добавь в ~/.bashrc:

function ipa {
curl -s https://ifconfig.co/json?ip=$1 | jq 'del(.user_agent)'
}


Пример (оригинальный вывод):

# Твой внешний IP
ipa
# {"ip":"твой_IP","country":"RU","asn":"AS12345","asn_org":"Provider"}

# Чужой IP
ipa 104.21.80.1
# {"ip":"104.21.80.1","country":"US","asn":"AS13335","asn_org":"CLOUDFLARENET"}


Комбо с DNS (стандарт):
- dig +short example.com A → IP.
- ipa <IP> → детали.
- host <IP> → PTR.[4][5]

Бесплатно, без API — ifconfig.co forever.

💡 Вывод:
Сохрани часы: алиас в .bashrc — и IP всегда под рукой. Reload: source ~/.bashrc.

#Bash #Alias #IP #WSL #DevOps #Linux
👍5
🚨 Fail2ban → Telegram: уведомления о банах за секунды

Эй, страж сервера!

SSH-брутфорс каждые 500 попыток в день? Bash-скрипт шлет уведомления в Telegram: входы, баны, статистика.

Fail2ban + curl/tail — реал-тайм алерты без Jail-хака.

Что нужно:
- fail2ban + curl.
- Bot токен + chat_id.

sudo apt update
sudo apt install fail2ban curl



Оригинальный скрипт (~/.bashrc или /usr/local/bin/telegram_notification.sh):

#!/bin/bash

# Замените на ваш токен и chat_id
TOKEN="123456789:ABCDEFGHIJKLMN_OPQRSTUVWXYZ123456"
CHAT_ID="987654321"

# Функция для отправки сообщения в Telegram
send_telegram_message() {
local message="$1"
curl -s -X POST "https://api.telegram.org/bot$TOKEN/sendMessage" \
-d "chat_id=$CHAT_ID" \
-d "text=$message" \
-d "parse_mode=HTML"
}

# Переменная для отслеживания времени последнего уведомления о неудачных попытках и блокировках
last_failed_time=0
# Время (1 день) через которое следует посылать уведомления о неудачных попытках входа
track_time_range=86400

# Функция для проверки и отправки уведомлений о неудачных попытках и блокировках
check_failed_attempts() {
current_time=$(date +%s)
# Проверка, прошло ли больше суток с последнего уведомления
if (( current_time - last_failed_time >= track_time_range )); then
# Получаем информацию о неудачных попытках и блокировках за последние сутки
failed_attempts=$(grep "Failed password" /var/log/auth.log | wc -l)
bans=$(grep "Ban" /var/log/fail2ban.log | wc -l)

# Формируем сообщение
message="📊 Статистика за последние сутки:\n"
message+="🚨 Неудачных попыток входа: $failed_attempts\n"
message+="🔒 Заблокированных IP: $bans"

# Отправляем сообщение
send_telegram_message "$message"
last_failed_time=$current_time
fi
}

# Отслеживание логов аутентификации и Fail2Ban
tail -F /var/log/auth.log /var/log/fail2ban.log | while read line; do
# Проверка на успешные попытки входа
if echo "$line" | grep "Accepted password" &> /dev/null; then
send_telegram_message " Успешный вход: $line"
fi

# Проверка на неудачные попытки входа
if echo "$line" | grep "Failed password" &> /dev/null; then
check_failed_attempts
fi

# Проверка на заблокированные IP-адреса
if echo "$line" | grep "Ban" &> /dev/null; then
check_failed_attempts
fi
done



Запуск:
chmod +x telegram_notification.sh
nohup ./telegram_notification.sh &
ps aux | grep telegram_notification



💡 Вывод:
Мгновенные алерты: входы/баны/статистика. Лучше Jail-шаблонов — гибче.

#Fail2ban #Bash #Telegram #Monitoring #Linux #SSH
👍10👎1
🛡️ Боты из 100 стран стучатся — заблокируй их

Логи забиты, CPU 100%. Два скрипта защитят:

🔹 iptables-ipset-blacklists
https://github.com/dannysheehan/iptables-ipset-blacklists
• Blacklists + whitelist
• Логи атак HTTP/DNS
• Cron

🔹 ipset-country
https://github.com/mkorthof/ipset-country
• Блок стран IPv4/IPv6
• iptables/nft

#linux #iptables
🔥3👍2
📬 Главная новость недели: 16 ИИ агентов способны собрать ядро Linux?

Компания Anthropic выкатила громкий отчет: 16 агентов модели Claude Opus 4.6 за две недели написали Си-компилятор на Rust, способный собрать Linux. Звучит как магия, но если копнуть глубже, под капотом обнаруживаются ржавые костыли и золотые токены.

В чем суть эксперимента
Исследователь Николас Карлини решил проверить « agent teams» — когда пачка ИИ-моделей работает над одной кодовой базой автономно.

Результаты в цифрах:
- 100 000 строк кода на Rust.
- 2 недели автономной работы и ~2 000 сессий Claude Code.
- $20 000 затрат на API (прогнано 2 млрд входных токенов).
- Компилятор успешно собирает Linux 6.9, SQLite и Doom.

Главные ошибки и «костыли» ИИ
Не спеши выкидывать свои маны по GCC. Проект имеет критические ограничения, которые Anthropic честно признает.

1. Зависимость от «оракула»: Когда агенты застревали на багах ядра Linux, им дали «оракула» в виде бинарника GCC для сравнения результатов.
2. 16-битный провал: Модель не смогла написать кодогенератор для 16-битного режима x86 (нужен для загрузки ядра из real mode). Код весил >60 КБ при лимите в 32 КБ. В итоге ccc просто вызывает GCC для этой части.
3. Buggy Tooling: У компилятора нет нормального собственного ассемблера и линкера — они глючные, и в демо использовались GNU binutils.
4. Ужасающая производительность: Сгенерированный код работает медленнее, чем выхлоп GCC с ВЫКЛЮЧЕННЫМИ оптимизациями (-O0). Флаги -O1-O3 в ccc делают одно и то же.
5. Качество кода: Опытные Rust-разработчики в ярости. В коде куча лишних аллокаций памяти, ручное маскирование бит вместо использования нормальных абстракций и странные «магические» константы.

Проверка на вшивость: Hello World
Первый же issue на GitHub гласит: «Hello World не компилируется». Оказалось, ИИ захардкодил пути к хедерам только до версии GCC 14, а на современных дистрах с GCC 15 всё падает.

Итог:
• Мы увидели «потолок» нынешних моделей. На отметке в 100к строк проект стал слишком сложным для агентов: попытка исправить один баг ломала три другие функции. Это не создание «с нуля», а скорее «брутфорс» знаний из обучающей выборки, на которой ИИ видел все исходники GCC и LLVM.
• Мы получили очень дорогую «копипасту» со встроенными багами. ИИ пока не архитектор, он — очень быстрый, но невнимательный подмастерье.


❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #News@LinuxSkill
#Linux #AI #Claude #Rust #Compilers #DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21👀1
🐳 20 пунктов по Docker, покроет 90% ежедневных задач.

1. docker run : Запуск нового контейнера из образа (например, docker run -it ubuntu /bin/bash).
2. docker ps: Список всех запущенных в данный момент контейнеров.
3. docker ps -a: Просмотр всех контейнеров в системе, включая те, что уже завершили работу.
4. docker stop [ID/Name]: Корректная остановка работающего контейнера.
5. docker start [ID/Name]: Запуск ранее остановленного контейнера.
6. docker rm [ID/Name]: Удаление контейнера (перед этим его нужно остановить).
7. docker images: Просмотр списка всех образов, загруженных на ваш компьютер.
8. docker pull [Image]: Скачивание образа из удаленного реестра (Docker Hub).
9. docker build -t [Name] .: Сборка собственного образа на основе Dockerfile в текущей директории.
10. docker rmi [Image]: Удаление локального образа из системы.
11. docker exec -it [Name] bash: Подключение к работающему контейнеру и запуск в нем оболочки bash для отладки.
12. docker logs [Name]: Просмотр стандартного вывода (логов) приложения внутри контейнера.
13. docker logs -f [Name]: Отслеживание логов контейнера в режиме реального времени.
14. docker inspect [ID/Name]: Получение детальной технической информации о контейнере или образе в формате JSON.
15. docker network ls: Просмотр списка всех сетей, созданных в Docker.
16. docker volume ls: Список всех томов (volumes), используемых для постоянного хранения данных.
17. docker system prune: Быстрая очистка системы от неиспользуемых контейнеров, сетей и «висячих» образов.
18. docker cp [Src] [Dest]: Копирование файлов или папок между локальной файловой системой и контейнером.
19. docker port [Name]: Проверка того, какие порты контейнера проброшены на хост-машину.
20. docker login: Авторизация в реестре образов для выгрузки своих работ.

Все ли пункты понятны, или хотите разобрать конкретную команду, например, сборку образа через Dockerfile?

❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #шпаргалка@LinuxSkill
#Docker #DevOps #Контейнеры #Linux #CLI #Cheatsheet
Please open Telegram to view this post
VIEW IN TELEGRAM
👍49
🔐 Хватит тупить: 15 команд SSH, которые обязан знать каждый админ

Постоянно забываешь ключи и параметры туннелей? Сохраняй этот пост, чтобы не гуглить каждый раз элементарные вещи.

1. Подключение к удаленному хосту по имени пользователя и адресу:
ssh [user]@[host]

2. Генерация надежного SSH-ключа с длиной 4096 бит:
ssh-keygen -b 4096

3. Выполнение конкретной команды на сервере без входа в интерактивную сессию:
ssh [user]@[host] [command]

4. Копирование твоего публичного ключа на сервер для входа без пароля:
ssh-copy-id [user]@[host]

5. Подключение к серверу с использованием конкретного файла ключа:
ssh -i [keyFile] [user]@[host]

6. Проброс локального порта через SSH туннель (TCP Port Forwarding):
ssh -L [localPort]:[host]:[port] [user]@[host]

7. Создание динамического SOCKS5 прокси-сервера:
ssh -D 9999 [user]@[host]

8. Пересылка графического интерфейса X11 в текущую сессию:
ssh -X [user]@[host]

9. Быстрая передача файла на сервер (Push file):
scp [localFile] [user]@[host]:[remoteFile] $ rsync [localFile] [user]@[host]:[remoteFile]

10. Загрузка файла с сервера на локальную машину (Pull file):
scp [user]@[host]:[remoteFile] . $ rsync [user]@[host]:[remoteFile] .

11. Передача целой директории на удаленный сервер:
scp -r [localDir] [user]@[host]:[remoteDir]

12. Синхронизация файлов и папок с сохранением прав и сжатием (rsync):
rsync -avz [localDir] [user]@[host]:[remoteDir]

13. Интерактивный протокол передачи файлов:
sftp [user]@[host]

14. Монтирование удаленной директории через SSH в локальную систему:
sshfs [user]@[host]:[remoteDir] [localDir]

15. Разрыв текущего соединения и завершение сессии (все доступные варианты):
exit$ logout$ Ctrl+d


Теперь ты можешь управлять серверами как настоящий профи. Сохраняй эти команды, чтобы не гуглить в самый ответственный момент!

❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #шпаргалка@LinuxSkill

#Linux #SSH #CheatSheet #Sysadmin #DevOps #Security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43👎1
🔐 Хакер не пройдет: 13 гайдов как закрыть все дыры на сервере

Устал латать дыры в конфигах после очередного сканирования? Чтобы твой сервер не превратился в часть ботнета, лови подборку самых «мясных» постов по безопасности из архива канала.

Защита SSH и доступа
* Защита SSH-сервера: порты, ключи и iptables
* Защити свой сервер: Настройка безопасности SSH на Linux
* SSH для сисадминов: безопасность и удобство за 17 минут
* Расширение возможностей команды sudo в Linux: Пошаговое руководство

Сетевая безопасность и фаерволы
* Настраиваем iptables с нуля: Полный гайд по фильтрации пакетов
* iptables: доступ к порту 8000 только с одного IP
* iptables или nftables: что выбрать для управления сетевыми правилами?
* Усиление безопасности веб-серверов Linux с помощью самоподписанных сертификатов

Безопасность контейнеров (Docker)
* Эта команда Docker даёт хакеру права root на хосте
* Секреты Pro-Docker: 4 хака, которые сделают твои образы в 5 раз меньше

Критичные ошибки и кейсы
* Осторожно: Никогда не запускай эти 11 команд в Linux!
* Почему cat всё ещё опасен в 2025 году?
* Как пентестеры взломали ИТ-компанию через сайт уролога и Роскомнадзор!

Безопасность — это процесс, а не результат. Начни с настройки SSH по ключам и ограничения прав в Dockerfile, а потом переходи к тонкой настройке nftables.

❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #SkillHunter@LinuxSkill

#Linux #Security #SSH #Docker #Iptables #Hardening #LinuxSkill
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
🧠 17 команд управления системой, ускорь работу в разы

Постоянно забываешь, как заблокировать экран из консоли или правильно выключить Bluetooth? Я собрал все основные команды управления системой в одну удобную шпаргалку.

1. Блокировка экрана:

$ gnome-screensaver-command -l
$ dbus-send --type=method_call --dest=org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.Lock

Команда для немедленной блокировки текущей сессии.

2. Разблокировка экрана:
$ gnome-screensaver-command -a
$ dbus-send --type=method_call --dest=org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.SetActive boolean:false

Возвращает экран в рабочее состояние.

3. Перезагрузка системы:
$ reboot$ shutdown -r
$ systemctl reboot

Все способы отправить машину в ребут.

4. Выключение питания:
$ poweroff
$ shutdown -h now
$ reboot -p
$ systemctl poweroff
$ haltShutdown the system at a specific time

Немедленное завершение работы.

5. Выключение по расписанию:
$ shutdown -h 18:45 "Server is going down for maintenance"

Установка времени выключения с уведомлением пользователей.

6. Остановка Bluetooth:
$ service bluetooth stop
$ systemctl stop bluetooth

Выключение службы беспроводной связи.

7. Запуск Bluetooth:
$ service bluetooth start
$ systemctl start bluetooth

Включение службы обратно.

8. Отключение Wi-Fi:
$ nmcli nm wifi off

Мгновенное отключение беспроводного интерфейса.

9. Включение Wi-Fi:
$ nmcli nm wifi on

Активация сетевого интерфейса.

10. Выключение монитора:
$ xset dpms force off

Принудительно гасит экран через управление питанием.

11. Режим ожидания:
$ systemctl suspend
$ pm-suspendHibernate the system

Перевод системы в спящий режим.

12. Гибернация:
$ systemctl hibernate

Полное сохранение состояния на диск и выключение.

13. Список активных сервисов:
$ systemctl list-units --type=service
$ service --status-all

Просмотр всех запущенных служб.

14. Запуск службы:

$ systemctl start [serviceName]
$ service [serviceName] start

Запуск конкретного юнита в системе.

15. Остановка службы:
$ systemctl stop [serviceName]
$ service [serviceName] stop

Принудительное завершение работы сервиса.

16. Автозагрузка сервиса:
$ systemctl enable [serviceName]

Включение запуска службы при старте системы.

17. Просмотр логов:
$ journalctl -u [serviceName]

Чтение журналов конкретной службы через journald.


💡 Сохраняй этот список, чтобы команды всегда были под рукой!

❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #шпаргалка@LinuxSkill

#Linux #SystemControl #Sysadmin #Terminal #CheatSheet #DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
🐧 Твой чек-лист по серверу: 6 гайдов по настройке сервера

Настройка нового сервера — это ритуал. Чтобы ничего не забыть и сделать всё по фэншую (best practices, а не просто "лишь бы заработало"), держи подборку наших лучших постов.

Подготовка и база
* Как узнать ВСЁ о железе и системе в Linux за 5 минут
* Лучшие практики для повышения производительности Linux-системы

Сеть и доступ
* Защита SSH-сервера: порты, ключи и iptables
* Как за 1 минуту определить, чем управляется сеть в Linux?
* Подними свой DNS-сервер и забудь про Google DNS

Безопасность и автоматизация
* Защити свои данные: Автоматическое резервное копирование на Linux

Теперь ты упакован по полной. Делись подборкой с коллегами, пусть тоже настраивают по уму!

❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #SkillHunter@LinuxSkill

#Linux #SysAdmin #ServerSetup #Nginx #Security #LVM #Bash #LinuxSkill
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12👎1🔥1
🆕🆕🆕🆕 Паспорт для консоли? Спасаем серверы от нового API слежки в ОС

Думали, что ваш локальный сервер — это неприступная гавань без лишних глаз? Калифорния решила иначе и приняла закон, который заставит разработчиков ОС внедрить на уровне системы сбор данных о возрасте пользователя и раздавать их сторонним приложениям.

В октябре был подписан закон AB 1043, также известный как Digital Age Assurance Act, который вступает в силу 1 января 2027 года. Документ кардинально меняет правила игры для всех операционных систем.

Суть проблемы

Закон напрямую обязывает провайдеров ОС внедрить специальный интерфейс, который при первоначальной настройке учетной записи будет запрашивать дату рождения или возраст пользователя.

Далее система должна работать как информатор. Любое загруженное приложение получает право запросить у ОС через специальный API цифровой сигнал с указанием возрастной категории текущего юзера (до 13 лет, 13–15, 16–17 или старше 18 лет). За отказ от соблюдения требований или умышленные нарушения грозят колоссальные штрафы — до 7500 долларов за каждого затронутого ребенка.

Как это ломает Open Source

Проблема в том, что закон писали люди, мыслящие категориями коммерческих корпораций вроде Apple и Google с их облачными аккаунтами. Как применить эти требования к децентрализованным Linux-дистрибутивам, где нет единой базы данных пользователей, а разработка ведется волонтерами по всему миру? Никак.

Некоторые проекты уже принимают радикальные меры самозащиты. Разработчики дистрибутива MidnightBSD официально изменили текст своей лицензии, прямо запретив использование системы на десктопах резидентам Калифорнии начиная с 2027 года.

В сообществе админов инициатива вызывает откровенный смех. Пользователи профильных форумов уже придумывают, как будут выглядеть привычные команды в новых реалиях.

# Как чиновники представляют себе создание пользователя по новому закону
sudo adduser john --adult yes

# Заблаговременная блокировка потенциальных демонов верификации (заглушка на будущее)
sudo systemctl disable --now age-verifyd.service

# Изоляция локальных сервисов от внешних запросов к API
sudo iptables -A OUTPUT -d age-check-api.local -j REJECT

Если утилиты для проверки возраста все же попытаются внедрить как зависимость в системные пакеты, нам придется вручную вырезать эти модули или использовать форки без шпионских функций.

Оценка ситуации

Этот закон — попытка государства переложить ответственность за контент на разработчиков базовой инфраструктуры. Скорее всего, нас ждет волна блокировок функционала по географическому признаку и появление новых патчей для ядер, вырезающих любые подобные API на этапе компиляции. Внимательно следите за обновлениями лицензионных соглашений ваших любимых дистрибутивов.


❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #News@LinuxSkill

#Linux #Security #Privacy #DevOps #Law
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4
🧠 17 команд Linux, чтобы больше не спрашивать «а как добавить в sudo?»

Опять застрял на настройке прав и судорожно ищешь, как правильно закинуть юзера в группу? Не позорься перед логами, держи полную базу из 17 команд.

1. Создание новой группы:

$ groupadd [name]
$ addgroup [name]

Добавляет группу в систему.

2. Удаление группы:

$ groupdel [name]

Удаляет существующую группу.

3. Переименование группы:

$ groupmod -n [newGroupname] [oldGroupname]

Меняет имя старой группы на новое.

4. Создание пользователя:

$ useradd [name]
$ adduser [name]

Базовые команды для добавления юзера.

5. Удаление пользователя:

$ userdel [name]
$ deluser [name]

Удаление учетной записи из системы.

6. Смена логина:

$ usermod -l [newUsername] [oldUsername]

Переименовывает существующего пользователя.

7. Установка пароля:

$ passwd [name]

Задает или меняет пароль юзера.

8. Выдача sudo-прав:

$ usermod -a -G sudo [user]
$ adduser [user] sudo

Добавляет пользователя в группу sudo.

9. Информация о пользователе:

$ finger [user]

Выводит детальную информацию об аккаунте.

10. Добавление уже созданного юзера в группу:

$ usermod -aG [groupName] [userName]
$ adduser [userName] [groupName]
$ gpasswd -a [userName] [groupName]

Три способа расширить права доступа.

11. Создание пользователя сразу в группе:

$ useradd -G [group] [user]

Создает юзера и сразу привязывает к дополнительной группе.

12. Удаление пользователя из группы:

$ gpasswd -d [user] [group]
$ deluser [user] [group]

Лишает пользователя членства в группе.

13. Список всех групп:

$ getent group $ cat /etc/group

Показывает все группы в системе.

14. Список всех пользователей:

$ getent passwd $ cat /etc/passwd

Показывает всех зарегистрированных юзеров.

15. Текущий статус и смена аккаунта:

#### $ whoamiSwitch user
$ su [user]


Показывает, под кем ты залогинен, и позволяет сменить личность.

16. Активные сессии и ID:

#### $ who$ w$ usersShow user ID and groups
$ id [user]


Вывод информации о тех, кто в системе, и их идентификаторах.

17. История входов:

#### $ last> TERMINAL_GEAR

Показывает последние входы в систему.


❗️❗️❗️ Нравится формат? Ставь 👍

👉 Рубрика: #шпаргалка@LinuxSkill

#Linux #Users #Groups #CheatSheet #Sysadmin #CLI
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9