Admin Guides | Сисадмин
11.4K subscribers
1.24K photos
20 videos
34 files
561 links
Обучающий канал по ОС Linux & Windows для начинающих и действующих администраторов.

Админ, реклама: @Ak_Mihail
Биржа: https://telega.in/c/admguides

РКН: https://kurl.ru/nQejS
Download Telegram
Процесс-зомби и процесс-сирота: в чем разница?

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

Оба эти состояния связаны с тем, как операционная система управляет завершением и контролем за процессами.

Что такое процесс-зомби?

Процесс-зомби — это дочерний процесс, который завершил своё выполнение, но остаётся в списке процессов операционной системы.

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


Зомби-процесс не активен, он не выполняет никаких операций, но его запись остаётся в таблице процессов до тех пор, пока родительский процесс не прочтёт его статус завершения.

Особенности процесса-зомби:

Невозможно убить: Зомби-процесс уже завершился, и поэтому его нельзя "убить" стандартными способами. Однако можно завершить или перезапустить родительский процесс, что автоматически приведёт к удалению зомби.
Идентификация зомби: Чтобы найти зомби-процессы, можно использовать команду ps ajx | grep -w Z. В колонке PPID будет указан PID родительского процесса.
Удаление зомби: Для удаления зомби нужно завершить родительский процесс командой kill -9 <PID родительского процесса>.

Что такое процесс-сирота?

Процесс-сирота — это процесс, у которого завершился родительский процесс, оставив его без "опекуна".

Когда родительский процесс завершается, его оставшиеся процессы-сироты передаются на контроль процессу init (с PID 1), который становится их новым родителем.

Особенности процесса-сироты:

Активен: Процесс-сирота продолжает свою работу после завершения родительского процесса и под контролем init.

Идентификация сирот: Процессы-сироты можно обнаружить с помощью утилит top или htop, отслеживая процессы с PPID равным 1.

Использование ресурсов: В отличие от зомби, процессы-сироты продолжают использовать системные ресурсы и могут потреблять значительное количество оперативной памяти и процессорного времени.

Как самостоятельно сделать зомби-процесс?

Создать процесс-зомби можно искусственно, если заставить родительский процесс игнорировать завершение своего дочернего процесса.

В реальной системе это может произойти из-за ошибки в коде или неправильного управления процессами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23
Опрос: IT-инфраструктура российских компаний на 75% состоит из зарубежных решений

Согласно результатам опроса, проведенного интегратором «К2Тех» и аудиторско-консалтинговой компанией «Технологии Доверия» (ТеДо), IT-инфраструктура российских компаний в среднем на 75% остается зависимой от зарубежных решений.

Опрос охватил более 100 IT-директоров и руководителей IT-инфраструктуры компаний с годовой выручкой от 2 млрд рублей.

Ключевые выводы

Импортозамещение: В среднем, российские продукты занимают лишь 25% в IT-инфраструктуре компаний-респондентов.

Госсектор лидирует: В государственных организациях 43% IT-инфраструктуры составляют отечественные решения.

Промышленность и ТЭК: Эти сектора смогли заместить 31% своих IT-решений на отечественные продукты.

Ретейл и АПК: В этих отраслях на российские решения пришлось только 21%, преимущественно в сегменте системного ПО.

Сложности вендорозамещения

По словам опрошенных, замена западных IT-решений на отечественные затруднена тем, что инфраструктура строилась десятилетиями на основе западных технологий.

В результате переход на новые решения может занять годы.

Только 7% компаний находятся на финальной стадии перехода на отечественные продукты, а 25% компаний еще только внедряют новые решения.

Переход на китайские решения

30% респондентов сообщили о внедрении китайских продуктов в свою IT-инфраструктуру, особенно в сферах телекоммуникаций, транспорта и логистики.

Проблемы с отечественными решениями

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

