Все для системного администратора. По всем вопросам @evgenycarter РКН clck.ru/3KoDXp
Столкнулись с падением производительности базы данных?
Не делайте резких движений: вы можете ухудшить ситуацию.
Сначала нужно верно диагностировать причину проблемы.
Возможно вы неправильно выбрали индексы, а быть может дело вообще в самой архитектуре БД – вариантов масса!
На открытом вебинаре «Как ускорить работу и повысить надёжность PostgreSQL»
вы узнаете:
🎯как обеспечить высокую производительность и отказоустойчивость базы данных
🎯как вовремя выявить деградацию производительности с помощью диагностики
Вебинар проведёт Дмитрий Золотов, Kotlin-разработчик в «Яндексе».
Приглашаем технических руководителей, админов БД, девопсов и разработчиков.
Все участники получат в подарок видеоурок «Безопасность в PostgreSQL: защита данных, управление доступом и аудит» и скидку 7% на любой курс OTUS.
6 мая, 19:00 МСК
Бесплатно
Записаться - https://otus.pw/eioB/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFJR7f84
Команда grep
используется в Unix/Linux для поиска строк, соответствующих регулярному выражению, в одном или нескольких файлах или потоках ввода.
Синтаксис:
grep [опции] ПАТТЕРН [ФАЙЛ...]
grep "ошибка" журнал.txt
журнал.txt
.
grep -i "ошибка" журнал.txt
grep -r "TODO" ./src
src
.
grep -o "http[s]\?://[^ ]\+"
grep -n "ошибка" журнал.txt
grep -v "успешно" журнал.txt
grep -E "foo|bar" файл.txt
grep --color "pattern" файл.txt
👩💻 Shell скрипт для управления Linux- пользователями
Функциональные возможности
Создание пользователей
Просмотр списка существующих пользователей
Сброс пароля для существующих пользователей
Блокировка / Разблокировка пользовтеля
Просмотр всех заблокированных пользователей
Создание резервной копии домашнего каталога пользователя
Генерирование SSH ключей для пользователя
Повышение пользователя до админа и обратно
Удаление пользователя
Запись всех действий в журнал actions.log
Резервные копии
Скрипт создает каталог резервных копий в папке скрипта и создает архив tar.gz с именем, содержащим - имя пользователя и текущую дату
Генерация SSH ключа
Для генерации используется ssh-keygen, в результате будут отображены сведения о том, куда был сохранен ключ и отображено содержимое публичного ключа:
https://github.com/m0zgen/user-manager
👉 @i_odmin
📕Архитектура программного обеспечения в 1C для для разработчиков 1C, системных и бизнес-аналитиков и руководителей в IT
Как проработка архитектуры может превратить один и тот же проект из неповоротливой конструкции в элегантное и эффективное решение.
📗 На вебинаре 5 мая в 20:00 разберём:
1. Различные архитектурные стили решений, в том числе – на платформе 1С:Предприятие;
2. Ключевые факторы при проектировании оптимальной архитектуры.
📘 В результате будете знать всё о работе с арихитектурой ПО и сможете грамотно оптимизировать работу с ней в проектах.
👉 Регистрация и подробности о курсе Функциональный архитектор 1С: https://vk.cc/cLxSix
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Софт для VDS-сервера, на который стоит обратить внимание новичкам
Если вы арендовали свой первый VDS-сервер и не знаете, с чего начать, это нормально — поначалу всё может казаться сложным: терминал, настройки, безопасность… Чтобы упростить старт, я собрал список утилит, которые стоит установить в первую очередь. Они помогут настроить сервер под ваши задачи, повысят удобство его использования и защитят от потенциальных угроз.
https://habr.com/ru/companies/ruvds/articles/902596/
👉 @i_odmin
Для защиты своего сервера я использую zip-бомбы
Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM.
Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.
https://habr.com/ru/articles/905776/
👉 @i_odmin
🖇 Символические и Жёсткие ссылки в Linux
Что такое ссылки?
- Жёсткая ссылка — второе имя файла, напрямую ссылается на данные (inode).
- Символическая ссылка — отдельный файл, который указывает на путь к другому файлу или папке.
Жёсткие ссылки 📂
✅ Указывают на inode
✅ Работают только в рамках одного раздела
✅ Оригинал можно удалить — ссылка останется рабочей
⛔ Нельзя создать на папку
Создание:
ln файл ссылка
ln -s файл ссылка
ls -l
— символьная ссылка отображается как: имя -> путь
ls -li файл
readlink ссылка
find / -inum НОМЕР
😱 Хотите научиться настраивать кластер Elasticsearch с нуля? Задача кажется сложной?
⏰ На вебинаре 29 апреля в 20:00 мск мы разберём архитектуру Elasticsearch: шарды, реплики и их роль в распределении данных. Узнайте, как правильно настраивать конфигурацию кластера для устойчивой работы и добавлять новые ноды без простоев.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
Мы покажем, как обеспечить отказоустойчивость и надежность хранения данных, а также как масштабировать кластер, добавляя новые ноды.
Участники вебинара получат скидку на курс "Инфраструктура высоконагруженных систем"
👉 Для участия зарегистрируйтесь: https://vk.cc/cLdTeu
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
📕Открытый урок о функционале блока подсистемы кадровый учет в 1C ERP для разработчиков 1C, консультантов 1C, аналитиков и функциональных архитекторов.
На открытом уроке 29 апреля в 20:00 мск мы погрузимся в основные настройки, а также возможности подсистемы кадровый учет в 1C ERP.
📗 В результате вы:
- Узнаете, как реализован блок кадрового учета и расчета зарплаты в 1С ERP;
- Разберетесь, какие настройки необходимо включить в 1С ERP для корректного ведения учета;
- Освоите на практике работу с подсистемой и её возможности для различных кейсов и задач.
Спикер Юлия Курзова — опытный аналитик 1C, 10+ лет в сфере работы с 1C, сертифицированный преподаватель 1C, отвечает за внедрение 1С:ERP, 1С: КА, 1С:ERPУХ на крупных проектах.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cLd0Bv
📙 Все участники открытого урока получат скидку на курс "Бизнес-аналитик 1С"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🚀 Подборка Telegram каналов для программистов
Системное администрирование, DevOps 📌
/channel/bash_srv Bash Советы
/channel/win_sysadmin Системный Администратор Windows
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
/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С
/channel/DevLab1C 1С:Предприятие 8
/channel/razrab_1C 1C Разработчик
/channel/buh1C_prog 1C Программист | Бухгалтерия и Учёт
/channel/rabota1C_rus Вакансии для программистов 1С
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия.
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python
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/bigdata_1 Big Data, Machine Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/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 программиста
/channel/lifeproger Жизнь программиста. Авторский канал.
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
/channel/matgeoru Математика | Геометрия | Логика
Excel лайфхак📌
/channel/Excel_lifehack
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
Повышение защищенности Active Directory для чайников и не очень
В корпоративных средах развертывание Active Directory (AD) — де-факто стандарт для администрирования ИТ-инфраструктуры на Windows. Да, в России есть тренд импортозамещения и сопутствующее ему «переползание» на отечественные решения типа Astra Linux-ALD Pro и так далее. Но пока еще Windows стоит много где, и оборона домена AD — это стратегическая задача для большинства организаций.
Кроме того, в процессе импортозамещения AD в вашей организации вполне может оказаться, что полный отказ от Windows+AD невозможен по ряду причин. Причем, как часто бывает, это может проявиться на этапе после того, как вы составили и согласовали техническое решение со всеми нужными инстанциями и регуляторами. Например, внезапно выясняется, что существует некий критический софт, который применяется только на винде и нормально работает только в условиях AD-домена. В итоге часть инфраструктуры продолжит функционировать по «неимпортозамещенной» схеме, при этом ежедневные задачи по администрированию и защите этого сегмента никуда не денутся.
https://habr.com/ru/companies/first/articles/903572/
👉 @i_odmin
❔ Уже работаете с 1С, но не знаете, как настроить взаимодействие с веб-серверами?
Платформа 1С может интегрироваться с различными веб-серверами, но каждая такая интеграция требует особого подхода. На открытом вебинаре 28 апреля в 20:00 МСК мы научим вас тонкостям взаимодействия 1С с веб-серверами и расскажем о плюсах и минусах разных вариантов.
Это урок для системных администраторов, разработчиков, архитекторов и технических лидеров, желающих повысить эффективность работы с 1С и улучшить инфраструктуру.
🚀Запишитесь на открытый вебинар и получите скидку на программу обучения «DevOps 1С»: https://vk.cc/cL51IiРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👩💻 Docker — один из самых мощных инструментов для создания эффективных, масштабируемых и изолированных окружений.
Его применяют во всех современных data-проектах, и его знание критически важно для инженера данных.
Сегодня Docker стал неотъемлемой частью стека Data-инженера. Он используется для развертывания ETL- и ML-решений, работы с микросервисной архитектурой и создания воспроизводимых рабочих сред.
Не зная Docker, вы ограничиваете свои возможности.
📌На открытом вебинаре 29 апреля в 20:00 мск вы узнаете, как использовать Docker для решения data-задач.
Мы разберём практические кейсы, научим вас создавать Docker-образы для data-проектов, а также переводить решения в продакшн.
♾ Регистрируйтесь на вебинар и получите скидку на программу обучения «Data Engineer»: https://vk.cc/cL37YtРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⭐️🚀 Пройдите вступительный тест и получите доступ к бесплатным урокам курса "Administrator Linux. Professional".
👉 Пройти тест: https://vk.cc/cL1eI9
Хотите стать экспертом в администрировании Linux? У нас для вас отличная новость!
Представьте, как вы:
- Освоите настройку и управление сетевыми сервисами на Linux.
- Научитесь автоматизировать задачи с помощью Ansible.
- Сможете эффективно управлять дисковыми подсистемами и файловыми системами.
- Настроите и будете администрировать веб-серверы (Nginx, Apache) и базы данных (MySQL, PostgreSQL).
- Повысите уровень безопасности своих серверов с помощью SELinux и брандмауэров.
- Получите навыки мониторинга и логирования с использованием Prometheus и Zabbix.
Наш курс включает в себя все необходимые знания и практические задания, чтобы вы стали настоящим профессионалом.
❗️После успешного прохождения теста вам будут доступны уроки на лендинге курса, и скидка на обучение "Administrator Linux. Professional".
👉 Пройти тест https://vk.cc/cL1eI9
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Подборка хаков с grep
для продвинутых
🔥 1. Поиск в архивированных логах
zgrep "CRITICAL" /var/log/syslog.3.gz
zgrep
, аналог grep
, работающий с .gz
- архивами.
grep -w "main" код.c
main
, но не domain
или maintain
.
grep --color=always "TODO" файл.txt
less -R
.
grep -r --exclude-dir={.git,node_modules} "token" .
grep -oE "ID-[0-9]{4}" журнал.log
ID-1234
.
grep -A3 "panic" системный_лог.txt # 3 строки после
grep -B2 "panic" системный_лог.txt # 2 строки до
grep -C5 "panic" системный_лог.txt # 5 строк до и после
grep -E "ERROR|WARN|FATAL" журнал.log
grep -f patterns.txt журнал.log
patterns.txt
содержит:
ERROR
WARN
FATAL
grep -rl "import numpy" .
grep
- вывода
grep "Session" журнал.log | cut -d' ' -f2- | sort | uniq
tail -f /var/log/nginx/access.log | grep --line-buffered "404"
📕MySQL для администраторов, разработчиков, архитекторов и специалистов баз данных
Как грамотно оптимизировать производительность в MySQL и решить возникающие проблемы.
📗 На вебинаре 6 мая в 19:00 разберём:
1. Практические методы оптимизации производительности, диагностику нагрузки и анализ "узких мест" MySQL;
2. Оптимизацию запросов: от простых до сложных.
📘 В результате будете знать всё о настройке ключевых параметров конфигурации, уметь самостоятельно диагностировать и решать проблемы производительности MySQL.
👉 Регистрация и подробности о курсе Базы данных: https://vk.cc/cLzNwa
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
💻 Полезные команды Linux. Корректное выключение, перезагрузка и выход из системы
🔌 Выключение системы:
sudo shutdown -h now
sudo shutdown -h +10 "Выключение через 10 минут"
sudo poweroff
shutdown -h now
, завершает работу и отключает питание.
sudo reboot
sudo shutdown -r now
sudo systemctl reboot
exit
logout
-h
= halt (выключить)-r
= reboot (перезагрузить)+минуты
— отложенное действиеwall
— отправка сообщения всем пользователямВ Debian (и производных, включая Ubuntu) для ускорения установки пакетов можно использовать утилиту libeatmydata
, которая значительно снижает время установки за счёт отключения fsync и других дорогостоящих операций записи на диск.
📌 Что такое libeatmydata
libeatmydata
— это LD_PRELOAD-библиотека, которая подменяет функции fsync()
, fdatasync()
, msync()
и другие, превращая их в no-op (то есть они ничего не делают). Это полезно, когда производительность важнее надёжности — например, в CI, сборках образов, chroot'ах или при частой установке/удалении пакетов.
🛠 Как использовать libeatmydata
1. Установите пакет:
sudo apt install eatmydata
eatmydata
как префикс:
sudo eatmydata apt install some-package
sudo eatmydata dpkg -i some-package.deb
sudo eatmydata apt upgrade -y
time sudo apt install -y build-essential # обычный способ
time sudo eatmydata apt install -y build-essential # ускоренный способ
chroot /mnt/debian-root eatmydata apt install -y ...
#!/bin/bash
export LD_PRELOAD=libeatmydata.so
apt install -y ...
debootstrap
:
sudo eatmydata debootstrap bullseye /mnt/debian http://deb.debian.org/debian
❓ 📝 Как эффективно собирать и анализировать логи в распределённых системах?
На открытом уроке «Особенности работы с Elasticsearch: централизованный сбор логов и стек ELK» мы расскажем, как настроить и использовать стек ELK для мониторинга и анализа логов. Это не просто теория — на вебинаре вы получите практические знания, которые помогут настроить систему логирования для реальных проектов.
Что разберем:
- как работает стек ELK (Elasticsearch, Logstash, Kibana) и как его настроить;
- как собирать, обрабатывать и визуализировать логи с разных сервисов;
- как использовать Elasticsearch для диагностики и анализа инцидентов.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
⏰ Встречаемся 6 мая в 20:00 МСК. Участники получат скидку на программу обучения «Инфраструктура высоконагруженных систем».
👉 Для участия зарегистрируйтесь: https://vk.cc/cLtV5b
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Протокол TCP
00:00 - Варианты подтверждения доставки в TCP
00:54 - Остановка и ожидание
01:19 - Скользящее окно
01:42 - Почему выгодно использовать скользящее окно
03:45 - Как работает скользящее окно
05:31 - Типы подтверждений в TCP
07:11 - Итоги
источник
👉 @i_odmin
Линус Торвальдс жёстко разнёс регистронезависимые ФС
Линус Торвальдс сегодня в привычной для себя прямой и резкой манере высказался о файловых системах с поддержкой case folding (регистронезависимых файлов и папок).
Поводом послужила проблема с поддержкой case folding в Bcachefs, обнаруженная на этой неделе и уже имеющая фикс для Linux 6.15. Линус написал огромное сообщение в рассылке разработчиков Linux (LKML), изложив своё мнение о реализации case folding.
Стоит отметить, что проблема с case folding в Bcachefs — не первая для Linux: ранее уже возникали баги, связанные с обработкой эмодзи и других специальных символов Unicode.
https://habr.com/ru/articles/904564/
original https://www.phoronix.com/news/Linus-Torvalds-Anti-Case-Fold
👉 @i_odmin
📈 Вебинар: новый продукт TrueConf Monitor
💬 «Почему лагает видео или звук в конференции?» — ответ есть! Во вторник 29 апреля в 11:00 мск представляем новое решение для анализа работы TrueConf Server в реальном времени.
Что умеет?
✔️ Собирать данные о конференциях и пользователях
✔️ Оперативно выявлять сбои и быстро диагностировать проблемы
✔️ Анализировать качество аудио и видео
✔️ Мониторить задержки и потери
✔️ Контролировать нагрузку на ВКС-сервер.
Больше не надо читать логи. Метрики, алерты и визуализация любых параметров в одном интерфейсе!
👤 Ведущие — руководитель отдела технической поддержки Руслан Мартьянов и директор по маркетингу Лев Якупов.
🔔 Когда: 29 апреля 2025 в 11:00 мск
🔗 Регистрация по ссылке
@trueconf
📂 Как найти количество открытых файлов в Linux
🔹 Проверка общего количества открытых файлов:
lsof | wc -l
lsof
— выводит список всех открытых файлов.wc -l
— считает количество строк (то есть файлов).
lsof -p <PID> | wc -l
<PID>
— ID интересующего процесса.
ps aux | grep <имя_процесса>
/proc
:
ls /proc/<PID>/fd | wc -l
/proc/<PID>/fd
— каталог с дескрипторами открытых файлов процесса./proc
:
ls /proc/*/fd 2>/dev/null | wc -l
ulimit -n
cat /proc/sys/fs/file-max
cat /proc/sys/fs/file-nr
file-nr
:
cat /proc/<PID>/limits | grep "open files"
/etc/security/limits.conf
.alias — команда, позволяющая создавать более краткие или более привычные псевдонимы для часто используемых команд
Команда alias позволяет всего лишь связать псевдоним с произвольной командой. Механизм псевдонимов позволяет устанавливать более короткие или привычные имена для часто используемых команд. Еще одним преимуществом данного механизма является возможность использования в составе псевдонимов аргументов команд. Впервые данный механизм был реализован в рамках командной оболочки csh, после чего он был перенесен в такие командные оболочки, как bash и другие.
Синтаксис команды для установки псевдонима зависит от используемой командной оболочки. В случае командных оболочек, основанных на Bourne shell (ksh, bash, и других, но не sh), синтаксис является следующим:$ alias <псевдоним>=<команда>
В том случае, если при вызове команды должна осуществляться передача аргументов, следует использовать одинарные или двойные кавычки:$ alias <псевдоним>="<команда> <аргумент> ..."
В случае же командных оболочек, основанных на csh (csh, tcsh и других), кавычки не требуются:$ alias <псевдоним> <команда> [аргументы …]
Несложно заметить, что главное отличие в данном случае заключается в использовании знака равенства и необходимости использования кавычек. При вызове команды alias без аргументов будет выведен список объявленных в текущее время псевдонимов.
После установки псевдоним будет работать лишь в рамках текущей сессии командной оболочки. Для того, чтобы активировать этот псевдоним на постоянной основе, вам придется добавить его в один из файлов конфигурации используемой в текущее время командной оболочки. В случае командной оболочки bash псевдонимы для отдельных пользователей чаще всего размещаются в файле конфигурации ~/.bashrc, а общесистемные псевдонимы — в файле конфигурации /etc/profile. В случае командной оболочки tcsh аналогичными файлами конфигурации являются файлы ~/.tcshrc и /etc/login соответственно.
Примеры
Простой псевдоним для пользователей операционной системы DOS:$ alias dir="ls -l"
А это пример более сложного псевдонима:$ alias topcom='sort ~/.bash_history | uniq -ci | sort -r | less'
Данный псевдоним упрощает обращение к списку наиболее часто используемых команд и может стать шаблоном для новых псевдонимов.
А это еще один пример псевдонима для ознакомления со списком смонтированных дисковых разделов:$ alias mnt='mount | grep -i /dev/[h]d[a..g] | sort'
Механизм функций командной оболочки может выполнять ту же работу, что и механизм псевдонимов, но он гораздо сложнее в использовании. В отличие от функций, псевдонимы не позволяют осуществлять подстановку значений переменных.
Например, даже такая простая функция, как$ bak () { cp -a $1 $1.bak }
не может быть преобразована в псевдоним из-за использования переменной "$1".
Установка псевдонима на постоянной основе
Для установки псевдонима на постоянной основе для всех пользователей, всех командных оболочек (ksh, bash, …) и всех типов командных оболочек (использующихся и не использующихся для входа в систему) вам придется:
- модифицировать файл конфигурации /etc/profile для командных оболочек, использующихся для входа в систему
- модифицировать файл конфигурации /etc/bash_bashrc для командных оболочек, не использующихся для входа в систему
Деактивация псевдонима
Используйте команду unalias.
👉 @i_odmin
TUIFIManager
Кроссплатформенный терминальный termux-ориентированный файловый менеджер, предназначенный для использования с проектом Uni-Curses
Установкаsudo pip3 install tuifimanager --upgrade
pip3 install TUIFIManager --upgrade
Использование
Запустите tuifi в терминале, или импортируйте его в один из ваших проектов Uni-Curses как компонент, например:from TUIFIManager import *
https://github.com/GiorgosXou/TUIFIManager
👉 @i_odmin
🧠 RegExp: Как найти строки с IP-адресами в логах
Частая задача — выцепить IP-адреса из логов. Вот регулярка и однострочник, которые помогут:
grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' /var/log/nginx/access.log
-Eo
— включаем расширенные регулярки и выводим только совпадения([0-9]{1,3}\.){3}[0-9]{1,3}
— шаблон для IPv4-адресов
grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head
Настройка двух интернет-провайдеров на MikroTik с резервированием
В данном видео мы настроим два интернет-провайдера на MikroTik и реализуем автоматическое переключение с одного провайдера на другой в случае недоступности первого.
00:00 Вступление
00:58 Настройка основного интернета
05:01 Настройка резервного интернета
06:39 Ручное переключение
09:13 Автоматическое переключение
10:02 Добавляем маршрут
11:16 Netwatch
11:57 Пишем команды
14:07 Проверка работы
15:28 Важный нюанс
источник
👉 @i_odmin
📌Ключевые различия между 💻 Windows и 👍 Linux
1. Интерфейс
- Windows: Привычный GUI с окнами, иконками и меню. Подходит для пользователей любого уровня.
- Linux: Множество окружений (GNOME, KDE и др.) и CLI. Гибкая настройка, но может показаться сложным новичкам.
2. Совместимость с ПО
- Windows: Поддержка большинства коммерческих программ и игр.
- Linux: Основной упор на open source. Есть аналоги многим приложениям, но не всё ПО доступно нативно.
3. Безопасность
- Windows: Уязвимее, требует антивирусов. Зато Microsoft активно выпускает обновления безопасности.
- Linux: Безопаснее благодаря системе прав и меньшей популярности у вирусописателей. Активное коммьюнити безопасности.
4. Стоимость
- Windows: Платная лицензия.
- Linux: Бесплатный и открытый код. Отличный выбор при ограниченном бюджете.
5. Кастомизация
- Windows: Настроек немного, ядро почти не трогаешь.
- Linux: Полная свобода — можно всё, от изменения интерфейса до сборки системы под себя.
6. Обновления
- Windows: Централизованные апдейты от Microsoft. Можно отложить переход на новую версию.
- Linux: Обновления зависят от дистрибутива. Больше контроля у пользователя.
🔍 Плюсы и минусы
Windows
✅ Удобство и понятный интерфейс
✅ Много программ и игр
✅ Официальная поддержка и частые обновления
❌ Платная лицензия
❌ Выше риск заражения
❌ Меньше гибкости в настройке
Linux
✅ Бесплатно и open source
✅ Полная кастомизация
✅ Больше встроенной безопасности
❌ Требуется больше тех. знаний
❌ Не вся коммерческая софт поддерживается
❌ Интерфейс зависит от дистрибутива
👉 @i_odmin
Шпаргалка по systemd
Управление состояниями системы:
1. Перезагрузка системы:
systemctl reboot
systemctl poweroff
systemctl suspend
systemctl hibernate
systemctl hybrid-sleep
systemctl show -p FragmentPath <имя_сервиса>
systemctl edit <имя_сервиса>
systemctl daemon-reload
systemctl cat <имя_сервиса>
systemctl list-dependencies <имя_сервиса>
journalctl -u <имя_сервиса>
journalctl -e
journalctl -b
journalctl -k
systemctl is-system-running
systemctl rescue
systemctl emergency
[Unit]
Description=Пример сервиса
After=network.target
[Service]
ExecStart=/usr/bin/пример-программы
Restart=on-failure
[Install]
WantedBy=multi-user.target