Admin Guides | Сисадмин – Telegram
Admin Guides | Сисадмин
11.5K subscribers
1.41K photos
24 videos
34 files
594 links
Обучающий канал по ОС Linux & Windows для начинающих и действующих администраторов.

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

РКН: https://kurl.ru/nQejS
Download Telegram
😁39👍3🔥1
Как вывести значения всех переменных и переменных окружения в Linux

Как перечислить все имена переменных и их текущие значения? Как показать только переменные окружения? Ответу на эти вопросы посвящен данный пост.

Можно вывести значения переменных по одной, например:

echo $HOME
echo $PWD
echo $USER
echo $SHELL

Если вам нужен полный список, то продолжайте читать.

printenv

Для #bash: (стандартная оболочка во многих дистрибутивах #Linux)

Введите следующую команду в терминале, чтобы распечатать все переменные среды:

printenv

Для получения дополнительной информации об этой команде прочтите справочную страницу:

man printenv

Чтобы отобразить список, включающий «переменные оболочки», вы можете ввести следующую команду:

( set -o posix ; set ) | less

Это покажет вам не только переменные оболочки, но и переменные среды.
Аналог этой команды:

POSIXLY_CORRECT=1 set

Для zsh: (оболочка по умолчанию используется в #KaliLinux)

Используйте следующую команду:

( setopt posixbuiltin; set; ) | less

Для получения дополнительной информации о параметрах ZSH смотрите справочную страницу

man zshoptions
declare


Вы можете увидеть все переменные с помощью встроенной команды declare.

declare -p


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

declare -xp

Запустите «help declare», чтобы увидеть, какие есть другие опции.

Переменные среды, доступные для запуска приложения

Во всех описанных выше методах предлагается следующая процедура:

• запустить терминал
• показать переменные среды, используя env, printenv или что-то ещё

Проблема этих решений заключается в том, что вы видите переменные среды оболочки, запущенной в терминал.

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

Это заметно, если, например, вы используете свой ~/.profile, или .bashrc, или .zshenv (в зависимости от вашей оболочки) для изменения переменных среды - как классическое добавление каталогов к PATH.

Чтобы увидеть переменные среды, доступные для приложения, запущенного непосредственно в графической среде, вы можете сделать следующее (в Gnome Shell, я уверен, что есть эквивалентный метод во всех других DE):

• нажмите Alt-F2
• запустите команду

xterm -e bash --noprofile --norc

Или, если у вас нет xterm, то запустите:

gnome-terminal - bash --noprofile --norc


Теперь у вас есть терминал с оболочкой, которая не добавляла никаких переменных среды.

☄️ Вы можете использовать env здесь, чтобы перечислить все свои переменные среды.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍111👎1🔥1
Какая команда в Windows используется для проверки целостности системных файлов?
Anonymous Quiz
51%
sfc
43%
chkdsk
3%
msconfig
3%
diskpart
🔥8👍3👎1
Опубликован скрипт MS Edge Tweaker для отключения ненужных функций в Microsoft Edge

Исследователь по ИБ и разработчик Боб Пони опубликовал на GitHub скрипт MS Edge Tweaker для отключения ненужных функций в браузере Microsoft Edge.

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

Полный список возможностей скрипта:

Отключение первого запуска и заставки.
Отключение импорта из других браузеров при запуске.
Отключение входа в браузер и служб синхронизации.
Отключение функции коллекций.
Отключение боковой панели.
Отключение помощника по покупкам.
Отключение рекламных ссылок на новой вкладке.
Отключение инсайдерского баннера на странице «О программе».
Скрипт показывает баннер о внешнем управлении браузером администратором системы и не позволяет отменить изменения автоматически.
Запускать его нужно от имени администратора.

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

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

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


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

Для запуска скрипта нужно запустить файл MSedgeTweaker.cmd от имени Администратора и выбрать нужные опции из списка доступных политик проекта.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11😁21🔥1
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: Как включить политики паролей (password policies) в #Linux?

Ответ: Политики паролей (password policies) включаются через pam (подсистему загружаемых модулей аутентификации). В #Centos и #RHEL у нас есть файл "/etc/pam.d/system-auth", в котором мы определяем требования к паролям.

В ОС, основанных на #Debian, для этих же целей служит файл "/etc/pam.d/common-password".
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23🔥4
7 полезных команд в Linux

dhclient — утилита для работы с DHCP-протоколом (получение динамического IP-адреса, настройка сетевых интерфейсов и пр.).

dmidecode — позволяет получить информацию об аппаратных компонентах системы, а также другую полезную информацию: характеристики процессора, оперативной памяти (DIMM), детали BIOS и т.д.

eject — позволяет извлекать съемный носитель (обычно CD-ROM, дискету, ленту, JAZ- или ZIP-диск) с помощью программного обеспечения.

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

expr — вычисляет заданное выражение и отображает результат.

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

fc-cache — сканирует каталоги шрифтов (и создает их кэш), которые используют fontconfig для обработки шрифтов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥4💊4🤣31
😎
Please open Telegram to view this post
VIEW IN TELEGRAM
48😁15🔥7
Как найти и удалить не UTF-8 символы в текстовом файле

Фильтрация невалидных UTF-8 символов

Файлы с неверными UTF-8 символами могут вызывать проблемы при обработке утилитами или открытии в текстовых редакторах.

Это может привести к ошибкам и сбоям в работе приложений.

Примеры ошибок:
Python:


UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf1 in position 933: invalid continuation byte


Perl:

Malformed UTF-8 character (fatal)


Gedit:

Открытый файл содержит недопустимые символы. Дальнейшее редактирование может повредить документ. Можете выбрать другую кодировку и попытаться снова.


Как найти не UTF-8 символы в файле

Для обнаружения строк с нечитаемыми символами используйте команду:

grep -axv '.*' ФАЙЛ


В локали UTF-8 эта команда покажет строки, содержащие недопустимые последовательности UTF-8 (работает с GNU Grep).

Удаление не UTF-8 символов

Команда iconv поможет очистить файл от недопустимых символов. Вот как это сделать:

Команда iconv

iconv -f utf-8 -t utf-8 -c ФАЙЛ.txt > НОВЫЙ_ФАЙЛ.txt


Пояснение:

-f utf-8 - исходный формат файла (UTF-8).
-t utf-8 - целевой формат файла (UTF-8).
-c - пропуск недопустимых последовательностей символов.
ФАЙЛ.txt - исходный файл.
НОВЫЙ_ФАЙЛ.txt - файл, в который будут записаны очищенные данные.

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

iconv -f utf-8 -t utf-8 -c ~/rockyou.txt > ~/rockyou_clean.txt


Эта команда очистит файл rockyou.txt от недопустимых символов и сохранит результат в файл rockyou_clean.txt.

Альтернативный способ

Вы также можете сохранить результат в новый файл с помощью другой формы записи:

iconv -f utf-8 -t utf-8 -c ФАЙЛ.txt -o НОВЫЙ_ФАЙЛ.txt


⚡️Использование iconv позволяет автоматизировать процесс очистки файлов и избежать проблем с недопустимыми символами в ваших текстовых файлах.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥41
Какая команда в Windows используется для управления конфигурацией системы через командную строку?
Anonymous Quiz
23%
bcdedit
16%
regedit
53%
msconfig
7%
gpedit.msc
👎34🤣14👍5🔥3
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: Каково назначение файлов '/etc/lvm/backup' и '/etc/lvm/archive'?

Ответ: Каждый раз, когда мы создаём или изменяем любой lvm раздел, резервная копия метаданных сохраняется в файле '/etc/lvm/backup', а архив метаданных ведется в файле '/etc/lvm/archive' file.

Используя команду vgcfgrestore мы можем восстановить метаданные группы томов lvm.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍5
Многие программы не работают на новых ARM-ноутбуках с Windows

Пользователи новых ноутбуков Samsung на базе ARM-процессора Qualcomm Snapdragon X Elite не смогут запускать множество популярных приложений.

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


#Microsoft ранее обещала, что их эмулятор Prism обеспечит совместимость программ, но это оказалось не так.

Несовместимы с ноутбуками такие программы, как «Антивирус Касперского», Avast SecureLine VPN, Adobe Illustrator и Google Drive.

#Samsung не гарантирует корректную работу ноутбуков с некоторыми принтерами и веб-сайтами местных финансовых организаций.

Это указывает на недостаточные усилия Microsoft для обеспечения запуска всех x86-приложений на ARM-платформе.

Apple успешно перевела свои компьютеры Mac на ARM-чипы, а Microsoft пытается сделать то же с #Windows-ноутбуками, предлагая ИИ-функции Copilot.

👀 Однако проблемы с совместимостью могут отпугнуть пользователей.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣15😁62👍2
Дистрибутив Gentoo Linux

Gentoo — это свободная операционная система на базе Linux, разрабатываемая с 1992 года.

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

Сердцем Gentoo является portage — мощная и гибкая система настройки и распространения программного обеспечения (менеджер пакетов), которая выполняет многие ключевые функции.

Например, устанавливая новое программное обеспечение, portage автоматически создаст пользовательскую версию пакета, оптимизированного конкретно под целевое оборудование, гарантируя, что в пакете не будет ненужного, обременяющего ваш компьютер функционала.

Благодаря portage, Gentoo может стать идеальным защищенным сервером, рабочей станцией разработчика, встроенным решением или чем-то еще, что вы пожелаете.

Из-за его почти неограниченной адаптивности, Gentoo часто называют метадистрибутивом.


Также стоит отметить дистрибутивы Sabayon Linux и Calculate Linux, созданные на основе Gentoo:

Sabayon Linux — это выпущенный в конце 2005 года на основе Gentoo Linux дистрибутив, ориентирующийся, прежде всего на начинающих пользователей.

Как заявляют разработчики Sabayon, их дистрибутив следует философии «всё должно работать прямо из коробки», стремясь при этом предоставить пользователю большое количество, в отличие от Gentoo с её исходниками, уже готовых к использованию приложений, сохраняя возможность оптимизировать пакеты с ПО под себя.

Calculate Linux поддерживает оптимальный баланс между новейшими версиями программного обеспечения и безупречной работой системы, обеспечивая пользователя последними версиями приложений и стабильными версиями библиотек.

Как правило, применение Calculate Linux подразумевает использование его вместе с Calculate Directory Server — службой каталогов, обеспечивающую централизованную и управляемую установку программного обеспечения, хранения почты, файлов, перемещение профилей пользователей и т.п.

Поскольку Calculate Linux является rolling-release дистрибутивом (т.е. дистрибутивом с непрерывным циклом обновления), вы устанавливаете систему один раз и далее только лишь обновляете её в течение всего срока службы вашего оборудования.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3👎1
This media is not supported in your browser
VIEW IN TELEGRAM
И что делать в такой ситуации? 😅
😁24🔥6
💬 Вопрос на собеседовании для DevOps-инженера

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


Вопрос: Объясните понятие ветвление (Контроль Версий).

Ответ: Одна из самых распространённых тем, которые должен знать DevOps инженер – ваше объяснение покажет ваши знания и опыт вашей прошлой работы с этой сферой.

Существуют три различных типах ветвления (branching) – ветвление задачи, функции и релиза.

Ветвление задачи включает в себя каждую задачу в различных ветвях, с ключами задач в названии ветви.

Ветвление функции хранит изменения и модификации внутри ветви. Когда работа с этой функцией завершена, ветвь, содержащая эту функцию, объединяется (merge) с мастер файлом.

Наконец, ветвление релиза позволяет вам клонировать ветвь, чтобы при её релизе, вы всё равно могли вносить изменение в клонированную версию.
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍7
Какая команда в Windows используется для просмотра и изменения настроек системного журнала?
Anonymous Quiz
51%
eventvwr
19%
logman
7%
wevtutil
23%
regedit
👍141👎1
Как в Bash прочитать ввод пользователя в переменную?

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

Ввод данных с помощью команды read

Чтобы попросить пользователя ввести данные, можно использовать команду read с опцией -p, которая позволяет вывести приглашение перед вводом:

read -p "Введите полное имя: " fullname
read -p "Введите желаемое имя пользователя в системе: " user


В этих строках введенные значения будут присвоены переменным $fullname и $user.

Другой вариант использования команды read без опции -p:

echo -n "Введите полное имя: "
read fullname


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

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

passwd "$user"
mkdir "$home"
chown "$user:$group" "$home"


Проверка пользовательского ввода

Пример конструкции, в которой проверяется пользовательский ввод. Если введено что-либо иное кроме y или yes (в любом регистре), скрипт завершится:

read -p "Продолжить? (Y/N): " confirm && [[ $confirm == [yY] || $confirm == [yY][eE][sS] ]] || exit 1


Ввод данных с использованием zenity

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

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

user=$(zenity --entry --text 'Пожалуйста, введите имя пользователя:') || exit 1


В этом примере будет показано следующее окно для ввода данных, а введенные данные будут присвоены переменной $user.

🔥Таким образом, команда read и утилита zenity предоставляют удобные способы запроса и получения данных от пользователя для использования в скриптах Bash.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍8🤣1
В Linux может появиться «чёрный экран смерти» при Kernel Panic

В новых версиях ядра Linux может появиться «чёрный экран смерти» при возникновении фатальной ошибки Kernel Panic.

Некоторым пользователям Linux не понравился недавно вышедший вариант BSOD («синий экран смерти») в Linux. 


Инженер Red Hat Хавьер Мартинес Канильяс, участвовавший в создании новой инфраструктуры DRM Panic, показал, что такая фатальная ошибка может стать «чёрным экраном смерти».

Проблема возникла после жалоб пользователей и разработчиков на то, что текущая реализация BSOD в Linux при DRM Kernel Panic в ядре Linux 6.10+ слишком похожа на аналогичную ошибку в Microsoft Windows.

Хавьер предложил вариант «чёрного экрана смерти» для тех разработчиков, кому такой подход будет более приемлем. 


В конце концов, Linux — это проект с открытым исходным кодом, и его можно настроить по своему усмотрению.

⚡️Хавьер опубликовал свой пример Linux с «чёрным экраном смерти» на примере DRM Kernel Panic на небольшом дисплее SSD1306, который можно доработать для ПК и ноутбуков.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥3😁1😱1
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: Что происходит на фоне когда вы заходите по ssh на сервер Linux?

Ответ: Каждый раз, когда мы заходим по ssh на любой Unix сервер, устанавливает TCP соединение между Клиентом и Сервером по порту 22 (по-умолчанию, если не указано другое) и Сервер выдает список версию протокола SSH которую он поддерживает.

Если клиента она «устраивает», то соединение продолжается и после того как сервер передаст свой публичный ключ и клиент сохранит его в файле '~/.ssh/known_hosts' мы получим подсказку ssh.

Да, и такие вопросы тоже бывают😅
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣12👍11😐4🔥2😁2
— Ты не сделал бэкапы?
— Ответ на твой вопрос — НЕТ, не сделал.
— Я только хочу железно удостовериться: ты не сделал тех самых данных, на которых мы зарабатываем?
— Так точно.
— И что именно ты планируешь делать, когда ты потеряешь все ключевые данные?
— Тебе позвоню.
🤣37🤔3😁2👍1👏1
Эффективное управление с помощью Microsoft Endpoint Configuration Manager (SCCM)

SCCM — мощный инструмент для управления ИТ-инфраструктурой, позволяющий централизованно администрировать конфигурации, развертывать программное обеспечение и обновления, а также проводить инвентаризацию оборудования и ПО.

Тут мы рассмотрим основные возможности SCCM и методы их эффективного использования.


Автоматизация развертывания операционных систем

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

Основные шаги включают создание и настройку последовательностей задач (Task Sequences), импорт и подготовку образов операционных систем, а также настройку PXE- или USB-boot для автоматического развертывания.

# Пример создания последовательности задач с использованием PowerShell
New-CMTaskSequence -Name "Deploy Windows 10" -BootImageID "XYZ0001" -OperatingSystemImageID "XYZ0002"


Управление патчами и обновлениями

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

Для управления обновлениями необходимо настроить WSUS (Windows Server Update Services) и его интеграцию с SCCM, создать автоматические правила развертывания (ADR) и мониторить статус развертывания.

# Пример создания ADR с использованием PowerShell
New-CMAutoDeploymentRule -Name "Monthly Security Updates" -DeploymentTemplateID "XYZ0003" -UpdateClassification "SecurityUpdates"


Инвентаризация оборудования и программного обеспечения

SCCM автоматически собирает данные о всех устройствах и установленном на них ПО, что позволяет администраторам получать подробные отчеты и проводить аудит ИТ-активов.

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

# Пример запроса данных об установленном ПО с использованием PowerShell
Get-CMSoftwareInventory -ResourceID "XYZ0004"


Управление мобильными устройствами

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

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

Мониторинг и отчетность

SCCM включает в себя мощные инструменты мониторинга и создания отчетов, что позволяет администраторам отслеживать состояние системы, выявлять проблемы и принимать обоснованные решения.

Настройка и использование встроенных отчетов, создание кастомных отчетов с использованием SQL Server Reporting Services (SSRS), а также настройка оповещений и уведомлений о событиях и инцидентах обеспечивают высокий уровень контроля и мониторинга всех аспектов ИТ-инфраструктуры.

# Пример создания отчета с использованием PowerShell
New-CMReport -Name "Installed Software Report" -SQLQuery "SELECT * FROM v_Add_Remove_Programs"
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4👎1
💬 Вопрос на собеседовании для DevOps-инженера

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


Вопрос: Что Такое Memcached?

Ответ: Memcached — это система кеширования объектов памяти с открытым исходным кодом. В основном Memcached используется для избежания повторяющихся задач извлечения данных SQL, которые могут занимать долгое время при параллельном выполнении.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🤔2