Специалист также указывает на отставание российских систем хранения данных и полное отсутствие отечественных ленточных библиотек, что вынуждает заказчиков обращаться к азиатским продуктам или к решениям, поставляемым параллельным импортом.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁13👍7🤔2
Это просто невозможно! 🤣
Please open Telegram to view this post
VIEW IN TELEGRAM
😁30👍2😭1
Arduino vs Raspberry Pi – что выбрать?

Одноплатные компьютеры стали невероятно популярными благодаря их применению в разработке и обучении.

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

Среди одноплатных компьютеров Arduino и Raspberry Pi занимают лидирующие позиции. Оба устройства популярны среди студентов, инженеров и любителей, но выбрать между ними непросто.

В этом посте мы рассмотрим их основные различия, чтобы помочь вам сделать правильный выбор для вашего проекта.


💬Raspberry Pi — это мини-компьютер размером с кредитную карту, который включает в себя оперативную память, процессор и графический модуль.

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

💬Arduino — это одноплатный микроконтроллер с тремя основными компонентами: аппаратной платформой, языком программирования Arduino и интегрированной средой разработки (IDE).

В отличие от Raspberry Pi, Arduino не работает под управлением операционной системы. Основное предназначение платы — взаимодействие с внешними устройствами и датчиками, что делает ее идеальной для простых проектов.

Сравнение

Кривая обучения: Arduino проще в освоении, особенно для новичков, благодаря низкому барьеру для входа. Raspberry Pi требует больше знаний в области Unix/Linux, но предлагает более широкие возможности для опытных пользователей.

Простота использования: Arduino легко взаимодействует с датчиками и другими компонентами с минимальными затратами времени на настройку. Raspberry Pi, обладая большей функциональностью, требует больше времени и усилий для настройки простых задач.

Языки программирования: Raspberry Pi поддерживает широкий спектр языков программирования, включая Python, JavaScript и C++. Arduino использует свой язык, схожий с C++, что делает его подходящим для менее сложных проектов.

Сетевые возможности: Raspberry Pi обладает встроенными модулями для подключения к сети через Ethernet, Wi-Fi и Bluetooth. Arduino требует дополнительных модулей для сетевого подключения, что может усложнить проект.

Скорость процессора: Raspberry Pi значительно превосходит Arduino по скорости процессора и объему оперативной памяти. Однако для задач, не требующих высокой производительности, Arduino будет более чем достаточно.

Потребляемая мощность: Arduino потребляет меньше энергии и может работать от батареек, что делает его идеальным для автономных проектов. Raspberry Pi требует постоянного источника питания, но предлагает большую вычислительную мощность.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16😁1🤔1🤨1
Microsoft выпустила Windows 11 24H2 для ПК без Copilot+

Microsoft начала развертывать обновление Windows 11 версии 24H2 для ПК без функции Copilot+. 


Пользователи могут протестировать сборку 26100.863 (обновление KB5039239) на таких системах, если производители уже предустановили эту версию.

Основные изменения:

Исправлена проблема с максимальной громкостью Bluetooth-устройств.
Решена ошибка с BattlEye на устройствах Arm64.
Copilot теперь закреплен на панели задач как приложение.
Обновление командной строки WMIC: FoD по умолчанию отключено для новых установок, но включено при обновлении до 24H2.
File Explorer теперь помечает файлы из ненадежных источников, что влияет на временные метки.

Как отметил Брэндон Леблан из Windows Insider Program, ПК без Copilot+ могут получать регулярные обновления после чистой установки 24H2.

Однако устройства на версии 23H2 пока не могут обновиться до 24H2.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
Команда fstrim в Linux

Команда fstrim предназначена для оптимизации производительности SSD и других типов хранилищ, поддерживающих функцию TRIM.

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

Основные функции fstrim

Тримминг файловой системы:

sudo fstrim /


Эта команда выполняет TRIM для файловой системы, смонтированной в корневом каталоге (/). Это освободит неиспользуемые блоки данных, что улучшит общую производительность SSD.

Тримминг конкретного раздела:

sudo fstrim /mnt/data


