Системный Администратор
2.08K subscribers
161 photos
423 videos
8 files
158 links
Канал для системных администраторов. Полезный контент по Windows, Linux и т.д.
Download Telegram
Виртуализация

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

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

источник

👉 @sys_adminos
Протоколы семейства TCP/IP. Теория и практика

В сети можно найти огромное количество материала о том, как функционируют сети на базе стека протоколов TCP/IP, а также как писать компьютерные программы с сетевыми возможностями. При рассмотрении компьютерных сетей часто углубляются в описание физических основ и структур данных, передаваемых по сети, а при рассмотрении сетевого программирования основное внимание уделяют интернет-сокетам.

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

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

Приложение — простое и понятное и, надеюсь, упростит изучение материалов статьи. Ведь именно радость первой победы даёт мотивацию, достаточную для того, чтобы потратить гораздо больше времени на изучение темы.

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

Приложение доступно на GitHub.

https://habr.com/ru/companies/ruvds/articles/759988/

👉 @sys_adminos
👍2
Числа и байты: как работает память в Linux?

При создании операционных систем всегда уделяется внимание работе с памятью. Память — это компонент компьютера, где хранятся программы и данные, и без нее современные компьютеры не могли бы функционировать. Важной единицей хранения данных в памяти является бит, который может принимать два значения: 0 или 1. Память состоит из ячеек, каждая из которых имеет свой адрес. Ячейки могут содержать различное количество битов, и количество адресуемых ячеек зависит от количества бит в адресе.

https://habr.com/ru/companies/timeweb/articles/804865/

👉 @sys_adminos
👍1
🚀 MEETUPxSPRINT OFFER для инженеров технической поддержки от YADRO

Хочешь узнать, как устроена техническая поддержка в одной из ведущих технологических компаний России? Приходи на онлайн-митап от YADRO! Расскажем, покажем, ответим на любые вопросы — и дадим возможность попасть в команду всего за 3 дня!

🔥 Программа митапа:

✔️ Сервисная служба YADRO: основные ресурсы и направления
Василий Бронников, Руководитель отдела техподдержки решений

✔️ Наши продукты: уникальные характеристики и возможности
Андрей Антоненко, Ведущий инженер техподдержки TATLIN

✔️ Реальные кейсы: как команды решают сложные задачи
Дмитрий Сафонов, Руководитель группы L1-поддержки TATLIN.UNIFIED

🔥 Что тебя ждёт:

Реальные кейсы и инсайты из практики техподдержки
Доклады от инженеров YADRO: продукты, процессы, особенности
Живое общение с командой и ответы на вопросы о работе и технологиях

👨‍💻 А если ты задумываешься о новой работе — у тебя есть возможность быстро попасть в команду YADRO и получить оффер за 3 дня. Для этого нужно пройти короткий тест. Сделать это можно уже сейчас, а также во время или после митапа — выбирай, как тебе удобно (но заявки принимаем до 6 июля).

📌 Тест можно пройти по ссылке.



🗓 26 июня, начало в 19:00 мск, четверг

🌐 ОНЛАЙН

Регистрация на мероприятие

Реклама. ООО "ЭВРОНЕ.РУ". ИНН 3663057399. erid: 2VtzqwySHG2
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Совет по Linux 💡

Как удалить пустой каталог рекурсивно с помощью команды find:

find . -type d -empty -delete

👉 @sys_adminos
👍2
15 супер полезных примеров команды find в Linux

Практические примеры, которые приведены в этой статье, помогут вам освоить очень эффективную и крайне полезную команду find.

Она используется для поиска файлов и папок через командную строку Linux.

Команда find — одна из самых мощных и широко применимых команд. При этом она крайне объёмная и насчитывает более 50 опций, в которых легко запутаться, особенно в сочетании с командами exec или xargs.

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

Для этого разберём самые распространённые случаи практического применения команды find. Но для начала покажу вам синтаксис и принцип работы с командой.

Поиск файлов и папок по имени
find . -name SEARCH_NAME

Поиск только файлов или только папок
find . -type f -name SEARCH_NAME

Поиск без учёта регистра
find . -type f -iname SEARCH_NAME

Поиск файлов по расширению
find . -type f -name "*.cpp"

Поиск файлов в заданной папке
abhishek@LHB:~/Examples$ find ./new -name mystuff
./new/mystuff


Поиск файлов в нескольких папках
find ./location1 /second/location -type f -name "pattern"

Поиск пустых файлов и папок
find . -empty

Поиск крупных и мелких файлов (поиск по размеру файла)
find . -size +1G

https://habr.com/ru/companies/first/articles/593669/

👉 @sys_adminos
👍1
«Где быстро развернуть стенд под тест новой сборки, чтобы не угореть по времени и бюджету?»

Это один из самых частых вопросов в жизни сисадмина.

