Системный Администратор (Сисадмин)
14.2K subscribers
1.85K photos
1.82K videos
92 files
1.96K links
Настройка серверов Windows, Linux, сетевое оборудование Cisco Systems, D-Link, HP, Huawei, Juniper, MikroTik. Книги и мануалы для сисадминов.
По всем вопросам @evgenycarter

РКН clck.ru/3KoGJ3
Download Telegram
🚀 Можно ли организовать видеосвязь в переговорной без большого бюджета?

Присоединяйтесь к вебинару Труконф 17 сентября в 11:00 мск и первыми познакомьтесь с TrueConf Room 5.0 — обновленным решением, превращающим любой компьютер в мощный терминал для видеоконференций.

Что такое TrueConf Room?

Это ПО, с которым любое помещение становится «переговорным». Достаточно ПК на Windows/Linux, при этом покупать спецоборудование не нужно — вы можете подключить уже имеющиеся у вас камеры, микрофоны, экраны, тач-панели и другую периферию. А если нужен ВКС-терминал «под ключ», то TrueConf Room можно получить в виде готового ПАКа.

TrueConf Room поддерживает NDI, удалённое управление с помощью планшета, многоэкранные конфигурации, обладает встроенным ИИ, умеет захватывать контент с ноутбука по HDMI и многое другое.


Что будет на вебинаре:

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

🖇 Регистрация уже открыта

Реклама. ООО "Труконф", ОГРН 1177746109815, erid: 2VtzqwWLJXW
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83🤡2🤝2💊1
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻Трюки Vim. Изменение регистра при замене


\U - если используется в схеме замены, то все, что после него, пишется в верхнем регистре
\L - строчные символы после него
\u - прописные буквы в первом символе того, что следует за ним
\l - опускает первый символ следующего за ним символа
\e или \E - останавливает прописные или строчные буквы

Как мы можем их использовать?
Например, мы можем найти все адреса электронной почты и перевести их в нижний регистр:

:%s/\S\+@\S\+/\L&/

Ключевая часть здесь - \L перед &. Это означает, что в дальнейшем мы будем писать все в нижнем регистре.

Вот еще один вариант. Допустим, мы хотим сделать часть адреса электронной почты, содержащую имя, строчной, но оставить регистр имени компании нетронутым. Таким образом, FirstLast@Company.com станет firstlast@Company.com. В этом случае нам нужно использовать \e (или \E), чтобы завершить манипуляции с регистром символов на полпути к шаблону замены. Окончательная замена будет выглядеть следующим образом:

:%s/\(\S\+\)\(@\S\+\)/\L\1\e\2/g

Важным моментом здесь является подстановка. Мы используем \L, чтобы начать строчное написание, затем \1 для первого захвата (например, FirstLast), затем \e, чтобы закончить строчное написание, а затем \2 для второго захвата (например, @Company.com). В результате первая часть электронного адреса будет выделена нижним регистром, а все остальное останется неизменным.

👉 @sysodminof
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥5🌚2👍1
Media is too big
VIEW IN TELEGRAM
Diun. Система оповещения о новых Docker контейнерах.

Diun следит за установленными контейнерами и сравнивает их версии с версиями на репозиториях.

00:00 | Intro
00:16 | Проблема обновления docker
00:36 | Diun
00:53 | Сравнение с Watchtower. Основные функции
01:27 | Особенности обновления с Watchtower
03:02 | Проблема с образами image в Watchtower
04:21 | Diun обзор
04:56 | Diun системы уведомлений и провайдеры
06:15 | Diun. docker compose. Установка
08:21 | Расширенные параметры. Настройка diun.
11:00 | Запуск diun. Тест
12:03 | Crontab.guru - сервис настройски времени crontab (Scheduler)
12:30 | Тест diun. Уповещения в логе
13:34 | Настройка уведомлений в diun. Подключение к gotify
16:27 | Как обновить docker контейнер вручную.
17:13 | Преимущество diun уведомлений
18:12 | Gotify установка. docker compose.
18:34 | Спасибо