Замените /mnt/data на точку монтирования нужного раздела. Это освободит неиспользуемые блоки в указанном разделе.

Тримминг всех доступных файловых систем:

sudo fstrim --all


Выполнит TRIM для всех файловых систем, поддерживающих эту операцию, которые подключены к системе.

Зачем использовать fstrim

Улучшение производительности: Регулярное выполнение TRIM помогает поддерживать скорость работы SSD на оптимальном уровне.
Увеличение срока службы: Помогает равномерно распределять записи данных по ячейкам SSD, что может продлить его срок службы.
Управление свободным пространством: Снижает фрагментацию и повышает эффективность использования дискового пространства.

Инструмент fstrim обычно используется в качестве части регулярного обслуживания системы, чтобы обеспечить стабильную и быструю работу SSD.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔11👍61
💬 Вопрос на собеседовании для сисадмина

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Какие состояния процессов существуют? Что значит состояние процесса D?

Ответ: R (running or runnable) - Выполняется или готов к выполнению
D (uninterruptible sleep) - Ожидает записи на диск
S (interruptible sleep) - Неактивен (< 20 s)
T (stopped by job control signal) - Остановлен или трассируется отладчиком
Z (zombie) - зомби
W (paging (not valid since the 2.6.xx kernel)) - Процесс выгружен на диск
< - Процесс имеет повышенный приоритет nice
N - Процесс имеет пониженный приоритет nice
L (locked) - Некоторые страницы блокированы в ядре
s - Процесс является лидеров сеанса
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔25👍101
Релиз композитного сервера Weston 14.0

В начале сентября 2024 года состоялся релиз композитного сервера Weston 14.0. 


Этот проект содействует развитию поддержки протокола Wayland в пользовательских окружениях, таких как Enlightenment, GNOME, KDE и других.

Разработка Weston направлена на предоставление качественной кодовой базы и рабочих примеров для использования Wayland в десктоп-окружениях и встраиваемых решениях, включая автомобильные системы, смартфоны и телевизоры.

Код проекта распространяется под лицензией MIT.

Основные изменения в Weston 14.0:

Поддержка аппаратного наложения графических элементов в бэкенде DRM, добавлен режим атомарного асинхронного переключения между буферами.
Настройка 'mirror-of' для зеркалирования вывода.
Поддержка DmaBuf в бэкенде Pipewire.
Клиент simple-egl получил поддержку просвечивающих поверхностей с 16-битным цветом и сжатие поверхностей.
Поддержка FreeRDP 3.x в бэкенде RDP.
В бэкенде VNC возможность отключения TLS и аутентификация по паролю.
Поддержка color-management и ограничение области перемещения указателя в libweston.
Поддержка захвата OpenGL ES 3 и OpenGL ES 2 в асинхронном режиме, а также изменение цвета объектов в gl-renderer.
👍10🔥1
7 полезных команд в Linux

Рассмотрим еще 7 команд для эффективной работы в системе Linux.

tracepath — отображает маршрут по сетевым узлам с MTU (сокр. от «Maximum Transmission Unit»).

unalias — удаление псевдонима.

unexpand — преобразует каждый пробел в табуляцию, записывая результат в стандартный вывод.

xargs — преобразует входные данные, полученные от стандартного ввода, в аргументы команды.

yppasswd  изменение пароля базы данных NIS.

zipcloack  зашифровать .zip-файл.

zipsplit — объединение нескольких .zip-файлов.
Please open Telegram to view this post
VIEW IN TELEGRAM
💊8👍4🔥4🤨1
😁
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27😁5👍3
Установка пакетов с зависимостями

Иногда при установке пакета возникают проблемы с зависимостями.

В таких случаях рекомендуется использовать утилиту yum или dnf, которые автоматически решают зависимые пакеты.

Однако, если хочешь использовать только RPM, ты можешь скачать все нужные зависимости вручную.

Для установки пакета с зависимостями:

sudo rpm -ivh --aid some-package.rpm