Облако кажется очевидным решением, пока не начинаешь работать с кастомной ОС, нестандартной сетевой схемой или нетипичным ПО. Тут начинается боль: ограничения по гипервизору, отсутствие root-доступа к железу…

В таких случаях спасает Yandex BareMetal. Это аренда физических серваков с полной свободой действий:

➤ Парк из тысяч серверов готовых конфигураций с RAM от 128 до 256 Гб и скоростью сети от 1 до 25 Гб/сек

➤ Установка любой ОС: из образов или своей

➤ Удобное управление по API или через KVM и SSH

➤ Необходимые мощности можно получить в течение 25 минут

Аренда на день, месяц или год со скидкой до 15%. Удобно, когда задача нестандартная, а инфраструктуру под это держать не хочется.

Тут найдете много инструкций, которые помогут загрузить свою ОС и пошагово настроить сетевую связность и подключить backup → Попробовать BareMetal
Трюки терминала Bash

Полезные комбинации клавиш (хоткеи) и небольшие хитрости, которые сделают Вашу работу в Linux более эффективной.

Горячие клавиши" Bash с Ctrl
Ctrl + n — то же самое, что и стрелка вниз.
Ctrl + p — то же самое, что и стрелка вверх.
Ctrl + r — поиск по предыдущим командам из истории команд (history). Продолжайте нажимать Ctrl + r, чтобы искать дальше. Ctrl + Shift + r — поиск в другую сторону.
Ctrl + s — остановить вывод в терминал.
Ctrl + q — восстановить вывод в терминал после Ctrl + s.
Ctrl + a — перейти к началу строки (аналог клавиши Home).
Ctrl + e — перейти к концу строки (аналог клавиши End).
Ctrl + d — если вы ввели что-то, то Ctrl + d удаляет символ под курсором. В противном случае означает конец ввода и завершает текущую сессию Bash.
Ctrl + k — удалить весь текст от курсора до конца строки.
Ctrl + x + backspace — удалить весь текст от начала строки до курсора.
Ctrl + t — переставить символ до курсора на символ под курсором. Нажмите Esc + t для перестановки двух слов до курсора.
Ctrl + w — удалить слово до курсора; затем Ctrl + y, чтобы вставить его.
Ctrl + u — удалить строку перед курсором; Ctrl + y для вставки его.
Ctrl + _ — отменить ввод.
Ctrl + l — очищает окно терминала. То же самое, что и clear.
Ctrl + x + Ctrl + e — запускает редактор, определённый в переменной $EDITOR, для ввода команды. Полезно для многострочных команд.

Изменить заглавные на строчные и наоборот
Esc + u — преобразовать буквы от курсора до конца строки в заглавные буквы.
Esc + l — преобразовать буквы от курсора до конца строки в нижний регистр.
Esc + c — заменить букву под курсором на заглавную.

Запустить предыдущую команду ещё раз
Запустить команду из истории по номеру (например, 53)
!53
!! — запуск последней команды.
sudo !! — запустить предыдущую команду с sudo.

Запускает последнюю команду и меняет какой-то параметр. Например, меняем "aaa" на "bbb":
# Последняя команда: echo 'aaa'
$ ^aaa^bbb

$ echo 'bbb'
bbb


Важно: предыдущая команда заменит только первое вхождение "aaa". Если вы хотите заменить все вхождения, используйте :&:
^aaa^bbb^:&
# или
!!:gs/aaa/bbb/


Запустить последнюю команду, которая начинается с...
Например, до этого в истории команд была команда cat filename:
!cat
# или
!c


— запускает cat filename ещё раз.

Указание файлов по шаблону в Bash
/etc/pa*wd/etc/passwd — символ * означает "несколько любых символов".
/b?n/?at/bin/cat — символ ? означает "один любой символ".
ls -l [a-z]* — вывести список файлов, содержащих только буквы латинского алфавита. В квадратных скобках [] перечисляются символы, которые будут искаться. А символ * после [] означает "хоть сколько раз".
ls {*.sh,*.py} — вывести все .sh и .py файлы. {} используется для группировки нескольких шаблонов по принципу "или".

Полезные переменные окружения Bash
Короткие переменные:
$0 — оболочка командной строки или путь до запускаемого файла.
$1, $2, $3, ... — аргументы запуска скрипта.
$# — число аргументов, переданных в скрипт из терминала.
$? — код завершения последней команды.
$- — текущие опции, установленные для оболочки.
$$ — идентификатор текущего процесса.
$! — идентификатор процесса, завершённого последним.

Более длинные, но тоже полезные переменные:
$DESKTOP_SESSION — текущий менеджер дисплеев.
$EDITOR — редактор текста по умолчанию.
$LANG — используемый системой язык.
$PATH — список директорий, в которых будут искаться исполняемые файлы.
$PWD — текущая директория.
$SHELL — текущая оболочка командной строки.
$USER — имя текущего пользователя.
$HOSTNAME — имя текущего хоста (компьютера).

