Все для системного администратора. По всем вопросам @evgenycarter РКН clck.ru/3KoDXp
📁 Файловая система в Linux: Ext4 и Btrfs
00:00 Вступление
00:13 Что такое файловая система?
00:47 Btrfs
00:53 Плюсы Btrfs
01:56 Минусы Btrfs
02:30 Ext4
02:44 Плюсы Ext4
03:09 Минусы Ext4
03:59 Btrfs в реальном использовании
04:23 Ext4 в реальном использовании
04:29 Итоги
04:44 Нытьё и оправдания
06:07 Прощание
источник
👉 @i_odmin
🛡Контейнеры защищают ваше приложение, но кто защитит контейнеры?
На открытом уроке «Безопасность образов Docker» вы узнаете, как избежать уязвимостей в контейнерных приложениях.
Что разберем:
— Почему безопасность Docker-образов — это не роскошь, а необходимость.
— Как проверять образы на уязвимости и обновлять их без стресса.
— Практика безопасной сборки контейнеров, которой можно гордиться.
Встречаемся 22 января в 20:00 мск. Урок проходит перед стартом курса «Внедрение и работа в DevSecOps», а участники получат скидку на обучение!
👉Не откладывайте безопасность в долгий контейнер! Прокачайте свои навыки и защитите приложения уже сейчас: https://vk.cc/cHv63p Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
❗️ Внимание! Открытый урок «Клиентская оптимизация веб-приложения» 23 января, 19:00 мск.
😱 Тесты скорости кричат: «слишком медленно»? Клиенты не хотят ждать? Узнайте, как ускорить приложение с минимальными усилиями, но максимальным результатом.
На вебинаре:
- разберём методы клиентской и серверной оптимизации;
- проанализируем скорость и научимся её тестировать;
- обсудим решения, которые внедряются за пару часов.
⭐️Спикер Николай Лавлинский — опытный разработчик, руководитель и преподаватель, кандидат экономических наук.
🚀 Участники урока получат скидку на большое обучение «Инфраструктура высоконагруженных систем».
👉 Регистрация для участия: https://vk.cc/cHu0ZWРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Утилиты linux
rsync-v
— выводит подробную информацию о процессе копирования;[-a]
— сохраняет все атрибуты оригинальных файлов;-u
— не перезаписывать более новые файлы;-l
— копирует символьные ссылки;-L
— копирует содержимое ссылок;-p
— сохраняет права для файлов;-t
— сохраняет время модификации;-e
— использовать другой транспорт, например, ssh;[-z]
— cжимает файлы перед передачей;—recursive
— перебирать директории рекурсивно;—exclude
— Исключить файлы по шаблону;
Примеры:rsync -avz skillproject/data/
. — из подкаталога в текущий каталогrsync -avz skillproject/data/ aaa/
— из подпапки в подпапку aaa/rsync -avz skillproject/data/ digita6d@digita6d.beget.tech:/home/d/digita6d/code-skills.ru/public_html/sources/skillproject/data/
— передача на удаленный серверrsync -avze ssh skillproject/data/ digita6d@digita6d.beget.tech:/home/d/digita6d/code-skills.ru/public_html/sources/skillproject/data/
— то же самое м явным указанием ssh
ss-l или —listening
— посмотреть только прослушиваемые порты;-p или —program
— показать имя программы и ее PID;-t или —tcp
— показать tcp порты;-u
или —udp
показать udp порты;-n
или —numeric
показывать ip адреса в числовом виде.
Примеры:ss -tlpn
— проверить все прослушивающие tcp-портыss -tulpn | grep :80
— показать все процессы, работающие на 80-м порту
psps -e
— показать все процессыps -ef
— показать подробную информацию о каждом процессеps -ef | grep phantom
— найти все процессы с именем phantom
mpstat
Показывает статистику загрузки процессора. Команды:mpstat
— показывает общую информациюmpstat -P ALL
— по каждому ядру
free
Показывает потребление ОЗУ на текущий момент:free -h
— показывает информацию в гигабайтах (более человеко читаемо, чем в байтах)
top
Что-то наподобие диспетчера задач, только для линукс, показывает попроцессное потребление озу
dpkg
Пакетный менеджер для debian систем (не путать с системой управления пакетами — apt/apt-get)dpkg -s <packname>
— проверить, установлен ли пакетdpkg -l
— список всех пакетовdpkg -l | grep apache2
— проверить, установлен ли конкретный пакетdpkg -i <package.deb>
— установить пакет
netstatnetstat -pnltu
— посмотреть список используемых портов
👉 @i_odmin
Bash скрипт слежения за зависшими процессами
На одном из серверов был перенесен веб-сайт, из-за которого периодически подвисал дочерний httpd (apache2) процесс. Необходимо было временное решение на время отладки кода и решения проблемы на уровне сайта, которое отслеживало бы зависшие процессы.
Было решено написать bash скрипт, который отслеживает время жизни процесса, затраченное время процессора (CPU time) и нагрузку на процессов. В случае, если все 3 параметра достигают определенное пиковое конфигурируемое значение — процесс убивается.
Использование
./checker.sh param1 param2
#Пример:
./checker.sh httpd www-data
#!/bin/bash
cpuLimit=5000 # cpu * 100
timeLimit=600 # process time limit in seconds
cpuTimelimit=400 # process cpu time limit in seconds
killSignal="HUP" # kill signal
debug=0 # 1 - not kill | 0 - kill
verbose=1 # 1 - print info | 1 - without output
##### END CONFIG #####
declare -i cpuLimit
declare -i timeLimit
declare -i cpuTimelimit
declare -i debug
declare -i verbose
declare -A pidTime
declare -A pidCpuTime
declare -A pidCpu
declare -A pidUser
declare -A pidApp
appName=$1 #"httpd"
appName=${appName:=httpd}
grep2=$2 #"plsm.ru"
grep2=${grep2:=$appName}
if [[ -z $grep2 ]];then
grep2=$appName
fi
{
declare $( ps -eo pid,user,pcpu,etimes,comm | grep $appName | grep $grep2 | grep -v grep | sed -e 's/^[[:space:]]*//' | awk {'print "pidCpu["$1 "]=" $3*100'} )
declare $( ps -eo pid,cputime,user,pcpu,etimes,comm | grep $appName | grep $grep2 | grep -v grep | sed -e 's/^[[:space:]]*//' | awk -F'[: ]+' '/:/ {t=$4+60*($3+60*$2); print "pidCpuTime["$1 "]="t}' )
declare $( ps -eo pid,user,pcpu,etimes,comm | grep $appName | grep $grep2 | grep -v grep | sed -e 's/^[[:space:]]*//' | awk {'print "pidTime["$1 "]=" $4'} )
declare $( ps -eo pid,user,pcpu,etimes,comm | grep $appName | grep $grep2 | grep -v grep | sed -e 's/^[[:space:]]*//' | awk {'print "pidUser["$1 "]=" $2'} )
declare $( ps -eo pid,user,pcpu,etimes,comm | grep $appName | grep $grep2 | grep -v grep | sed -e 's/^[[:space:]]*//' | awk {'print "pidApp["$1 "]=" $5'} )
} &> /dev/null
arrSize=${#pidCpu[@]}
if [[ $arrSize -eq 0 ]];then
if [[ $verbose -eq 1 ]];then
echo "Required processes are not found"
fi
else
for i in "${!pidCpu[@]}";do
if [[ $verbose -eq 1 ]];then
echo "----------------"
echo "pid: $i"
echo "user: ${pidUser[$i]}"
echo "cpu: ${pidCpu[$i]}"
echo "time: ${pidTime[$i]}"
echo "cpu time: ${pidCpuTime[$i]}"
echo "app: ${pidApp[$i]}"
if [[ ${pidCpu[$i]} -gt $cpuLimit ]] ;then
echo "CPU WARNING"
fi
if [[ ${pidTime[$i]} -gt $timeLimit ]];then
echo "TIME WARNING"
fi
if [[ ${pidCpuTime[$i]} -gt $cpuTimelimit ]];then
echo "CPU TIME WARNING"
fi
fi
if [[ ${pidCpu[$i]} -gt $cpuLimit ]] && [[ ${pidTime[$i]} -gt $timeLimit ]] && [[ ${pidCpuTime[$i]} -gt $cpuTimelimit ]];then
if [[ $debug -ne 1 ]];then
kill -$killSignal $i
if [[ $verbose -eq 1 ]];then
echo "PID $i KILLED. Result code $?"
fi
fi
fi
done
fi
exit 0;
Запускаем советский процессор из журнала «Радио» с помощью Arduino
В этой статье я хочу поделиться опытом некромантии сборки советского компьютера по мотивам «Микро-80», схемы которого были опубликованы в журнале «Радио». Но собирать я буду не по этим схемам. Используя их как опору и источник вдохновения, я начну с запуска процессора КР580ВМ80А (советского клона Intel 8080), определения признаков жизни и продолжу постепенным наращиванием функционала и возможностей системы. Здесь мы займемся и радиотехникой, и DIY, и программированием как самого процессора, так и современных микроконтроллеров. Но перед этим поделюсь историей, как я, будучи студентом 4 курса, дошел до этого…
https://habr.com/ru/companies/yadro/articles/873740/
👉 @i_odmin
Разбираем SQL на примере PostgreSQL — SELECT, JOIN, GROUP, HAVING, Coalesce и др.
Изучаем классические реляционные базы данных и язык для работы с ними — SQL — на примере топовой открытой СУБД PostgreSQL. Если вас пугает JOIN, вы не понимаете GROUP BY, вас смущает вопрос отличия WHERE от HAVING — смотрите видео полностью и обязательно прорабатывайте все запросы вместе с нами! Мы создадим и изучим работу с базой данных для интернет-магазина, хранящую в себе товары, их фотографии, покупателей и их заказы.
00:00 Зачем знать SQL и базы данных
02:47 Виды баз данных
03:28 Понятие сущностей, проектирование больших систем
06:01 Сущности в реляционных базах данных
06:50 Проектирование схемы БД магазина на бумаге
10:27 Перенос схемы БД в PostgreSQL, создание БД и таблиц
15:50 Заполняем БД данными
17:40 SELECT, получение данных из БД
19:03 JOIN, объединение таблиц
23:25 LEFT JOIN, RIGHT JOIN, INNER JOIN
26:57 Удаление данных их таблиц, обновление данных таблиц
28:23 Пример комплексного запроса с несколькими JOIN
32:31 Группировка данных GROUP BY
34:11 COALESCE
34:47 Сортировка данных, ORDER BY
35:13 HAVING
36:26 LIMIT, OFFSET
38:09 Выводы, итоги
источник
👉 @i_odmin
Что делать, если для участия в DevOps-проектах не хватает навыков?
👉 пойти учиться в Слёрм и освоить навыки работы с Kubernetes!
✅ Чему научим:
- Основам работы с K8s, системой автоматизации развертывания, масштабирования и управления приложениями в контейнерах.
- Запускать кластер, работать с базовыми абстракциями и подключать дополнительные компоненты
- Запускать приложение в кластере, понимать принципы работы сети и настраивать CI/CD пайплайн
⭐️ Курс обновлён в июле 2024
Старт потока — 10 февраля
🔸6 недель обучения
🔸5 встреч со спикерами
🔸63 часа практики
🔸Итоговая сертификация
Ознакомиться с программой курса и занять место на потоке — по ссылке 👈
Реклама ООО «Слёрм» ИНН 3652901451
Nginxpwner - это простой инструмент для поиска распространенных неправильных конфигураций и уязвимостей Nginx.
Install:cd /opt
git clone https://github.com/stark0de/nginxpwner
cd nginxpwner
chmod +x install.sh
./install.sh
Install using Dockergit clone https://github.com/stark0de/nginxpwner
cd nginxpwner
sudo docker build -t nginxpwner:latest .
Run the imagesudo docker run -it nginxpwner:latest /bin/bash
https://github.com/stark0de/nginxpwner
👉 @i_odmin
Основы документирования сетей. Как рисовать понятные и красивые схемы на примере типового дизайна сети
1.Основы документирования сетей. Введение
2.Основы документирования сетей. Чем рисовать? Visio
3.Основы документирования сетей. Чем рисовать?
4.Основы документирования сетей. Структурная схема сети
5.Основы документирования сетей. L3 схема сети
6.Основы документирования сетей. L2 схема сети
7.Основы документирования сетей. Расположение оборудования в стойке
8.Основы документирования сетей. IP-план
9.Основы документирования сетей. Описание настроек
10.Основы документирования сетей. Заключение
источник
👉 @i_odmin
27 марта — Deckhouse Conf 2025
Москва, Центр событий РБК
Deckhouse Conf 2025 — это возможность для инженеров и разработчиков углубиться в актуальные вопросы Kubernetes, DevOps, SRE и безопасности.
Обсудим практические решения для управления инфраструктурой, безопасности и мониторинга, а также лучшие подходы в работе с Kubernetes. Разберём, как правильно интерпретировать данные в Prometheus, безопасно управлять секретами и настраивать сетевые подсистемы Kubernetes.
Будет много полезного общения с экспертами и коллегами. Присоединяйтесь!
Регистрация открыта. Время обменяться опытом
🔥 Тест по высоким нагрузкам на Linux 🔥
Одним из самых востребованных навыков для Linux-администраторов является способность решать задачи, связанные с высокими нагрузками.
Прокачать свои навыки вы сможете на курсе «Инфраструктура высоконагруженных систем» от OTUS.
Там вы научитесь решать три глобальные задачи:
1. Виртуализация с помощью таких инструментов как proxmox, KVM, oVirt, Xen
2. Кластеризация сервисов на базе pacemaker, k8s, nomad и построение дисковых кластеров на базе ceph, glaster, linstore
3. Построение высоконагруженных систем на базе nginx
🏆 А еще углубитесь в тонкости работы с высоконагруженными системами, что очень востребовано на рынке уже сейчас!
👉 Пройти вступительный тест — https://vk.cc/cHh0Mw
💣 Пройдете тест, получите специальные условия для поступления на курс и доступ к открытым урокам курса.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Получение информации о системе и сети с помощью Python
В настоящей статье предлагается расширенное рассмотрение методов программирования и получения данных, выходящих за рамки системной информации и анализа сетевых пакетов.
Настоящее статья будет структурировано по следующему принципу "теория-практика".
https://habr.com/ru/articles/866788/
👉 @i_odmin
👩💻 Хотите освоить одну из самых популярных профессий в IT? Android-разработка ждёт вас!
На открытом уроке «Основные компоненты приложения Android» вы:
💛 Узнаете, как приложения взаимодействуют с системой и друг с другом.
💛Разберётесь в основных компонентах Android-приложений.
💛 Погрузитесь в архитектуру Android, чтобы закладывать прочный фундамент знаний.
Мечтаете создавать востребованные приложения? Начните путь Android-разработчика с нами — структурировано, понятно и с поддержкой экспертов.
⏺Регистрируйтесь на бесплатный вебинар 15 января в 20:00 мск: https://vk.cc/cHf2LZ
После урока вы сможете записаться на курс «Android Developer» со скидкой.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Работает и ладно 😀
Подписывайтесь на канал 👉@tipsysdmin
Zenith - что-то вроде top или htop, но с диаграммами с возможностью масштабирования, использованием CPU, GPU, сети и диска.
Особенности
Дополнительные графики использования ЦП, памяти, сети и дисков
Быстрый просмотр свободного места на диске, IP-адресов сетевых карт, частоты процессора
Выделение основных пользователей ЦП, памяти и диска
Процент заряда батареи, время зарядки или разрядки, потребляемая мощность
Таблица процессов с возможностью фильтрации по типу верхней части, включающая использование диска каждым процессом
Изменение приоритета процесса
Представления диаграмм с возможностью масштабирования (с поддержкой прокрутки назад во времени)
Управление процессами с помощью сигналов
Сохранение данных о производительности между запусками
Метрики использования GPU для графических процессоров NVIDIA (с --features nvidia), включая использование GPU для каждого процесса
Графики свободного места на диске
Учет задержек (в Linux при запуске zenith с правами root)
Установка на дистрибутивы Linux на базе Debian/Ubuntu (64-бит)sudo apt install curl
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
https://github.com/bvaisvil/zenith
👉 @i_odmin
🎥Bash Scripting Essentials
01 - Getting Started
02 - Hello World
03 - Intro to Variables
04 - Executing Commands
05 - Basic Math Functions
06 - A Simple "If" Statement
07 - Checking the Existence of Files
08 - Universal Update Script
09 - Standard Input, Output, & Error
10 - Creating a While Loop
11 - Correcting Laptop Insomnia
12 - Filesystem Locations For Bash Scripts
13 - The Case Statement
14 - Sending Email with sendEmail
15 - Sending Email (Part 2)
16 - Sending Email (Part 3)
Все видео доступны на youtube
👉 @i_odmin
Брандмауэр первого уровня 😁
Подписывайтесь на канал 👉@tipsysdmin
Упавшие сервера — это только страшный сон 💤
Мы собрали best practices работы в Linux, обновили программу осенью 2024 года и теперь готовы делиться знаниями и навыками для успешного старта в администрировании.
За 7 недель вы научитесь:
🔹 Устанавливать и настраивать Linux
🔹 Создавать и отлаживать bash скрипты для автоматизации задач
🔹 Понимать ядро Linux — его устройство, работу, сборку и диагностику сбоев
🔹 Управлять пользователями, правами доступа, памятью и работать в командной строке
🔹 И многим другим продвинутым аспектам в Linux.
Внутри курса:
👉 70% программы — практика на наших мощностях
👉 Практические задания приближены к реальной работе
👉 Прямое общение со спикером на онлайн-встречах и в закрытом чате
👉 Итоговая сертификация и проект в портфолио
Куратор курса — Кирилл Казарин, DevOps и SRE Manager, имеет опыт в администрировании более 14 лет и более 7 лет в DevOps.
📆 Старт 27 января
Начать учить Linux можно по ссылке ⬅️
#реклама
О рекламодателе
Подборка Telegram каналов для программистов
Системное администрирование 📌
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/linux_odmin Linux: Системный администратор
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux
1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus
Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах
GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
/channel/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
/channel/game_devv Все о разработке игр
Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов
БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼💻👩💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Английский 📌
/channel/UchuEnglish Английский с нуля
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
/channel/Excel_lifehack
/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
📈Хотите повысить квалификацию и освоить навыки защиты данных?
Присоединяйтесь к курсу «Внедрение и работа в DevSecOps» и узнайте, как превратить безопасность в конкурентное преимущество.
Что вы освоите:
— Как интегрировать тестирование безопасности на всех этапах разработки.
— Использовать SAST, WAF, SIEM и другие передовые инструменты DevSecOps.
— Выявлять и устранять уязвимости до их появления в production.
Преимущества курса:
— Лекции от практикующих экспертов.
— Диплом OTUS, который ценят ведущие компании.
— Возможность стать высокооплачиваемым специалистом.
👉Не ждите хакеров — становитесь защитником! Пройдите тест и получите доступ к бесплатным урокам и скидку на курс: https://vk.cc/cHokm1Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
🔑 Авторизация на базе ключей SSH
Рассматриваем процесс настройки SSH-авторизации по ключу и разбираем некоторые ошибки.
SSH-ключи для авторизации — это простой и надежный способ получения доступа к удаленному узлу. В статье мы рассмотрим процесс настройки SSH-авторизации по ключу, а также покажем способы устранения некоторых известных ошибок.
https://telegra.ph/Avtorizaciya-na-baze-klyuchej-SSH-01-16
👉 @i_odmin
Привет из прошлого: SONY SMC-210DL6 M35, 1986 & Digger
Перед нами старый компьютер, который пришел аж из 1986 года. Тогда его цена была 2700 долларов. Как думаете, сколько такой раритет стоит сейчас?
Подписывайтесь на канал 👉@tipsysdmin
Хочешь в IT, но не знаешь, с чего начать? Начни с тестирования — именно здесь стартуют будущие профи!
⚡️Приглашаем 16 января в 20:00 на открытый урок «Исследовательское тестирование для начинающих». Узнаешь виды тестирования, сравнишь подходы и освоишь методику туров — всё просто и практично.
Ты не просто поймешь, что делает тестировщик — ты увидишь, как решать реальные задачи. Успешная карьера в IT станет ближе, чем кажется!
👩💻Спикер Алена Новикова — PO в Геосоциальных картах МТС, опытный QA, PM и наставник.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cHiDt9
🎁Участники вебинара получат скидку на обучение и полезные материалы для успешного старта в новой профессии.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Shell скрипт для управления Linux- пользователями
Функциональные возможности
Создание пользователей
Просмотр списка существующих пользователей
Сброс пароля для существующих пользователей
Блокировка / Разблокировка пользовтеля
Просмотр всех заблокированных пользователей
Создание резервной копии домашнего каталога пользователя
Генерирование SSH ключей для пользователя
Повышение пользователя до админа и обратно
Удаление пользователя
Запись всех действий в журнал actions.log
Резервные копии
Скрипт создает каталог резервных копий в папке скрипта и создает архив tar.gz с именем, содержащим - имя пользователя и текущую дату
Генерация SSH ключа
Для генерации используется ssh-keygen, в результате будут отображены сведения о том, куда был сохранен ключ и отображено содержимое публичного ключа:
https://github.com/m0zgen/user-manager
👉 @i_odmin
Диски и файловые системы
О файловых системах
Работа с дисками (RHCSA)
Основы файловых систем
Работа с файловыми системами (RHCSA)
Управление логическими томами - LVM (RHCSA)
Программный RAID - MD
Дедупликация с VDO (RHCSA)
Виртуальная память, swap (RHCSA)
Управление многоуровневым хранилищем - stratis (RHCSA)
Сетевые файловые системы - NFS (RHCSA)
источник
👉 @i_odmin
Bash Scripting on Linux
- Course Introduction (Part 1)
- Hello World (Part 2)
- Variables (Part 3)
- Basic Math (Part 4)
- If Statements (Part 5)
- Exit Codes (Part 6)
- While Loops (Part 7)
- Universal Update Script (Part 8)
- For Loops (Part 9)
- Where to Store Scripts (Part 10)
источник
👉 @i_odmin
🐧Linux Kernel Manager and Activity Monitor
Утилита отображает информацию о текущем состоянии ядра, выводит данные о загруженных в ядро модулях и позволяет работать с ними.
https://github.com/orhun/kmon
👉 @i_odmin
Наглядное руководство по туннелированию SSH и переадресации портов
Если говорить коротко, то я жалею, что не знал о пробросе портов и туннелировании раньше. В этой статье я пытаюсь лучше понять это и поделиться с вами некоторым опытом и советами.
Темы: сценарии использования, конфигурация, SSH jumphosts, локальная/удаленная/динамическая переадресация портов и ограничения
https://ittavern.com/visual-guide-to-ssh-tunneling-and-port-forwarding/
👉 @i_odmin