источник

👉 @sysadminof
👍72
Команды мониторинга и отладки

top отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (с автоматическим обновлением данных)

ps -eafw отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (единожды)

ps -e -o pid,args --forest вывести PID’ы и процессы в виде дерева

pstree отобразить дерево процессов

kill -9 98989
kill -KILL 98989
«убить» процесс с PID 98989 «на смерть» (без соблюдения целостности данных)

kill -TERM 98989 Корректно завершить процесс с PID 98989

kill -1 98989
kill -HUP 98989
заставить процесс с PID 98989 перепрочитать файл конфигурации

lsof -p 98989 отобразить список файлов, открытых процессом с PID 98989

lsof /home/user1 отобразить список открытых файлов из директории /home/user1

strace -c ls > /dev/null вывести список системных вызовов, созданных и полученных процессом ls

strace -f -e open ls > /dev/null вывести вызовы бибилотек

watch -n1 ‘cat /proc/interrupts’ отображать прерывания в режиме реального времени

last reboot отобразить историю перезагрузок системы

last user1 отобразить историю регистрации пользователя user1 в системе и время его нахождения в ней

lsmod вывести загруженные модули ядра

free -m показать состояние оперативной памяти в мегабайтах

smartctl -A /dev/hda контроль состояния жёсткого диска /dev/hda через SMART

smartctl -i /dev/hda проверить доступность SMART на жёстком диске /dev/hda

tail /var/log/dmesg вывести десять последних записей из журнала загрузки ядра

tail /var/log/messages вывести десять последних записей из системного журнала

👉 @sysadminof
👍72
Media is too big
VIEW IN TELEGRAM
Цикл for в терминале bash

Очень часто вам необходимо исполнить одну и ту-же команду на разных файлах. К примеру вы хотите сконвертировать каждый JPEG файл в аналогичный PNG (или наоборот).

Почти во всех терминалах есть возможность работать с циклами, и в данном видео я описываю работу с циклом «for» в терминале bash.

истончик

👉 @sysadminof
👍91
Media is too big
VIEW IN TELEGRAM
Резервное копирование и восстановление виртуальных машин KVM

В этом ролике мы разберём резервное копирование и восстановление виртуальных машин KVM средствами СРК RuBackup.

истончик

👉 @sysadminof
👍71
Зарезервированные переменные Bash

Переменная Значение
$DIRSTACK Содержимое вершины стека каталогов.
$EDITOR Текстовый редактор по-умолчанию.
$EUID Эффективный UID. Если вы использовали программу su для выполнения команд от другого пользователя, то эта переменная содержит UID этого пользователя.
$UID Содержит реальный идентификатор, который устанавливается только при логине.
$FUNCNAME Имя текущей функции в скрипте.
$GROUPS Массив групп к которым принадлежит текущий пользователь.
$HOME Домашний каталог пользователя.
$HOSTNAME hostname машины.
$HOSTTYPE Архитектура машины.
$LC_CTYPE Внутренняя переменная, которая определяет кодировку символов.
$OLDPWD Прежний рабочий каталог.
$OSTYPE Тип ОС.
$PATH Путь поиска программ.
$PPID Идентификатор родительского процесса.
$SECONDS Время работы скрипта (в сек.)
$# Общее количество параметров переданных скрипту
$* Все аргументы переданыне скрипту(выводятся в строку).
$@ Тоже самое, что и предыдущий, но параметры выводятся в столбик.
$! PID последнего запущенного в фоне процесса.
$$ PID самого скрипта.
$? Содержит код завершения последней команды.

👉 @sysadminof
👍81
Media is too big
VIEW IN TELEGRAM
Адресация IPv4. Деление на подсети и объединение подсетей