Флаг --aid (auto-install dependencies) пытается автоматически установить необходимые зависимости, если они найдены на системе.

Переустановка пакета

Бывает, что установленный пакет по каким-то причинам повреждён. В этом случае можно выполнить его переустановку:

sudo rpm -ivh --replacepkgs GeoIP-1.5.0-11.el7.x86_64.rpm

Команда переустановит уже имеющийся на системе пакет, что может помочь восстановить файлы, если они были удалены или повреждены.

Верификация пакетов

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

sudo rpm -V GeoIP

Вывод команды может содержать символы, показывающие изменения, например:

5 — контрольная сумма изменилась,
S — изменился размер файла,
T — изменена временная метка,
M — изменённые права доступа,
U — изменён владелец файла,
G — изменена группа файла,
L — файл является символической ссылкой.

Получение информации о пакетах

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

sudo rpm -qi GeoIP

Эта команда также выдаст информацию о поставщике пакета и дистрибьюторе.

Просмотр зависимостей пакета

Если хочешь узнать, какие зависимости имеет конкретный пакет, это можно сделать с помощью команды:

sudo rpm -qR GeoIP

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

Экспорт списка установленных пакетов

Может возникнуть ситуация, когда нужно сделать резервную копию списка всех установленных на системе пакетов. Для этого можно выполнить команду:

sudo rpm -qa > installed_packages_list.txt

Файл installed_packages_list.txt будет содержать все установленные пакеты, что полезно для последующей переустановки системы или миграции.

Удаление пакета с сохранением конфигурационных файлов

Если необходимо удалить пакет, но при этом сохранить все его конфигурационные файлы, используется команда:

sudo rpm -e --nodeps --justdb GeoIP

Опция --justdb удаляет пакет только из базы данных RPM, оставляя его файлы нетронутыми.

Запрос данных о файле

Если нужно узнать, к какому пакету принадлежит конкретный файл, используется команда:

sudo rpm -qf /usr/lib64/libGeoIP.so.1.5.0

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

Сравнение версий пакетов

Если нужно узнать, какая версия пакета установлена, и сравнить её с другой версией, можно использовать команду:

sudo rpmdev-vercmp 1.5.0-11.el7 1.6.0-12.el8


rpmdev-vercmp сравнивает две версии пакетов и выводит, какая из них новее. Это полезно для ручного управления версиями пакетов.
👍30👎1
💬 Вопрос на собеседовании для сисадмина

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: В чем разница между объявлением переменной export VAR="VALUE" и VAR="VALUE" в bash?

Ответ: При объявлении переменной через export - переменная будет доступна в любых других процессах, при обычном объявлении переменной - переменная будет доступна только в запущенном процессе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
Вышел эмулятор QEMU 9.1

В начале сентября 2024 года вышел QEMU 9.1, открытый эмулятор, который позволяет запускать приложения, собранные для одной архитектуры, на других системах.

Например, программу для ARM можно запустить на x86. 


Благодаря гипервизору Xen или KVM, в режиме виртуализации производительность близка к аппаратной системе.

Ключевые изменения QEMU 9.1:

Ускорение миграции с помощью IAA и UADK, улучшено восстановление после сбоев.
Поддержка дополнительных данных в virtio через VIRTIO_F_NOTIFICATION_DATA.
Новые команды для guest-agent в Linux и Windows.
Расширения для ARM, LoongArch, RISC-V, SPARC и x86, включая AMD SEV-SNP для KVM.
Устранение уязвимости CVE-2024-7409 в NBD-сервере.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19
2 полезных дистрибутива Linux

Alpine Linux — это компактный и безопасный дистрибутив Linux с открытым исходным кодом, идеально подходящий для устройств с ограниченными ресурсами, таких как Raspberry Pi.

Его ключевые особенности — высокая производительность, минималистичность и безопасность. 


Alpine базируется на BusyBox и musl libc, что обеспечивает лёгкость и скорость работы системы.

