alias — команда, позволяющая создавать более краткие или более привычные псевдонимы для часто используемых команд
Команда alias позволяет всего лишь связать псевдоним с произвольной командой. Механизм псевдонимов позволяет устанавливать более короткие или привычные имена для часто используемых команд. Еще одним преимуществом данного механизма является возможность использования в составе псевдонимов аргументов команд. Впервые данный механизм был реализован в рамках командной оболочки csh, после чего он был перенесен в такие командные оболочки, как bash и другие.
Синтаксис команды для установки псевдонима зависит от используемой командной оболочки. В случае командных оболочек, основанных на Bourne shell (ksh, bash, и других, но не sh), синтаксис является следующим:
В том случае, если при вызове команды должна осуществляться передача аргументов, следует использовать одинарные или двойные кавычки:
В случае же командных оболочек, основанных на csh (csh, tcsh и других), кавычки не требуются:
Несложно заметить, что главное отличие в данном случае заключается в использовании знака равенства и необходимости использования кавычек. При вызове команды alias без аргументов будет выведен список объявленных в текущее время псевдонимов.
После установки псевдоним будет работать лишь в рамках текущей сессии командной оболочки. Для того, чтобы активировать этот псевдоним на постоянной основе, вам придется добавить его в один из файлов конфигурации используемой в текущее время командной оболочки. В случае командной оболочки bash псевдонимы для отдельных пользователей чаще всего размещаются в файле конфигурации ~/.bashrc, а общесистемные псевдонимы — в файле конфигурации /etc/profile. В случае командной оболочки tcsh аналогичными файлами конфигурации являются файлы ~/.tcshrc и /etc/login соответственно.
Примеры
Простой псевдоним для пользователей операционной системы DOS:
А это пример более сложного псевдонима:
Данный псевдоним упрощает обращение к списку наиболее часто используемых команд и может стать шаблоном для новых псевдонимов.
А это еще один пример псевдонима для ознакомления со списком смонтированных дисковых разделов:
Механизм функций командной оболочки может выполнять ту же работу, что и механизм псевдонимов, но он гораздо сложнее в использовании. В отличие от функций, псевдонимы не позволяют осуществлять подстановку значений переменных.
Например, даже такая простая функция, как
не может быть преобразована в псевдоним из-за использования переменной "$1".
Установка псевдонима на постоянной основе
Для установки псевдонима на постоянной основе для всех пользователей, всех командных оболочек (ksh, bash, …) и всех типов командных оболочек (использующихся и не использующихся для входа в систему) вам придется:
- модифицировать файл конфигурации /etc/profile для командных оболочек, использующихся для входа в систему
- модифицировать файл конфигурации /etc/bash_bashrc для командных оболочек, не использующихся для входа в систему
Деактивация псевдонима
Используйте команду unalias.
👉 @i_odmin
Команда 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
📕Открытый урок о функционале блока подсистемы кадровый учет в 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
На открытом уроке 29 апреля в 20:00 мск мы погрузимся в основные настройки, а также возможности подсистемы кадровый учет в 1C ERP.
📗 В результате вы:
- Узнаете, как реализован блок кадрового учета и расчета зарплаты в 1С ERP;
- Разберетесь, какие настройки необходимо включить в 1С ERP для корректного ведения учета;
- Освоите на практике работу с подсистемой и её возможности для различных кейсов и задач.
Спикер Юлия Курзова — опытный аналитик 1C, 10+ лет в сфере работы с 1C, сертифицированный преподаватель 1C, отвечает за внедрение 1С:ERP, 1С: КА, 1С:ERPУХ на крупных проектах.
👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cLd0Bv
📙 Все участники открытого урока получат скидку на курс "Бизнес-аналитик 1С"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
📂 Как найти количество открытых файлов в Linux
🔹 Проверка общего количества открытых файлов:
-
-
🔹 Количество открытых файлов процессом:
-
✅ Чтобы узнать PID процесса:
🔹 Использование
-
🔹 Сводка по всему серверу через
- Показывает общее количество всех открытых файлов на сервере.
🔹 Ограничения (лимиты) на количество открытых файлов:
- Для текущей сессии:
- Системные лимиты:
- Использование и максимальное значение:
Расшифровка
- 1-е число — открытые дескрипторы файлов,
- 2-е число — дескрипторы в очереди освобождения,
- 3-е число — максимальное количество дескрипторов.
🔹 Проверка лимитов процесса:
⚙️ Быстрые советы:
- Если приближается к лимиту — увеличивайте значение через
👉 @i_odmin
🔹 Проверка общего количества открытых файлов:
lsof | wc -l
-
lsof
— выводит список всех открытых файлов.-
wc -l
— считает количество строк (то есть файлов).🔹 Количество открытых файлов процессом:
lsof -p <PID> | wc -l
-
<PID>
— ID интересующего процесса.✅ Чтобы узнать PID процесса:
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
:- 1-е число — открытые дескрипторы файлов,
- 2-е число — дескрипторы в очереди освобождения,
- 3-е число — максимальное количество дескрипторов.
🔹 Проверка лимитов процесса:
cat /proc/<PID>/limits | grep "open files"
⚙️ Быстрые советы:
- Если приближается к лимиту — увеличивайте значение через
/etc/security/limits.conf
.👉 @i_odmin
😱 Хотите научиться настраивать кластер Elasticsearch с нуля? Задача кажется сложной?
⏰ На вебинаре 29 апреля в 20:00 мск мы разберём архитектуру Elasticsearch: шарды, реплики и их роль в распределении данных. Узнайте, как правильно настраивать конфигурацию кластера для устойчивой работы и добавлять новые ноды без простоев.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
Мы покажем, как обеспечить отказоустойчивость и надежность хранения данных, а также как масштабировать кластер, добавляя новые ноды.
Участники вебинара получат скидку на курс "Инфраструктура высоконагруженных систем"
👉 Для участия зарегистрируйтесь: https://vk.cc/cLdTeu
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
⏰ На вебинаре 29 апреля в 20:00 мск мы разберём архитектуру Elasticsearch: шарды, реплики и их роль в распределении данных. Узнайте, как правильно настраивать конфигурацию кластера для устойчивой работы и добавлять новые ноды без простоев.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
Мы покажем, как обеспечить отказоустойчивость и надежность хранения данных, а также как масштабировать кластер, добавляя новые ноды.
Участники вебинара получат скидку на курс "Инфраструктура высоконагруженных систем"
👉 Для участия зарегистрируйтесь: https://vk.cc/cLdTeu
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Forwarded from Официальный канал TrueConf
Что умеет?
Больше не надо читать логи. Метрики, алерты и визуализация любых параметров в одном интерфейсе!
@trueconf
Please open Telegram to view this post
VIEW IN TELEGRAM
🖇 Символические и Жёсткие ссылки в Linux
Что такое ссылки?
- Жёсткая ссылка — второе имя файла, напрямую ссылается на данные (inode).
- Символическая ссылка — отдельный файл, который указывает на путь к другому файлу или папке.
Жёсткие ссылки 📂
✅ Указывают на inode
✅ Работают только в рамках одного раздела
✅ Оригинал можно удалить — ссылка останется рабочей
⛔ Нельзя создать на папку
Создание:
Символические ссылки 🔗
✅ Указывают на путь к файлу/папке
✅ Можно создавать на разных разделах
⛔ Если оригинал удалён — ссылка ломается
✅ Можно создавать на директории
Создание:
Как отличить ссылки?
-
👉
- Жёсткая ссылка никак не выделяется — это "обычный" файл.
Полезные команды 🛠
🔹 Посмотреть inode и количество жёстких ссылок:
🔹 Узнать путь у символической ссылки:
🔹 Найти все файлы с одним inode:
Быстрое сравнение ⚡
Жёсткая ссылка:
- Прямая связь с данными
- Ограничение на файловую систему
- Данные живут до последней ссылки
Символическая ссылка:
- Указатель на путь
- Свободно между разделами
- При удалении оригинала — ссылка битая
👉 @i_odmin
Что такое ссылки?
- Жёсткая ссылка — второе имя файла, напрямую ссылается на данные (inode).
- Символическая ссылка — отдельный файл, который указывает на путь к другому файлу или папке.
Жёсткие ссылки 📂
✅ Указывают на inode
✅ Работают только в рамках одного раздела
✅ Оригинал можно удалить — ссылка останется рабочей
⛔ Нельзя создать на папку
Создание:
ln файл ссылка
Символические ссылки 🔗
✅ Указывают на путь к файлу/папке
✅ Можно создавать на разных разделах
⛔ Если оригинал удалён — ссылка ломается
✅ Можно создавать на директории
Создание:
ln -s файл ссылка
Как отличить ссылки?
-
ls -l
— символьная ссылка отображается как: 👉
имя -> путь
- Жёсткая ссылка никак не выделяется — это "обычный" файл.
Полезные команды 🛠
🔹 Посмотреть inode и количество жёстких ссылок:
ls -li файл
🔹 Узнать путь у символической ссылки:
readlink ссылка
🔹 Найти все файлы с одним inode:
find / -inum НОМЕР
Быстрое сравнение ⚡
Жёсткая ссылка:
- Прямая связь с данными
- Ограничение на файловую систему
- Данные живут до последней ссылки
Символическая ссылка:
- Указатель на путь
- Свободно между разделами
- При удалении оригинала — ссылка битая
👉 @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
Линус Торвальдс сегодня в привычной для себя прямой и резкой манере высказался о файловых системах с поддержкой 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
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Для защиты своего сервера я использую zip-бомбы
Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM.
Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.
https://habr.com/ru/articles/905776/
👉 @i_odmin
Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM.
Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.
https://habr.com/ru/articles/905776/
👉 @i_odmin
❓ 📝 Как эффективно собирать и анализировать логи в распределённых системах?
На открытом уроке «Особенности работы с Elasticsearch: централизованный сбор логов и стек ELK» мы расскажем, как настроить и использовать стек ELK для мониторинга и анализа логов. Это не просто теория — на вебинаре вы получите практические знания, которые помогут настроить систему логирования для реальных проектов.
Что разберем:
- как работает стек ELK (Elasticsearch, Logstash, Kibana) и как его настроить;
- как собирать, обрабатывать и визуализировать логи с разных сервисов;
- как использовать Elasticsearch для диагностики и анализа инцидентов.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
⏰ Встречаемся 6 мая в 20:00 МСК. Участники получат скидку на программу обучения «Инфраструктура высоконагруженных систем».
👉 Для участия зарегистрируйтесь: https://vk.cc/cLtV5b
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
На открытом уроке «Особенности работы с Elasticsearch: централизованный сбор логов и стек ELK» мы расскажем, как настроить и использовать стек ELK для мониторинга и анализа логов. Это не просто теория — на вебинаре вы получите практические знания, которые помогут настроить систему логирования для реальных проектов.
Что разберем:
- как работает стек ELK (Elasticsearch, Logstash, Kibana) и как его настроить;
- как собирать, обрабатывать и визуализировать логи с разных сервисов;
- как использовать Elasticsearch для диагностики и анализа инцидентов.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
⏰ Встречаемся 6 мая в 20:00 МСК. Участники получат скидку на программу обучения «Инфраструктура высоконагруженных систем».
👉 Для участия зарегистрируйтесь: https://vk.cc/cLtV5b
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Софт для VDS-сервера, на который стоит обратить внимание новичкам
Если вы арендовали свой первый VDS-сервер и не знаете, с чего начать, это нормально — поначалу всё может казаться сложным: терминал, настройки, безопасность… Чтобы упростить старт, я собрал список утилит, которые стоит установить в первую очередь. Они помогут настроить сервер под ваши задачи, повысят удобство его использования и защитят от потенциальных угроз.
https://habr.com/ru/companies/ruvds/articles/902596/
👉 @i_odmin
Если вы арендовали свой первый VDS-сервер и не знаете, с чего начать, это нормально — поначалу всё может казаться сложным: терминал, настройки, безопасность… Чтобы упростить старт, я собрал список утилит, которые стоит установить в первую очередь. Они помогут настроить сервер под ваши задачи, повысят удобство его использования и защитят от потенциальных угроз.
https://habr.com/ru/companies/ruvds/articles/902596/
👉 @i_odmin
В Debian (и производных, включая Ubuntu) для ускорения установки пакетов можно использовать утилиту
📌 Что такое
🛠 Как использовать
1. Установите пакет:
2. Используйте
3. Используйте с другими командами:
⚙️ Пример ускорения установки
🔒 Важно: когда не стоит использовать
* В продуктивной системе.
* Когда стабильность данных критична (напр. при установке базы данных).
* Если установка прерывается — есть риск повреждения пакетов.
💡 Расширенное применение
Внутри chroot / контейнеров:
В скриптах сборки:
Использование через
👉 @i_odmin
libeatmydata
, которая значительно снижает время установки за счёт отключения fsync и других дорогостоящих операций записи на диск.📌 Что такое
libeatmydata
libeatmydata
— это LD_PRELOAD-библиотека, которая подменяет функции fsync()
, fdatasync()
, msync()
и другие, превращая их в no-op (то есть они ничего не делают). Это полезно, когда производительность важнее надёжности — например, в CI, сборках образов, chroot'ах или при частой установке/удалении пакетов.🛠 Как использовать
libeatmydata
1. Установите пакет:
sudo apt install eatmydata
2. Используйте
eatmydata
как префикс:
sudo eatmydata apt install some-package
3. Используйте с другими командами:
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 / контейнеров:
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
👉 @i_odmin
📕Архитектура программного обеспечения в 1C для для разработчиков 1C, системных и бизнес-аналитиков и руководителей в IT
Как проработка архитектуры может превратить один и тот же проект из неповоротливой конструкции в элегантное и эффективное решение.
📗 На вебинаре 5 мая в 20:00 разберём:
1. Различные архитектурные стили решений, в том числе – на платформе 1С:Предприятие;
2. Ключевые факторы при проектировании оптимальной архитектуры.
📘 В результате будете знать всё о работе с арихитектурой ПО и сможете грамотно оптимизировать работу с ней в проектах.
👉 Регистрация и подробности о курсе Функциональный архитектор 1С: https://vk.cc/cLxSix
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Как проработка архитектуры может превратить один и тот же проект из неповоротливой конструкции в элегантное и эффективное решение.
📗 На вебинаре 5 мая в 20:00 разберём:
1. Различные архитектурные стили решений, в том числе – на платформе 1С:Предприятие;
2. Ключевые факторы при проектировании оптимальной архитектуры.
📘 В результате будете знать всё о работе с арихитектурой ПО и сможете грамотно оптимизировать работу с ней в проектах.
👉 Регистрация и подробности о курсе Функциональный архитектор 1С: https://vk.cc/cLxSix
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
💻 Полезные команды Linux. Корректное выключение, перезагрузка и выход из системы
🔌 Выключение системы:
> Немедленно завершить работу системы.
> Запланированное выключение с сообщением.
> Альтернатива
🔄 Перезагрузка:
> Стандартная перезагрузка.
> Немедленная перезагрузка.
> Современный способ на системах с systemd.
🚪 Выход из текущей сессии:
> Завершение текущей shell-сессии (для терминала).
> Выход из системы, если вы вошли через консоль.
💡 Быстрые подсказки:
*
*
*
*
👉 @i_odmin
🔌 Выключение системы:
sudo shutdown -h now
> Немедленно завершить работу системы.
sudo shutdown -h +10 "Выключение через 10 минут"
> Запланированное выключение с сообщением.
sudo poweroff
> Альтернатива
shutdown -h now
, завершает работу и отключает питание.🔄 Перезагрузка:
sudo reboot
> Стандартная перезагрузка.
sudo shutdown -r now
> Немедленная перезагрузка.
sudo systemctl reboot
> Современный способ на системах с systemd.
🚪 Выход из текущей сессии:
exit
> Завершение текущей shell-сессии (для терминала).
logout
> Выход из системы, если вы вошли через консоль.
💡 Быстрые подсказки:
*
-h
= halt (выключить)*
-r
= reboot (перезагрузить)*
+минуты
— отложенное действие*
wall
— отправка сообщения всем пользователям👉 @i_odmin
Функциональные возможности
Создание пользователей
Просмотр списка существующих пользователей
Сброс пароля для существующих пользователей
Блокировка / Разблокировка пользовтеля
Просмотр всех заблокированных пользователей
Создание резервной копии домашнего каталога пользователя
Генерирование SSH ключей для пользователя
Повышение пользователя до админа и обратно
Удаление пользователя
Запись всех действий в журнал actions.log
Резервные копии
Скрипт создает каталог резервных копий в папке скрипта и создает архив tar.gz с именем, содержащим - имя пользователя и текущую дату
Генерация SSH ключа
Для генерации используется ssh-keygen, в результате будут отображены сведения о том, куда был сохранен ключ и отображено содержимое публичного ключа:
https://github.com/m0zgen/user-manager
👉 @i_odmin
Please open Telegram to view this post
VIEW IN TELEGRAM
📕MySQL для администраторов, разработчиков, архитекторов и специалистов баз данных
Как грамотно оптимизировать производительность в MySQL и решить возникающие проблемы.
📗 На вебинаре 6 мая в 19:00 разберём:
1. Практические методы оптимизации производительности, диагностику нагрузки и анализ "узких мест" MySQL;
2. Оптимизацию запросов: от простых до сложных.
📘 В результате будете знать всё о настройке ключевых параметров конфигурации, уметь самостоятельно диагностировать и решать проблемы производительности MySQL.
👉 Регистрация и подробности о курсе Базы данных: https://vk.cc/cLzNwa
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Как грамотно оптимизировать производительность в MySQL и решить возникающие проблемы.
📗 На вебинаре 6 мая в 19:00 разберём:
1. Практические методы оптимизации производительности, диагностику нагрузки и анализ "узких мест" MySQL;
2. Оптимизацию запросов: от простых до сложных.
📘 В результате будете знать всё о настройке ключевых параметров конфигурации, уметь самостоятельно диагностировать и решать проблемы производительности MySQL.
👉 Регистрация и подробности о курсе Базы данных: https://vk.cc/cLzNwa
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Команда
Синтаксис:
Примеры использования:
1. Поиск строки в файле:
Ищет строки, содержащие слово "ошибка" в файле
2. Игнор регистра:
Найдёт "ошибка", "Ошибка", "ОШИБКА" и т.д.
3. Рекурсивный поиск по директории:
Ищет слово "TODO" во всех файлах внутри каталога
4. Вывод только совпавших частей (без всей строки):
Ищет URL в потоке ввода.
5. Показать номера строк:
6. Инвертированный поиск (показать строки без совпадений):
7. Использование регулярных выражений (расширенные):
8. Поиск с подсветкой результата:
👉 @i_odmin
grep
используется в Unix/Linux для поиска строк, соответствующих регулярному выражению, в одном или нескольких файлах или потоках ввода.Синтаксис:
grep [опции] ПАТТЕРН [ФАЙЛ...]
Примеры использования:
1. Поиск строки в файле:
grep "ошибка" журнал.txt
Ищет строки, содержащие слово "ошибка" в файле
журнал.txt
.2. Игнор регистра:
grep -i "ошибка" журнал.txt
Найдёт "ошибка", "Ошибка", "ОШИБКА" и т.д.
3. Рекурсивный поиск по директории:
grep -r "TODO" ./src
Ищет слово "TODO" во всех файлах внутри каталога
src
.4. Вывод только совпавших частей (без всей строки):
grep -o "http[s]\?://[^ ]\+"
Ищет URL в потоке ввода.
5. Показать номера строк:
grep -n "ошибка" журнал.txt
6. Инвертированный поиск (показать строки без совпадений):
grep -v "успешно" журнал.txt
7. Использование регулярных выражений (расширенные):
grep -E "foo|bar" файл.txt
8. Поиск с подсветкой результата:
grep --color "pattern" файл.txt
👉 @i_odmin
Подборка хаков с
🔥 1. Поиск в архивированных логах
> Использует
🎯 2. Поиск точного слова, а не подстроки
> Найдёт
🌈 3. Подсветка совпадений
> Цветовая подсветка совпадений, особенно удобно с
🧱 4. Исключение некоторых папок при рекурсивном поиске
> Пропускает указанные директории.
🚦 5. Только совпадения (без всей строки)
> Выдаст только совпавшие фрагменты, например:
🔁 6. Найти строки, идущие ПЕРЕД или ПОСЛЕ совпадения
🧪 7. Поиск по нескольким шаблонам сразу
> Или так, с отдельным шаблонным файлом:
Где
👁 8. Найти только имена файлов с совпадением
> Удобно для массовой рефакторинга или аудита.
🧹 9. Удалить лишний мусор из
> Например, выводим только нужные поля, убираем повторы.
⚙️ 10. Использование grep в пайплайне для live-аналитики
> Реальное время: мониторинг 404 ошибок на веб-сервере.
👉 @i_odmin
grep
для продвинутых🔥 1. Поиск в архивированных логах
zgrep "CRITICAL" /var/log/syslog.3.gz
> Использует
zgrep
, аналог grep
, работающий с .gz
- архивами.🎯 2. Поиск точного слова, а не подстроки
grep -w "main" код.c
> Найдёт
main
, но не domain
или maintain
.🌈 3. Подсветка совпадений
grep --color=always "TODO" файл.txt
> Цветовая подсветка совпадений, особенно удобно с
less -R
.🧱 4. Исключение некоторых папок при рекурсивном поиске
grep -r --exclude-dir={.git,node_modules} "token" .
> Пропускает указанные директории.
🚦 5. Только совпадения (без всей строки)
grep -oE "ID-[0-9]{4}" журнал.log
> Выдаст только совпавшие фрагменты, например:
ID-1234
.🔁 6. Найти строки, идущие ПЕРЕД или ПОСЛЕ совпадения
grep -A3 "panic" системный_лог.txt # 3 строки после
grep -B2 "panic" системный_лог.txt # 2 строки до
grep -C5 "panic" системный_лог.txt # 5 строк до и после
🧪 7. Поиск по нескольким шаблонам сразу
grep -E "ERROR|WARN|FATAL" журнал.log
> Или так, с отдельным шаблонным файлом:
grep -f patterns.txt журнал.log
Где
patterns.txt
содержит:
ERROR
WARN
FATAL
👁 8. Найти только имена файлов с совпадением
grep -rl "import numpy" .
> Удобно для массовой рефакторинга или аудита.
🧹 9. Удалить лишний мусор из
grep
- вывода
grep "Session" журнал.log | cut -d' ' -f2- | sort | uniq
> Например, выводим только нужные поля, убираем повторы.
⚙️ 10. Использование grep в пайплайне для live-аналитики
tail -f /var/log/nginx/access.log | grep --line-buffered "404"
> Реальное время: мониторинг 404 ошибок на веб-сервере.
👉 @i_odmin