Что такое адресация IPv4 и как осуществляется деление на подсети? Вы познакомитесь с алгоритмом разделения сетей на подсети, а также со структурой IP-адреса, рассмотрите логическую структуру IP-адреса, разберёте понятия «идентификатор сети» и «идентификатор хоста», остановитесь на определении параметров IP-адресации при разделении сетей на подсети.

источник

👉 @sysadminof
👍101
🚨 Новый рекорд DDoS-атак

В этом году число DDoS-атак стремительно растёт, и рекорд был обновлён уже в третий раз.
1 сентября специалисты Curator отразили крупнейшую атаку, задействовавшую 5,76 млн устройств по всему миру.

О том, как проходила атака и какие методы защиты помогли её остановить - в канале Curator
💩2
Media is too big
VIEW IN TELEGRAM
Сети Cisco и Linux у Вас дома

Хорошим инженером можно стать так же, как хорошим спортсменом — нужно постоянно тренироваться, находить на это время и мотивацию. На нашем мастер-классе вы узнаете, как организовать «спортзал» дома и, занимаясь в формате «свободное обучение», повышать свою квалификацию в любое свободное время. А еще вы узнаете про использование геймификации — игрового подхода к образованию в наших методических материалах. Это точно оторвет вас от любимого сериала!

источник

👉 @sysadminof
👍11
Цифровая энтропия: почему ваш сервер с аптаймом в 1000 дней — это ходячий мертвец, и как с этим жить

Привет, коллеги! Хочу рассказать одну историю. Был у нас в стойке один сервер. Назовем его «Феникс». Работал как часы, аптайм — 986 дней. Мы им гордились, ставили в пример новичкам, мол, вот как надо настраивать железо и софт. А потом пришло время планового техобслуживания в дата-центре. Простое выключение-включение. «Феникс» больше не взлетел. RAID-контроллер решил, что с него хватит, а заодно прихватил с собой пару дисков из массива. Вот тогда я впервые по-настояшему задумался о том, что цифровой мир подчиняется тем же жестоким законам, что и физический.

В теории, код и данные — это нечто вечное. Биты не ржавеют, скрипты не изнашиваются. Но на практике любая сложная система со временем деградирует. Это не просто отказ железа ; это медленный, неумолимый «постепенный скат в беспорядок» , который затрагивает всё: софт, конфигурации, данные. Это явление, которое я для себя называю цифровой энтропией, — наш с вами постоянный и невидимый враг. Наша работа — не просто строить системы, а вести непрерывную войну с их неизбежным распадом.

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

https://habr.com/ru/articles/950002/

👉 @sysadminof
👍91💩1
Идеальная иллюстрация

👉 @sysadminof
🔥238💩1
Bash-Oneliner

Несколько лет назад я занимался биоинформатикой и был поражен тем, как однокомандные bash-команды могут быть намного быстрее, чем мои скучные скрипты. Учеба командам командной строки и написание скриптов помогло мне сэкономить много времени. В последние годы я занимаюсь облачными вычислениями и продолжаю записывать полезные команды здесь. Не все из них однострочные, но я стараюсь делать их краткими и быстрыми. В основном я использую Ubuntu, Amazon Linux, RedHat, Linux Mint, Mac и CentOS, прошу прощения, если команды не работают на вашей системе.

Этот блог будет посвящен простым bash-командам для парсинга данных и обслуживания систем Linux, которые я приобрел на работе и при сдаче экзамена LPIC. Прошу прощения за отсутствие подробных источников для всех команд, но, вероятно, они взяты из любимого Google и Stack Overflow.

Примеры:

Случайная генерация пароля (например, сгенерировать 5 паролей длиной по 13 символов каждый)
sudo apt install pwgen
pwgen 13 5
#sahcahS9dah4a xieXaiJaey7xa UuMeo0ma7eic9 Ahpah9see3zai acerae7Huigh7


Случайный выбор 100 строк из файла
shuf -n 100 filename

Случайный порядок (лотерея)
for i in a b c d e; do echo $i; done | shuf

