Все для системного администратора. По всем вопросам @evgenycarter РКН clck.ru/3KoDXp
Процессы в Linux/Unix
Программа или команда при запуске получает от системы специальный экземпляр — процесс. Этот экземпляр включает все сервисы и ресурсы, которые могут понадобиться процессу во время выполнения.
Каждый раз, когда в Unix/Linux вводится команда, создаётся или запускается новый процесс. Например, когда вводится команда pwd, которая используется для отображения текущего каталога пользователя, запускается отдельный процесс.
Unix/Linux отслеживает процессы с помощью пятизначного идентификатора — это называется идентификатор процесса или PID. Каждый процесс в системе имеет уникальный PID.
Освободившиеся PID могут быть повторно использованы для новых процессов, так как все возможные комбинации PID рано или поздно исчерпываются.
В любой момент времени в системе не может существовать двух процессов с одинаковым PID, поскольку именно по этому идентификатору Unix отслеживает каждый процесс.
https://bookflow.ru/protsessy-v-linux-unix/
👉 @i_odmin
🛡Защита операционных систем — это основа безопасности всей ИТ-инфраструктуры компании. Готовы стать экспертом в этой актуальной области?
Курс «Безопасность операционных систем» от OTUS научит вас защищать ОС от актуальных угроз, работать с логами, конфигурациями и обеспечивать безопасность на разных уровнях. Вы освоите принципы работы с Windows и Linux, научитесь защищать доменные инфраструктуры и бороться с современными видами атак.
В процессе обучения вы получите практические знания, которые помогут вам эффективно решать задачи информационной безопасности, а диплом OTUS, востребованный в крупных компаниях, откроет перед вами новые карьерные возможности.
⚡️Пройдите курс «Безопасность операционных систем», обновите свои знания и навыки. Подайте заявку прямо сейчас и получите скидку на обучение: https://vk.cc/cMl7BNРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Cамые нужные команд SSH
Запускай команды быстро
Чтобы выполнить всего одну удаленную команду, совсем не обязательно подключаться к SSH, вводить команду, а затем отключаться. Можно сделать это сразу. Например, так можно посмотреть заполненность ФС удаленной машины:$ ssh user@host df -h
А так — перезагрузить ее:$ ssh user@host sudo reboot
Составляй списки команд и запускай их разом
Если у тебя есть целый список команд, которые следует выполнить, их можно записать в файл и скормить этот файл SSH:$ ssh user@host "`cat file.txt`"
Редактируй удаленные файлы локальным редактором
Чтобы отредактировать файл на удаленной машине, не требуется заходить на нее и использовать консольный редактор. На самом деле файл можно открыть в твоем любимом текстовом редакторе на локальной машине (gvim заменяем на свой редактор):$ gvim scp://user@host//путь/к/файлу
Копируй содержимое удаленного файла в буфер обмена
Если необходимо скопировать содержимое удаленного файла или вывод команды в буфер обмена, не обязательно выводить его на экран или открывать в текстовом редакторе и копировать вручную. Можно использовать следующую команду:$ ssh user@host cat /путь/к/файлу | xclip
А так можно скопировать вывод команды:$ ssh user@host uname -a | xclip
Сравнивай удаленный и локальный файл без копирования
Похожий прием можно использовать для сравнения двух файлов:$ ssh user@host cat /путь/к/удаленному/файлу | diff /путь/к/лoкальному/файлу -
Работай с удаленными файлами с помощью локального файлового менеджера
Не всегда удобно работать с большим количеством файлов с помощью консольных команд или mc, запущенного на удаленной машине. Но всегда можно подключить любой каталог удаленной машины как сетевой диск. Для этого достаточно установить sshfs:$ sudo apt-get install sshfs
Создать каталог для подключения «сетевого диска»:$ mkdir remote_files
И подключить его:$ sshfs user@host:/home/user ~/remote_files/
Теперь все файлы удаленного каталога /home/user будут видны в каталоге ~/remote_files/ и с ними можно работать, как с обычными.
Копируй ключи быстро
Хоть и копирование публичного ключа на удаленный сервер — задача простая, но она требует выполнения нескольких действий вручную. Если тебя это напpягает, скопировать ключ можно в автоматическом режиме:$ ssh-copy-id user@host
При этом не обязательно копировать основной ключ, с помощью флага -i можно указать любой другой:$ ssh-copy-id -i ~/my_key.pub user@host
Создай постоянное соединение с машиной
Если в течение дня ты часто подключаешься к одной машине, в том числе на несколько минут или секунд (чтобы просто запустить одну команду, например), есть смысл создать с ней постоянное соединение. Твой комп будет держать соединение открытым и использовать его для каждого подключения к машине. Это намного быстрее и экономичнее с точки зрения трафика и нагрузки на процессор.
Добавь следующие строки в ~/.ssh/config:Host host
ControlPath ~/.ssh/master-%r@%h:%p
ControlMaster no
А затем создай соединение:$ ssh -MNf user@host
👉 @i_odmin
Доброе утро 😀
Подписывайтесь на канал 👉@tipsysdmin
RAID-массивы - восстановление данных
Технологии Raid массивов. Что делать, если из raid массива выпал диск?
Сетевое хранилище Synology - восстановление данных
RAID 5 - особенности и восстановление данных
Почему наличие Raid массивов любого уровня не освобождает вас от создания резервного копирования
Сбои Raid - контроллеров
Raid-массивы: ошибки пересборки
источник
👉 @i_odmin
👩💻 Знали ли вы, что можно открывать man-страницы из Vim?- leader K
- Нажмите курсором на любом слове, чтобы открыть man-страницу для этой команды.- :Man command
- Открыть man-страницу этой команды
👉 @i_odmin
🎥 Вебинар: Маршрутизатор на базе Linux: настройка и запуск
📝 На вебинаре вы узнаете:
- Как настроить маршрутизацию в Linux и обеспечить доступ в интернет
- Что нужно для раздачи интернета внутри локальной сети
- Как настроить NAT и базовые правила iptables
- Какие возможности открывает использование Linux в роли роутера
💪 В результате:
- Сможете настроить Linux как маршрутизатор для локальной сети
- Научитесь применять iptables/NFT для управления трафиком и безопасности
- Попробуете настроить NAT и проброс портов
- Поймёте принципы маршрутизации и взаимодействия сетевых интерфейсов в Linux
🎁 Все участники вебинара получат скидку на курс "Administrator Linux. Professional".
👉 Для участия зарегистрируйтесь https://vk.cc/cMcoHD
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Присоединяйтесь к обзору «Нимбиуса» — решения класса Cloud Management Platform
«Нимбиус» — это российская разработка — аналог VMware vRealize и Red Hat CloudForms, которая помогает крупным компаниям создавать частные облака и управлять гибридной инфраструктурой по модели Infrastructure-as-a-Code.
На мероприятии вы узнаете, как платформа повышает эффективность работы команд разработки и эксплуатации ИТ-инфраструктуры, а также увидите последние достижения:
▪️Интеграции с платформами zVirt и SpaceVM
▪️Новые PaaS-сервисы в маркетплейсе — СУБД и Kubernetes
▪️Единый модуль биллинга и аллокации затрат
Что еще в программе?
▪️Обзор трендов на инфраструктурном рынке в РФ
▪️Live-demo функционала продукта, новых фишек
▪️Непридуманные истории внедрения в Enterprise
Когда: 30 мая, 14:00 мск
Формат: онлайн
🔗 Регистрация
🔧 Как работает DNS?
🧠 Что такое DNS?
DNS (Domain Name System) — это "телефонная книга" интернета. Преобразует доменные имена (google.com
) в IP-адреса (142.250.190.14
), понятные компьютерам.
🧩 Основные термины:
* DNS-запрос (query) — обращение клиента за IP адресом.
* Рекурсивный резолвер — сервер, ищущий ответ от имени клиента.
* Рут-серверы — точка входа в DNS (13 логических серверов).
* TLD-серверы — знают, где искать домены в зоне .com
, .ru
и др.
* Авторитетный сервер — содержит финальную информацию о домене.
* Кэширование — хранение ответа, чтобы не запрашивать повторно.
🔄 Пошагово: как разрешается имя домена?
1. 👨💻 Клиент (браузер, утилита и т.п.) спрашивает: example.com
— какой IP?
2. 📡 Запрос уходит на рекурсивный DNS-сервер (обычно у провайдера).
3. 🔍 Рекурсивный сервер проверяет кэш. Нет? Ищем:
* 👉 Рут-сервер → адрес TLD для .com
* 👉 TLD-сервер → адрес авторитетного сервера example.com
* 👉 Авторитетный сервер → отвечает: 93.184.216.34
4. 📦 Рекурсивный сервер кэширует результат.
5. 💬 Клиент получает IP — можно подключаться.
📂 Типы DNS-записей (в зоне):
* A
— IPv4-адрес
* AAAA
— IPv6-адрес
* MX
— почтовый сервер
* CNAME
— алиас другого домена
* NS
— делегирование поддоменов
* TXT
— произвольный текст (например, SPF, DKIM)
🔒 Безопасность:
* DNSSEC
— подпись записей для защиты от подделок.
* DoH
/ DoT
— шифрование DNS-запросов (через HTTPS / TLS).
* Кэш-пойзонинг — атака, при которой подсовывают ложный IP в кэш.
🧰 Полезные команды:
dig example.com
nslookup example.com
host example.com
🛠 +1 контроллер домена: зачем он и как внедрить без ошибок?
🔥 9 июня в 20:00 мск приглашаем на бесплатный вебинар «+1 контроллер домена: зачем он?».
Устойчивость инфраструктуры начинается с отказоустойчивости. А для этого в Active Directory часто нужен не один, а несколько контроллеров.
На вебинаре вы узнаете:
– как дополнительный контроллер помогает обеспечить стабильность,
– что важно учесть при его настройке: роли, службы, репликация,
– как избежать типичных ошибок при внедрении,
– как проверить работоспособность и синхронизацию.
📌 Получите практические рекомендации, которые можно применить в работе сразу после вебинара.
👉 Регистрируйтесь по ссылке: https://vk.cc/cM8AH0
Занятие приурочено к старту курса «Администратор Windows», где вы глубоко изучите архитектуру AD, настройку служб, автоматизацию и безопасность инфраструктуры.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Как мы строим новое облако MWS — рассказываем в технических статьях «под капотом».
Читайте и берите идеи в свои проекты.
➡️ Сетевая телеметрия для облака — от протоколов до продакшена
Про BFD, TWAMP и STAMP, зачем нам push-модель и gNMI, и что происходит, когда Telegraf не дружит с Kafka.
➡️ Как мы наливаем Kubernetes на железо и управляем десятками кластеров
Рассказываем про платформу собственной разработки — Piñata.
➡️ IAM в облаке: от логина до сервисных агентов
RBAC, сервисные учётки, HMAC-ключи — и почему у нас нет «режима бога».
➡️ Как устроен Compute: декларативный API, реконсиляция и немного геймдева
Рассказываем про архитектуру Compute в MWS и наш подход к его разработке.
🔗 Подпишись на облачный хаб MWS
⏩️Там регулярно рассказываем, как строим новое облако с нуля.
🚀 Откройте для себя Infrastructure as Code с Terraform
❓Задумывались, как упростить управление инфраструктурой и сделать её более прозрачной и управляемой? Узнайте, как сделать это с помощью Terraform на открытом вебинаре.
Мы расскажем, как концепция Infrastructure as Code помогает автоматизировать и контролировать процессы, избавляя вас от необходимости вручную управлять виртуальными машинами через интерфейс облачных провайдеров. Один раз описав желаемое состояние инфраструктуры, вы сможете подключать любые облачные провайдеры, когда это будет нужно.
Преимущества очевидны: автоматизация, контроль версий и возможность откатиться к предыдущим состояниям. Понимание этих инструментов — шаг к эффективному управлению вашей инфраструктурой.
🎁Зарегистрируйтесь на вебинар и получите в подарок запись полезного эфира "Ansible: быстрый старт". Это отличная возможность узнать, как использовать Terraform и Ansible для решения ваших задач.
👉 Регистрация открыта: https://vk.cc/cM8Adb
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
📕 Распределение косвенные расходы в 1С:ERP для разработчиков 1C, консультантов 1C и аналитиков
На открытом уроке 21 мая в 19:00 мск мы погрузимся в тонкости методики сложного распределения косвенных расходов в 1С:ERP:
📗 На вебинаре разберём:
1. Всё о основных типах расходов в 1С:ERP и методиках работы с ними;
2. Реальные примеры использования стандартных механизмов распределения затрат и методика доработки системы для распределения затрат по нетиповым алгоритмам;
📘 В результате на практике разреберетесь в механизмах учета затрат и узнаете как можно с помощью простых доработок реализовать сложные механизмы распределения косвенных расходов.
👉 Регистрация и подробности о курсе Бизнес-аналитик 1С: https://vk.cc/cM6Tow
Все участники открытого урока получат скидку на курс "Бизнес-аналитик 1С"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🔁 Как перезапускать сервис только если он завис?
Иногда не хочется перезапускать сервис "на всякий случай", но вот если он реально завис — другое дело. Вот простой способ проверять, активен ли сервис, и перезапускать его при зависании:
#!/bin/bash
SERVICE="nginx"
if ! systemctl is-active --quiet "$SERVICE"; then
echo "$(date): $SERVICE не активен, пробую перезапустить..." >> /var/log/service_monitor.log
systemctl restart "$SERVICE"
else
echo "$(date): $SERVICE работает нормально" >> /var/log/service_monitor.log
fi
*/5 * * * * /usr/local/bin/check_nginx.sh
chmod +x /usr/local/bin/check_nginx.sh
nginx
на любой другой системный сервис.Http logs viewer 💪
Онлайн-инструмент для визуализации логов Apache. Он позволяет:
* Загружать и анализировать логи Apache в реальном времени.
* Получать сводную информацию о трафике, ошибках, IP-адресах и запросах.
* Фильтровать и искать по логам по дате, коду ответа, URL и другим параметрам.
* Использовать инструмент прямо из браузера, без необходимости установки.
Подходит для быстрого анализа логов при отладке или расследовании инцидентов.
https://www.apacheviewer.com/
👉 @i_odmin
Аппаратное уничтожение данных на жёстком диске
Ни для кого не секрет, что для полного и безвозвратного удаления информации с цифрового носителя просто выбрать файл и нажать на клавишу «del» или воспользоваться командой «rm» недостаточно. Сделать так, чтобы умные и дотошные парни не смогли восстановить удаленные файлы с вашего носителя не так уж и просто, и порой требует элегантных решений.
Сегодня попробуем разобраться, как уничтожить данные не только окончательно, но и с чувством стиля за то время, пока добрые сотрудники ФСБ, оклеветанные бизнесмены и просто оскорбленные вашим чувством юмора люди тестируют вашу входную дверь на прочность.
Что же можно сделать для того чтобы не просыпаться посреди ночи в холодном поту, переживая за сохранность личной или корпоративной информации – читаем.
https://habr.com/ru/articles/446198/
👉 @i_odmin
🔥 Защита от «нежелательных» IP: ipset + nftables 🔥
Часто сталкиваетесь с ботами, сканерами или DDoS-атакой? Вместо громоздких правил вiptables — сочетание ipset и nftables позволит быстро фильтровать тысячи адресов.
Шаг 1. Установить необходимые пакеты
sudo apt update
sudo apt install -y ipset nftables
sudo ipset create blacklist hash:net family inet timeout 86400
hash:net
— хэш-таблица сетейtimeout 86400
— автоматическая очистка через 24 ч
sudo ipset add blacklist 203.0.113.0/24
sudo ipset add blacklist 198.51.100.23
sudo nft add table inet filter
sudo nft 'add chain inet filter input { type filter hook input priority 0 \; }'
sudo nft 'add rule inet filter input ip saddr @blacklist drop'
@blacklist
— ссылка на ваш ipsetdrop
— молча отбросить пакеты
sudo ipset save blacklist > /etc/ipset-blacklist.conf
# В /etc/rc.local (до exit 0) добавьте:
ipset restore < /etc/ipset-blacklist.conf
⭐️🚀 Хотите прокачаться в работе с Linux? Пора проверить, готовы ли вы к следующему шагу!
Пройдите короткое тестирование и узнайте, готовы ли вы к повышению квалификации на курсе «Administrator Linux. Professional». Мы обучаем продвинутым навыкам администрирования Linux: от установки и настройки ОС до оптимизации работы и управления безопасностью.
🎁 Успешное прохождение вступительного теста — это ваш пропуск к записям открытых уроков и скидке на большое обучение.
❗️Доступ к записям откроется для тех кто успешно пройдет тест. Уроки находятся на лендинге курса.
👉 Оцените свой уровень знаний прямо сейчас: https://vk.cc/cMjWri
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🔥 9 полезных функций Far Manager 🔥
1️⃣ Режимы отображения
Меняйте ширину и количество столбцов на активной панели интерфейса:
* Ctrl + 1
— краткий режим (3 узких столбца)
* Ctrl + 2
— стандартный (2 средних)
* Ctrl + 3
— полный (1 широкий + 3 узких со служебной инфой)
* Ctrl + 4
— широкий (1 широкий + 1 узкий со служебной инфой)
* Ctrl + 5
— детальный (максимально широкий + доп. столбцы)
2️⃣ Сортировка элементов
Упорядочивайте файлы и папки на активной панели:
* Ctrl + F3
— по имени
* Ctrl + F4
— по расширению
* Ctrl + F5
— по дате изменения
* Ctrl + F6
— по размеру
* Ctrl + F8
— по дате создания
* Ctrl + F12
— меню сортировки
3️⃣ Просмотр размера
Узнавайте размер выделенного файла или папки:
* Нажмите F3
— в столбце Size или внизу панели
* Выделение одного: Shift
+ стрелка вверх/вниз
* Массовое: Shift
+ стрелка влево/вправо
4️⃣ Временная панель
Работайте сразу с элементами из разных папок:
* Откройте «Временную панель» F11
→ Temporary Panel
* Перетаскивайте файлы мышью или добавляйте результаты поиска (Alt + F7
) → Panel
* Групповые операции без перемещения исходных файлов
5️⃣ Фильтрация по типу
Скрывайте ненужные расширения:
* Ctrl + I
→ выберите расширение → Пробел
(появится «+») → Enter
* Чтобы вернуть все — снова Ctrl + I
и убрать «+»
6️⃣ Список процессов
Следите за активными процессами прямо в Far:
* Откройте выбор диска Alt + F1/F2
→ нажмите 0
* Ctrl + F6
— сортировка по размеру
* F8
— завершить процесс
* F3
— подробности
7️⃣ Навигация по папкам
Мгновенный доступ к дискам и истории:
* Ctrl + \
— открыть корень текущего диска
* Alt + F12
— список ранее открытых папок
8️⃣ Сравнение папок
Проверяйте идентичность двух каталогов:
* Откройте папки на левой и правой панелях
* Нажмите F11
→ Advanced Compare → задайте параметры → ОК
* Far подсветит несоответствия и покажет размеры
9️⃣ Запись макросов
Автоматизируйте рутинные действия:
* Shift + Ctrl + .
— начать/остановить запись
* Выполните нужные шаги, затем назначьте макрос на клавишу (например, J
)
* С этого момента одним нажатием — ваши действия повторятся
👉 @i_odmin
Как обеспечить надежную ИБ-защиту?
С каждым годом количество киберинцидентов стремительно растет. Атакам подвергаются как коммерческие организации, так и госструктуры. Одним из ключевых элементов информационной безопасности становится межсетевой экран.
ИКС ФСТЭК — сертифицированный российский межсетевой экран от компании «А-Реал Консалтинг».
Сертификат ФСТЭК №4832 от 02.08.2024.
Профили защиты:
🔹Межсетевой экран типа «А» 4 класса
🔹Межсетевой экран типа «Б» 4 класса
🔹СОВ уровня сети 4 класса
Соответствие требованиям:
🔸Федеральные законы: №114-ФЗ, №139-ФЗ, №436-ФЗ, №152-ФЗ, №187-ФЗ
🔸Указ Президента №250
🔸Приказы ФСТЭК: №17, №21, №239
Функциональные возможности:
1. Защита сети и серверов
2. Контентная фильтрация
3. Управление трафиком и маршрутизация
4. Настройка VPN и объединение филиалов
5. Контроль доступа и отчеты по пользователям
Пропускная способность (до 300 пользователей):
▫️Межсетевой экран: 6 Гбит/сек
▫️Инспектирование SSL: 2,1 Гбит/сек
▫️IPS: 1,7 Гбит/сек
▫️Совместная работа всех модулей: 1,2 Гбит/сек
Хотите протестировать?
Оставьте заявку на сайте вендора.
Реклама. ООО «А-Реал Консалтинг», ИНН 7606047112, ERID: 2VtzquyRiB7
👋 Привет, админы!
Недавно прилетел мне интересный кейс: пользователи массово жаловались на медленный вход в систему. Крутилось приветствие по 3-5 минут. Оказалось, виновата политика групповых дисков, которая грузилась слишком долго.
🔍 Решение оказалось простым — нужно быстро найти проблемные политики. Вот удобный скрипт на PowerShell для проверки времени обработки GPO при входе пользователя:
Get-WinEvent -LogName "Microsoft-Windows-GroupPolicy/Operational" |
Where-Object { $_.Id -eq 4016 } |
Select-Object TimeCreated, @{n='Время загрузки GPO (сек)';e={$_.Properties[0].Value}}, @{n='Название GPO';e={$_.Properties[1].Value}} |
Sort-Object 'Время загрузки GPO (сек)' -Descending | Select-Object -First 10
RAID массивы. Уровни 0 1 5 6 10. Что такое RAID и как он работает
00:00 Вступление
00:46 RAID 0
02:42 RAID 1
04:40 RAID 5
07:59 RAID 6
09:25 RAID 10
11:32 Сравнение уровней RAID
👉 @i_odmin
🗑️ Bash-совет дня: safe_rm — «корзина» для удаляемых файлов
Сколько раз вы случайно удаляли важный конфиг? Давайте сделаем rm
более дружелюбным — вместо мгновенного уничтожения файлы будут складываться в «корзину» и автоматически очищаться спустя 30 дней.
#!/usr/bin/env bash
# safe_rm — перемещает удаляемые файлы в локальную «корзину»
TRASH_DIR="$HOME/.local/share/Trash/files" # куда складываем
mkdir -p "$TRASH_DIR"
stamp=$(date +%Y-%m-%d_%H-%M-%S)
for item in "$@"; do
if [[ ! -e $item ]]; then
printf '⚠️ %s: no such file or directory\n' "$item" >&2
continue
fi
mv -- "$item" "$TRASH_DIR/$(basename "$item")_$stamp"
done
# авто-очистка файлов, которым больше 30 дней
find "$TRASH_DIR" -type f -mtime +30 -delete 2>/dev/null
sudo install -m 755 safe_rm /usr/local/bin/
echo "alias rm='safe_rm'" >> ~/.bashrc && source ~/.bashrc
touch important.cfg
rm important.cfg
ls ~/.local/share/Trash/files # Файл на месте 🎉
-mtime +30
на нужное количество дней.find
позволяют тоньше выбирать, что чистить (например, только логи *_$(date +%Y-%m-*)
).🔧 Шпаргалка для админов: BASH
vs ZSH
vs FISH
🧠 Общее понимание
Shell — интерфейс между пользователем и ОС. BASH, ZSH и FISH — популярные оболочки с разной философией.
🐚 BASH (Bourne Again Shell)
✅ Плюсы:
* 📦 По умолчанию в большинстве дистрибутивов (Linux, macOS)
* 🛠️ Огромное количество документации и скриптов
* 🧩 Совместим с POSIX-скриптами
❌ Минусы:
* ⚙️ Нужны костыли для автодополнения и подсветки
* 🐌 Медленнее по сравнению с ZSH в интерактивной работе
🌀 ZSH (Z Shell)
✅ Плюсы:
* 🔮 Умное автодополнение
* 🎨 Темы и плагины через oh-my-zsh
или zinit
* 📝 Поддержка глобального алиасинга (GREP_OPTIONS='--color=auto'
и т.п.)
* 🧠 Автоматическое исправление ошибок
❌ Минусы:
* 🔧 Требует настройки (без oh-my-zsh
— скучно)
* 🧱 Чуть медленнее запускается, особенно с большим числом плагинов
🐟 FISH (Friendly Interactive SHell)
✅ Плюсы:
* ✨ Подсветка синтаксиса «из коробки»
* 🧠 Автодополнение на основе истории и манов
* 📘 Читаемый синтаксис (пример: set var value
вместо var=value
)
* 🛞 Веб-интерфейс для конфигурации (fish_config
)
❌ Минусы:
* 🚫 Не POSIX-совместим (bash/zsh-скрипты могут не работать)
* 📉 Меньше плагинов и фреймворков
🔚 Итог
* 🏁 Тебе нужен универсальный shell? — бери BASH
* 🚀 Хочешь мощный интерактив? — ставь ZSH + oh-my-zsh
* 🐠 Любишь современный UX и не паришься о POSIX? — твой выбор FISH
👉 @i_odmin
🚀 zsh + oh-my-zsh — терминал, который хочется открывать
Если bash
— это рабочая лошадка, то zsh
с oh-my-zsh
— это спорткар. Быстрее, умнее, гибче. И, главное, красивее.
🎯 Что такое zsh
?
Z Shell — продвинутый shell с мощными фичами:
✅ автодополнение команд и путей
✅ подсветка синтаксиса
✅ автопредложение аргументов
✅ глобальные алиасы
✅ и многое другое
💎 Что такое oh-my-zsh
?
Это фреймворк для zsh
с кучей:
✨ тем оформления
🔧 плагинов (git, docker, kubectl и т.д.)
🛠️ удобных алиасов и функций по умолчанию
🧰 Установка:
1. Установи zsh
(если ещё нет):
sudo apt install zsh
zsh
shell’ом по умолчанию:
chsh -s $(which zsh)
oh-my-zsh
:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
agnoster
— статус Git + стрелочкиpowerlevel10k
— 🔥 топ по кастомизации и красоте
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git \
${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
~/.zshrc
:
ZSH_THEME="powerlevel10k/powerlevel10k"
source ~/.zshrc
.zshrc
:
plugins=(
git
docker
z
sudo
history-substring-search
)
gcmsg "Initial commit" # git commit -m
gst # git status
please apt install htop # sudo автоматически
.zshrc
:
plugins=(... zsh-autosuggestions zsh-syntax-highlighting)
git clone https://github.com/zsh-users/zsh-autosuggestions \
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting \
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
source ~/.zshrc
⚡ Алиасы в терминале — сокращай и побеждай
Тысячи раз печатаешь одно и то же? Пора использовать алиасы. Это короткие имена для длинных команд. Настроил — и забыл.
🛠️ Что такое alias?
Алиас — это сокращение для команды. Например:
alias gs='git status'
gs
вместо git status
. Быстрее, чище, удобнее.
alias ll='ls -la'
.bashrc
):
echo "alias ll='ls -la'" >> ~/.bashrc
source ~/.bashrc
ls
:
alias ls='ls --color=auto'
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
apt
:
alias update='sudo apt update && sudo apt upgrade -y'
alias install='sudo apt install'
alias remove='sudo apt remove'
alias ports='netstat -tulanp'
alias ipinfo='curl ifconfig.me'
alias ..='cd ..'
alias ...='cd ../..'
alias proj='cd ~/projects'
alias gs='git status'
alias gc='git commit -m'
alias gp='git push'
alias gl='git log --oneline --graph --all'
alias gco='git checkout'
mkcd () {
mkdir -p "$1" && cd "$1"
}
mkcd new_folder
sh
или скриптах)🎯 Как ускорить навигацию в командной строке
🔁 Повторный запуск под root — sudo !!
user@host: cat /var/log/messages
cat /var/log/messages: Permission denied.
❌Как не надо: Вверх. Влево. Влево. Влево. …. sudo Enter. Рррр.
✅Как надо: sudo !!
🔂 Повтор последнего аргумента — Alt + .
Вы захотели еще раз воспользоваться только что написанным аргументом? Например, созданной директорией?
❌Как не надо: mkdir MyNewDirectory; cd MyNewDirectory
✅Как надо:
mkdir MyNewDirectory
cd <Alt+.>
🔍 Поиск команды в истории — Ctrl + R
Какую же команду я только что запускал? Вверх. Вверх. Вверх. Вверх. О, вот и она!
Снова и снова вам приходится копаться в истории, ведь вы не знаете более подходящих альтернатив. Но что, если я скажу вам о том, что есть… поиск?
❌Как не надо: Вверх. Вверх. Вверх. Enter.
✅Как надо: Ctrl+R
Просто нажмите Ctrl+R и введите первые буквы нужной команды. Если поиск не выдал нужную команду сразу, то нажмите Ctrl+R еще раз. Повторное нажатие используется для прокрутки результатов. Ниже приведен поиск для cat.
(reverse-i-search)cat: sudo cat /var/log/messages
🏠 Домашняя директория — cd
Вы не на шутку удивитесь, узнав, сколько людей не знают этого способа! cd. Да, так просто. Без лишних аргументов вы сразу попадете в начальную директорию.
🔙 Назад в прошлую директорию — cd -
Иногда простой способ — самый лучший. Допустим, вы были в директории /var/www/foo, а теперь оказались в /etc . Простая команда cd — вернет вас обратно в /var/www/foo .
❌Как не надо: cd /var/www/foo
✅Как надо: cd -
🎭 Фоновый режим, передний план и контроль задач
Возможно, вам потребуется какое-то время, чтобы привыкнуть, но оно того стоит. Допустим, вы редактируете файл в vim (вы же не будете этого делать в nano, да?!). И вот вам вдруг захотелось что-то найти в директории /var/www/html. Конечно же, вы можете выйти из vim, перейти в нужную директорию, а потом вдруг решить, что неплохо было бы вернуться к редактированию. Есть и другой вариант — перевести vim в фоновый режим и вернуться к нему позже.
Напишите: Ctrl+Z. Эта комбинация переводит все текущие задачи с переднего плана в фоновый режим. Полезно как минимум для: less, cat, man, vim и т.д.
«И куда же отправится моя активная задача?» — спросите вы. Напишите jobs и сами узнаете.
user@host: jobs
[1] Stopped vim
Супер. Теперь можно заняться чем-то другим. А как только вы решите вернуться к задаче, напишите fg. Эта команда возвращает фоновую задачу (vim) на передний план. Обратите внимание, что фоновые процессы приостанавливаются. Поэтому если в файле вы выполняли что-то из разряда tail, то для завершения команды потребуется какое-то время. Если же в фоновом режиме запущено несколько задач, то напишите fg 3 , где 3 — это номер задачи для возобновления. Увидеть список задач можно по команде jobs.
👉 @i_odmin
Работа с сетью
Отладка Linux# ethtool eth0
- Показать Ethernet статус # ethtool -s eth0 speed 100 duplex full
- Принудительная установка режима 100Mbit Full duplex# ethtool -s eth0 autoneg off
- Отключить автоопределение# ethtool -p eth1
- Мигать индикатором сетевой карты - если поддерживается# ip link show
- Список сетевых интерфейсов в Linux (подобна ifconfig)# ip link set eth0 up
- Активировать сетевой интерфейс (или отключить). Аналог "ifconfig eth0 up"# ip addr show
- Список всех IP адресов в Linux ( аналог ifconfig)# ip neigh show
- Тоже что и arp -a
Печать таблицы маршрутизации# route -n
# Linux или используйте "ip route"# netstat -rn
# Linux, BSD и UNIX# route print
# Windows
Используйте "add -p" что-бы сделать маршрут постоянным.Настройка дополнительных IP адресов Linux# ifconfig eth0 192.168.50.254 netmask 255.255.255.0
# Первый IP адрес# ifconfig eth0:0 192.168.51.254 netmask 255.255.255.0
# Второй IP адрес# ip addr add 192.168.50.254/24 dev eth0
# Эквивалентные команды для ip# ip addr add 192.168.51.254/24 dev eth0 label eth0:1
https://telegra.ph/Rabota-s-setyu-05-20
👉 @i_odmin
⚠️ Как настроить Nginx и Angie для стабильной и быстрой работы при большом количестве запросов?
👉 Приглашаем на вебинар: Оптимизация Nginx и Angie под высокие нагрузки
На вебинаре вы узнаете:
- Как оптимизировать системные параметры для повышения производительности
- Как правильно настроить TLS и сократить накладные расходы на шифрование
- Какие возможности по кэшированию есть у Nginx и Angie и как их эффективно использовать
- Как измерять и анализировать клиентскую и серверную производительность
В результате вебинара вы:
- Научитесь выявлять и настраивать ключевые параметры, влияющие на производительность
- Сможете оптимизировать конфигурацию Nginx и Angie под конкретные сценарии нагрузки
- Попробуете применять техники кэширования и настройки TLS для снижения нагрузки
- Поймёте, как оценивать эффективность настройки и устранять узкие места
Все участники получат скидку на большое обучение «Инфраструктура высоконагруженных систем».
👉 Для участия зарегистрируйтесь: https://vk.cc/cM6Bil
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
От «ламповых» серверов до облачных гигантов: 35 лет истории коммерческого хостинга в одной статье
В начале 90-х интернетом пользовались единицы, а хостинг был скорее экзотикой — сайты хранились на университетских или «домашних» серверах энтузиастов. Первые коммерческие дата-центры появились примерно к середине десятилетия, а к его концу уже возникли техногиганты. За следующие 35 лет отрасль выросла в глобальную экосистему со своими правилами и локальными историями. Вспомним, как всё развивалось — в мире и у нас, и чем это в итоге обернулось. Напомним, что технологии хостинга мы рассмотрели ранее.
https://habr.com/ru/companies/ruvds/articles/907358/
👉 @i_odmin