Благодаря своей надёжности и простоте настройки, он стал популярным выбором для Docker-контейнеров, где важны экономия ресурсов и безопасность.

Subgraph OS — дистрибутив на базе Debian, разработанный для защиты от наблюдения и сложных сетевых атак.

В основе системы лежит усиленное ядро Linux, которое блокирует сетевой доступ для определённых приложений через встроенный фаервол. 


Весь трафик системы направляется через Tor, обеспечивая анонимность и конфиденциальность.

Subgraph OS создан для тех, кто ценит безопасность и приватность, но не хочет жертвовать удобством использования, предлагая интуитивный интерфейс и набор инструментов для защиты данных.
👍141
😬
Please open Telegram to view this post
VIEW IN TELEGRAM
😁24🔥5🤣1
💬 Вопрос на собеседовании для DevOps-инженера

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Как реализовать развертывание с нулевым простоем (zero-downtime deployment)?

Ответ: Для этого применяются стратегии, позволяющие обновлять сервис без прерывания его работы. Одной из таких стратегий является канареечное развертывание, где новая версия внедряется для части пользователей, а затем — для всех.

Другие подходы — Blue-Green Deployment (переключение между двумя окружениями) и Rolling Updates (поэтапное обновление инстансов).

Эти методы требуют настройки инфраструктуры и мониторинга для контроля за стабильностью.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Google вернул возможность регистрации новых аккаунтов с российскими номерами

10 сентября 2024 года Google снова начал подтверждать аккаунты по номерам телефонов из РФ. 


Ранее, с 9 сентября, пользователи столкнулись с проблемой — нельзя было завершить регистрацию с российскими номерами из-за ошибки.

Облачная система Google позволяла пройти все этапы создания учетной записи, но на этапе подтверждения номера телефонов из России возникала ошибка.

В компании инцидент не комментировали, но эксперты считают это техническим сбоем или проблемами с провайдером SMS.

⚡️Поддержка Google отметила, что сейчас разрешено регистрировать только один аккаунт на номер, тогда как раньше можно было создавать до пяти.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎11🔥7👍2
Установка и использование fping в Linux

Когда нужно проверить доступность сети, мы часто используем команду ping.

Но что, если вам нужно пинговать несколько хостов одновременно? Для этого существует мощная утилита fping.

Что такое fping?

Fping — это утилита, аналогичная стандартному ping, но с расширенными возможностями. 


Она позволяет отправлять эхо-запросы сразу нескольким узлам, задавать диапазоны адресов и даже работать с файлами списков.

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

Установка

fping можно легко установить на большинстве Linux-дистрибутивов:

Debian/Ubuntu:

sudo apt install fping


CentOS/RHEL:

sudo yum install fping


Fedora:

sudo dnf install fping


Arch Linux:

sudo pacman -S fping


Если вы хотите установить утилиту из исходников, выполните следующие команды:

$ wget https://fping.org/dist/fping-4.0.tar.gz
$ tar -xvf fping-4.0.tar.gz
$ cd fping-4.0/
$ ./configure
$ make && sudo make install


Примеры использования fping

Пинг нескольких адресов

# fping 192.168.1.1 192.168.1.2 192.168.1.3


Эта команда отправляет запросы сразу на несколько IP-адресов. В результате вы получите статус для каждого узла: "alive" или "unreachable".

Пинг диапазона адресов

# fping -g 192.168.0.1 192.168.0.9


С помощью флага -g можно задать диапазон IP-адресов для проверки. Это особенно удобно, если вам нужно быстро проверить доступность сети.

Пинг целой подсети

# fping -g -r 1 192.168.0.0/24


Эта команда пингует все устройства в указанной подсети. Опция -r 1 указывает на одно повторение операции для повышения точности результата.

Пинг с адресами из файла

Если у вас есть список адресов в текстовом файле (например, fping.txt), вы можете использовать его для массовой проверки:

# fping < fping.txt
🔥22👍9