👉 @sys_adminos
👍4
Zenith - что-то вроде top или htop, но с диаграммами с возможностью масштабирования, использованием CPU, GPU, сети и диска.

Особенности
Дополнительные графики использования ЦП, памяти, сети и дисков
Быстрый просмотр свободного места на диске, IP-адресов сетевых карт, частоты процессора
Выделение основных пользователей ЦП, памяти и диска
Процент заряда батареи, время зарядки или разрядки, потребляемая мощность
Таблица процессов с возможностью фильтрации по типу верхней части, включающая использование диска каждым процессом
Изменение приоритета процесса
Представления диаграмм с возможностью масштабирования (с поддержкой прокрутки назад во времени)
Управление процессами с помощью сигналов
Сохранение данных о производительности между запусками
Метрики использования GPU для графических процессоров NVIDIA (с --features nvidia), включая использование GPU для каждого процесса
Графики свободного места на диске
Учет задержек (в Linux при запуске zenith с правами root)

Установка на дистрибутивы Linux на базе Debian/Ubuntu (64-бит)

sudo apt install curl
curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get


https://github.com/bvaisvil/zenith

👉 @sys_adminos
👍4
Media is too big
VIEW IN TELEGRAM
Расшивка патч-панелей

👉 @sys_adminos
🔥31👍1
apt-get — команда для управления пакетами программного обеспечения в дистрибутивах, основанных на Debian

Команда apt-get предназначена для работы с утилитой «apt», являющейся стандартной утилитой для управлении пакетами программного обеспечения в дистрибутиве Debian, а также основанных на нем дистрибутивах (Ubuntu, Linux Mint, ...).

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

Примеры использования
Установка пакета программного обеспечения:

# apt-get install <имя пакета>

Переустановка пакета программного обеспечения:

# apt-get install --reinstall <имя пакета>

Удаление пакета программного обеспечения:

# apt-get remove <имя пакета>

Удаление пакета программного обеспечения со всему файлами конфигурации:

# apt-get --purge remove <имя пакета>

Поиск пакета программного обеспечения:

# apt-cache search <имя пакета>

Обновление списков пакетов программного обеспечения из подключенных репозиториев (файлов с расширением .deb):

# apt-get update

Обновление системы (полезно для поддержания программного обеспечения в актуальном состоянии):

# apt-get upgrade

Обновление дистрибутива (утилита попытается загрузить и установить пакеты программного обеспечения из состава новой версии дистрибутива):

# apt-get dist-upgrade

Вывод короткого списка всех доступных параметров команды:

# apt-get --help

Механизм автодополнения команд
Для активации механизма автодополнения команд apt-get по клавише Tab следует добавить строку

source /etc/bash_completion

в файл .bashrc из вашей домашней директории. После этого при вводе такой команды, как «apt-get install a» и нажатии клавиши Tab командная оболочка Bash попытается подставить имя пакета программного обеспечения.

Дополнительная информация
Попробуйте выполнить команду:

apt-get moo

Вы должны будете увидеть следующий вывод:

(__)
(oo)
/------/
/ | ||
* /---/

...."Have you mooed today?"…


Использование в других дистрибутивах
Если утилиты из комплекта поставки apt-get совместимы с вашим дистрибутивом, вы сможете воспользоваться штатным менеджером пакетов вашего дистрибутива для установки их в вашу систему. После окончания процесса установки вы сможете использовать приведенные выше команды для управления пакетами программного обеспечения дистрибутива.

Устранение неполадок в дистрибутивах, использующих пакеты RPM
В некоторых случаях после исполнения команды apt-get будет выводиться сообщение о невозможности блокировки определенной директории. Большинство проблем, вызывающих подобное поведение, решается путем исполнения следующей последовательности команд:

rm /var/lock/rpm/transaction
rm /var/lib/rpm/__db*
rm /var/cache/apt/archives/lock

👉 @sys_adminos
👍3
Media is too big
VIEW IN TELEGRAM
Компьютерные сети. Введение, OSI
Преподаватель: Климанов Максим Михайлович

Таймкоды:
00:00:00 - Начало
00:00:09 - Организационные вопросы
00:34:25 - Начало курса: локальные и глобальные сети
00:43:56 - Классификация используемого оборудования (физический уровень), модели стевого взаимодействия (OSI)
01:01:16 - Канальный уровень
01:03:28 - Сетевой уровень
01:05:57 - Транспортный уровень
01:10:04 - Сессионный уровень
01:11:59 - Уровень представлений
01:13:18 - Уровень приложений

источник

👉 @sys_adminos
👍2