Вывести серию случайных чисел в диапазоне (например, перемешать числа от 0 до 100, затем случайным образом выбрать 15 из них)
shuf -i 0-100 -n 15

Случайное число от 1 до 10
echo $(((RANDOM %10)+1))

https://github.com/onceupon/Bash-Oneliner

👉 @sysadminof
👍123🥱2
Большинство пользователей Linux знакомы с командой cp для копирования файлов. Однако немногие знают о её встроенных возможностях версионного контроля.

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

Понимание версионности в cp

Команда cp предлагает два ключевых параметра для версионного контроля:

1. --backup: Создаёт резервную копию целевого файла перед его перезаписью.
2. --suffix: Указывает пользовательский суффикс для резервной копии файла.

Основное резервное копирование

Чтобы создать простую резервную копию:


/$ cp --backup=numbered /path/to/source/file /path/to/destination/


Эта команда создаёт резервную копию с суффиксом по умолчанию в виде тильды (~) и инкрементирующимся номером.

Резервное копирование с пользовательским суффиксом

Для более описательных резервных копий:


$ cp --backup=numbered --suffix=.bak /path/to/source/file /path/to/destination/


Эта команда создаёт резервные копии с суффиксом .bak и инкрементирующимся номером.

Практический пример: Резервное копирование конфигурации SSH

Предположим, вы часто обновляете конфигурационный файл SSH (/etc/ssh/sshd_config) для управления правилами доступа. Вот как можно поддерживать версионные резервные копии:

1. Создайте нумерованную резервную копию:


$ cp --backup=numbered /etc/ssh/sshd_config /data/backup/


Это создаст резервные копии, такие как sshd_config.~1~, sshd_config.~2~ и т.д.

2. Создайте нумерованную резервную копию с пользовательским суффиксом:


$ cp --backup=numbered --suffix=.bak /etc/ssh/sshd_config /data/backup/


Это создаст резервные копии, такие как sshd_config.bak.1, sshd_config.bak.2 и т.д.

Преимущества

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

👉 @sysadminof
👍144🔥1
Резервное сохранение в Linux

Использование утилит копирования
Возможности жестких ссылок

источник

Мы в MAX

👉 @sysadminof
👍6🤬1
Media is too big
VIEW IN TELEGRAM
Настройка контейнеров на RouterOS | Docker + PiHole

Начиная с RouterOS v7.5 маршрутизаторы mikrotik получили возможность устанавливать контейнеры docker. В этом видео мы узнаем, как правильно подготовить маршрутизатор и как развернуть контейнер в RouterOS.

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

источник

Мы в MAX

👉 @sysadminof
👍62
Forwarded from Bash Советы
Как быстро найти и удалить пустые директории

Иногда в системах с большим количеством файлов и директорий накапливаются пустые папки. Вот простой способ найти и удалить их одним махом:


find /path/to/search -type d -empty -delete


🔍 Разбор:
- /path/to/search — укажи директорию, где искать.
- -type d — ищем только директории.
- -empty — фильтруем только пустые.
- -delete — удаляем найденные.

🛡 Важно:
Перед удалением рекомендую посмотреть, что именно будет удалено:


find /path/to/search -type d -empty


👉@bash_srv
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
Fuck - это великолепная утилита, которое исправляет ошибки в предыдущих консольных командах.

Примеры:

apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?


fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists... Done

...

git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use

git push --set-upstream origin master



fuck
git push --set-upstream origin master [enter/↑/↓/ctrl+c]
Counting objects: 9, done.
...




Установка

На Ubuntu / Mint установите The Fuck с помощью следующих команд:
sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
pip3 install thefuck --user


На FreeBSD установите The Fuck с помощью следующих команд:
pkg install thefuck

На macOS или Linux установить The Fuck можно через Homebrew:
brew install thefuck

https://github.com/nvbn/thefuck

Мы в MAX

👉 @sysadminof
👍121