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

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

РКН: https://kurl.ru/nQejS
Download Telegram
Изменение размера томов LVM

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


Если используется файловая система XFS, объем можно увеличить, но не уменьшить. Другие файловые системы, такие как Ext4 и Btrfs, поддерживают уменьшение размера файловой системы.

Уменьшение файловой системы Ext4 может быть выполнено только в автономном режиме, что означает, что вам нужно размонтировать её, прежде чем вы сможете изменить её размер.

В этом посте вы узнаете, как увеличить размер логического тома LVM.

Подготовка к добавлению
Итак, мы добавили в систему диск. Командой fdisk создали раздел, пометили его как LVM и назначили ему файловую систему XFS.

Командой pvs видим наш чистый том /dev/sdc1:

[root@server2 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <19.57g 4.00m
/dev/sdb1 vgDATA lvm2 a-- <20.00g 0
/dev/sdc1 lvm2 --- <10.00g <10.00g


Теперь добавим его в общее групповое хранилище и присоединим к нему наш логический том /dev/sdc1.

Добавление хранилища в VG

Используйте vgextend, чтобы добавить хранилище в VG, и vgreduce, чтобы удалить хранилище из VG.

[root@server2 ~]# vgextend vgDATA /dev/sdc1
Volume group "vgDATA" successfully extended


Проверяем состояние групп:

[root@server2 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.57g 4.00m
vgDATA 2 1 0 wz--n- 29.99g <10.00g


Физический том в 10GB добавлен, но не используется в логическом томе.

Проверяем логический том:

[root@server2 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <18.63g
swap centos -wi-ao---- 956.00m
lvDATA vgDATA -wi-ao---- <20.00g


Увеличение размера логического тома

Чтобы увеличить размер логического тома, используйте lvresize, затем добавьте опцию -r, чтобы изменить размер файловой системы:

[root@server2 ~]# lvresize -r -l +100%FREE /dev/vgDATA/lvDATA
Size of logical volume vgDATA/lvDATA changed from <20.00 GiB (5119 extents) to 29.99 GiB (7678 extents).
Logical volume vgDATA/lvDATA successfully resized.

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

[root@server2 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <18.63g
swap centos -wi-ao---- 956.00m
lvDATA vgDATA -wi-ao---- 29.99g

Убеждаемся, что логический том lvDATA стал на 10GB больше.

Примеры:

Изменяет размер логического тома, чтобы он занимал 75% общего дискового пространства в группе томов:

lvresize -r -l 75%VG /dev/vgDATA/lvDATA

Попытается добавить 75% от общего размера группы томов к логическому тому:

lvresize -r -l +75%VG /dev/vgDATA/lvDATA

Добавляет 75% всего свободного дискового пространства к логическому тому:

lvresize -r -l +75%FREE /dev/vgDATA/lvDATA

Изменяет размер логического тома до общего размера, равного 75% объема свободного дискового пространства:

lvresize -r -l 75%FREE /dev/vgDATA/lvDATA
Please open Telegram to view this post
VIEW IN TELEGRAM
👍192
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: Что выведет команда cat a и почему?

mkdir /tmp/abc
cd /tmp/abc
ls >a 2>b
cat a


Ответ: cat a выведет

a
b


Обработка команды идёт справа налево. Сначала создается файл b, потом создается файл a, команда ls отображает список файлов в текущей директории (файлы a и b уже созданы) в одну колонну и перенаправляет стандартный поток вывода (>) в файл a, а стандартный поток ошибок 2 в файл b.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25
7 полезных команд в Linux

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

mpstat — создание статистического отчета о работе процессора (или по каждому процессору, если их несколько).

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

nmcli — управление NetworkManager-ом. Также может применяться для отображения состояния сетевого устройства, создания, редактирования, активации/деактивации и удаления сетевых подключений.

od — преобразование содержимого входных данных в восьмеричный и другие форматы.

partprobe — информирование операционной системы об изменениях в таблице разделов.

pinky — команда поиска информации о пользователе, которая дает подробную информацию обо всех пользователях, вошедших в систему. В отличие от finger, применяя pinky, вы можете обрезать интересующую вас информацию.

readelf — получение информации о файлах формата ELF (сокр. от «Executable and Linkable Format»).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥2
🤷‍♂️
Please open Telegram to view this post
VIEW IN TELEGRAM
😁39👏7👍6🔥2
Diskonaut – терминальный проводник дискового пространства для Linux

Diskonaut — простой навигатор дискового пространства терминала, созданный с помощью Rust и поддерживающий Linux и macOS.

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


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

Установка Diskonaut на Linux

Чтобы установить diskonaut на Linux, ваша система должна поддерживать язык программирования Rust. Если Rust еще не установлен, выполните следующую команду:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh


После установки Rust, используйте пакетный менеджер Cargo для установки diskonaut:

cargo install diskonaut


Для систем Fedora, CentOS или Arch Linux можно установить последний предварительный релиз diskonaut из стандартных репозиториев:

sudo dnf install diskonaut  # Для Fedora и CentOS
yay diskonaut # Для Arch Linux


Использование Diskonaut

После установки diskonaut можно запустить в каталоге, который нужно проверить, либо указать абсолютный путь к каталогу для сканирования:

cd /home/user
diskonaut


или

diskonaut /home/user


Доступные сочетания клавиш

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

🔥 После завершения сканирования можно переходить по подкаталогам, например, виртуальные машины Virtual Box, и нажимать Enter для просмотра их содержимого.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍2🤔2
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: В bash-скрипте указан аттрибут оболочки set -x. В одной из команд происходит ошибка и скрипт завершает свою работу. Как сделать, чтобы при возникновении ошибки в определенной команде скрипт продолжил свою работу?

Ответ: 1 вариант: указать || true после выполнения команды с ошибкой.

<command with error> || true


2 вариант: до выполнения данной команды указать set +e для игнорирования ошибок, начиная со следующей строки и после выполнения команды указать set -e для завершения работы скрипта в случае ошибки, начиная со следующей строки.

set -e
<command 1>
<command 2>
set +e
<command 3 wih error>
set -e
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Виртуализация Xen на CentOS

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

Этот гипервизор считается одним из самых популярных в мире виртуализации.


Основные возможности Xen

Xen используется для виртуализации серверов, настольных ПК, инфраструктуры как услуги (IaaS), а также встраиваемых устройств.

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

1️⃣ Независимость от операционной системы: Xen может работать с различными операционными системами, такими как Linux, NetBSD, OpenSolaris и другие.

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

3️⃣ Поддержка паравиртуализации: Полностью паравиртуализированные хосты работают быстрее, чем полностью виртуализированные гости.

4️⃣ Компактность и безопасность: Гипервизор Xen имеет микроядерное устройство размером около 1 МБ, что делает его более надежным и безопасным по сравнению с другими гипервизорами.

Основные компоненты Xen Project включают:

Гипервизор Xen: Управляет процессором, памятью и прерываниями.
Domain 0 (Dom0): Специальная область с драйверами для всех устройств в хост-системе.
Гостевые домены (DomU): Виртуальные машины, работающие в виртуализированной среде.
Toolstack и консоль: Позволяют управлять виртуальными машинами через командную строку или графический интерфейс.

Типы виртуализации: PV и HVM

Паравиртуализация (PV):

• Легкая и эффективная технология виртуализации.
• Требует изменения гостевой ОС для работы с API гипервизора.
• Не требует аппаратных расширений для виртуализации от центрального процессора хоста.

Аппаратная виртуализация (HVM):

• Использует аппаратные расширения Intel VT или AMD-V.
• Не требует изменения гостевой ОС, что позволяет использовать операционные системы Windows.
• Полностью виртуализированные гости обычно медленнее, чем паравиртуализированные гости из-за эмуляции.

⚡️Для оптимальной производительности HVM-гостей можно использовать драйверы PVHVM, которые обходят эмуляцию дискового и сетевого ввода-вывода.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
Какой параметр команды curl используется для отправки POST-запросов с данными?
Anonymous Quiz
21%
-d
51%
-p
5%
-k
23%
-post
👍9🤔7
Orion soft представил обновленную СУБД Proxima DB 3.0.1 с уникальными для рынка баз данных функциями

Orion soft представил обновленную версию системы управления базами данным (СУБД) Proxima DB 3.0.1


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

Ключевая функция новой версии Proxima DB 3.0.1 — возможность автоматически развертывать любые отказоустойчивые кластерные конфигурации за 10 минут через пользовательский интерфейс.

Для этого разработан пошаговый установщик с поддержкой различных шаблонов кластеров, реализованный по принципу Microsoft SQL Server.

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

Proxima DB 3.0.1 также обладает расширенными возможностями для гибкого управления полным и инкрементальным резервным копированием через пользовательский интерфейс, который содержит систему рекомендаций с шаблонами типовых планов бэкапа — выбрать и настроить один из них можно в несколько кликов.

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


Пользовательский интерфейс Proxima DB 3.0.1 обеспечивает также удобное управление расширениями для PostgreSQL через дашборд.

🔥Из него по одному клику можно применять или отключать необходимые расширения для каждого из кластеров. 
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16😁3
💬 Вопрос на собеседовании для сисадмина

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


Вопрос: Для чего нужна переменная окружения PATH?

Ответ: Переменная окружения PATH содержит абсолютные пути директорий, в которых производится поиск исполняемых файлов при вводе команд
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21😁3
5 крутых вещей, которые можно сделать с помощью Windows PowerShell

Если PowerShell кажется вам сложным для повседневных задач, "круто" может не быть первым словом, которое вы ассоциируете с ним.

Однако PowerShell является мощным инструментом, который можно использовать для автоматизации и упрощения различных задач в Windows, Exchange, Windows Server и SQL Server.

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


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

1️⃣Отчёты о подключённых USB-устройствах

PowerShell позволяет работать с WMI (Windows Management Instrumentation) для получения информации о подключённых USB-устройствах на локальной или удалённой системе:

Get-WmiObject Win32_USBControllerDevice -ComputerName DBSERVER1 | Format-List Antecedent, Dependent


Это удобный способ ведения отчётов о подключённых USB-устройствах на серверах.

2️⃣ Выполнение задач CMD в PowerShell

Вы можете выполнить все те же задачи, что и в CMD, используя PowerShell. Это поможет быстрее освоиться с интерфейсом PowerShell.

Для быстрого запуска PowerShell можно назначить сочетание клавиш, например, Ctrl + Shift + P.

3️⃣ Принудительное завершение процесса

Если зависла служба Windows, вы можете завершить процесс через PowerShell так же, как в Диспетчере задач:

Get-Process BadTh* | Stop-Process -Id (Get-Process BadTh*).Id


Эта команда принудительно завершит процесс BadThread.

4️⃣ Использование PSDrive

Команда PSDrive позволяет просматривать объекты Windows за пределами традиционных сетей и дисков.

Например, для доступа к реестру используйте:

Set-Location HKLM:


Это позволит вам просматривать и управлять объектами реестра.

5️⃣ Экспорт NTFS-разрешений

PowerShell позволяет экспортировать список NTFS-разрешений для аудита или анализа:

Get-Acl N:\Data


Для рекурсивного экспорта разрешений используйте:

Get-ChildItem N:\Data -Recurse | Get-Acl


Результаты можно сохранить в CSV или текстовый файл.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥21
Причины, почему кажется, что у людей, работающих с ПК, есть свободное время.

😁 У сисадмина — всё перезагружается.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18🔥3
Релиз Apache Kafka 3.8

В конце июля 2024 года состоялся релиз Apache Kafka 3.8. 


Этот мощный инструмент для построения конвейеров данных в реальном времени и event-driven приложений теперь поддерживает JBOD в многоуровневом хранилище.

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

Основные изменения и дополнения в Apache Kafka 3.8:

Поддержка JBOD: Теперь можно вести несколько каталогов журналов для каждого брокера, что позволяет запускать крупные развёртывания с несколькими устройствами хранения на разных узлах кластера Kafka.

Настройка уровня сжатия: Добавлены параметры для кодеков gzip, lz4 и zstd: compression.gzip.level, compression.lz4.level, compression.zstd.level. Кодек snappy исключён.

Повтор загрузки при обновлении метаданных: Если ни один из известных брокеров недоступен.
Улучшения безопасности: Ограничение файлов, доступных поставщикам конфигурации файлов и каталогов, чтобы избежать неограниченного доступа. Добавлена конфигурация remote.fetch.max.wait.ms для настройки тайм-аута удалённой выборки.

Совместное использование хранилища состояний в Kafka Streams: Теперь данные можно использовать в нескольких приложениях без дублирования на уровне топика. Также добавлены новые метрики для поиска утечек памяти и проблем с производительностью.

Изменение поведения свойства tasks.max.enforce в Kafka Connect: При установке в значение false, коннектор мог генерировать больше задач, чем максимальное значение. Теперь это свойство объявлено устаревшим и будет удалено в следующем мажорном релизе.

В разработке Apache Kafka 3.8 приняли участие более 200 контрибуторов и сторонних разработчиков.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Еще 5 крутых вещей, которые можно сделать с помощью Windows PowerShell

Первая часть тут

6️⃣ PowerShell 2.0 и графический интерфейс

PowerShell 2.0 включает графический интерфейс и возможность сохранять скрипты как .ps1 файлы. Перед началом работы настройте политику исполнения:

Set-ExecutionPolicy RemoteSigned


7️⃣ Горячие клавиши в PowerShell GUI

В графическом интерфейсе PowerShell доступны горячие клавиши, такие как F5 для выполнения, Ctrl + S для сохранения, Ctrl + Z для отмены, Ctrl + C для копирования и Ctrl + V для вставки.

8️⃣ Фоновый режим для длительных задач

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

Start-Job -ScriptBlock { <команда> }


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

Get-Job


9️⃣ Временные метки для вывода команд

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

"$(Get-Date -Format g) Start logging"


1️⃣0️⃣ Вывод результатов с задержкой

Используйте функцию EasyView для постепенного вывода результатов на экран:

function EasyView { process { $_; Start-Sleep -Seconds 0.5 } }
Get-ChildItem N:\Data | EasyView


Эта функция позволяет просматривать результаты по одной строке каждые полсекунды.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
Какой командой можно проверить целостность пакетов в системе, используя пакетный менеджер RPM?
Anonymous Quiz
30%
rpm -C
26%
rpm -Q
21%
rpm -F
24%
rpm -V
👍14🤔11
Руководство по установке SFTP-сервера на Linux

Мы подготовили удобную инструкцию по установке и настройке SFTP-сервера на Linux.

Что такое SFTP?

SFTP (Secure SHell File Transfer Protocol) — это безопасный протокол передачи файлов, использующий SSH для защиты данных. В отличие от FTP, который не шифрует данные, SFTP обеспечивает безопасную передачу файлов.

Установка SFTP-сервера на Linux

Для выполнения следующих шагов вам потребуются права sudo.

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

Ubuntu/Debian:

sudo apt install openssh-server


CentOS/RHEL:

sudo yum install -y openssh-server openssh-clients


Для установки SSH на клиентском компьютере:

Ubuntu/Debian:

sudo apt install ssh


Теперь все готово для настройки SFTP.

Этап 1: Создание групп, пользователей и каталогов

Для безопасного использования SFTP создайте специальные группы и пользователей:

Создайте группу sftpg:

sudo groupadd sftpg


Создайте пользователя seenisftp и добавьте его в группу sftpg:

sudo useradd -g sftpg seenisftp 
sudo passwd seenisftp


Создайте каталоги и измените их права доступа:

sudo mkdir -p /data/seenisftp/upload
sudo chown -R root:sftpg /data/seenisftp
sudo chown -R seenisftp:sftpg /data/seenisftp/upload


Важно: Убедитесь, что владелец /data/seenisftp — это root.

Этап 2: Настройка sshd_config

Настройте сервер так, чтобы пользователи из группы sftpg попадали в SFTP вместо обычной оболочки SSH.

Добавьте следующий фрагмент в файл /etc/ssh/sshd_config:

Match Group sftpg
ChrootDirectory /data/%u
ForceCommand internal-sftp


Этап 3: Перезагрузка службы

Чтобы применить изменения в sshd_config, перезапустите службу SSH:

sudo systemctl restart sshd


Доступ к SFTP через командную строку Linux. Подключитесь к SFTP как к SSH:

sftp seenisftp@merionet.ru


Примеры команд SFTP

Синтаксис команд SFTP: COMMAND [SOURCE] [DESTINATION]

GET
Загрузка файла с удаленного сервера на локальную систему:

get poster.img ~/Pictures


PUT
Загрузка файла из локальной системы на удаленный сервер:

put ~/Pictures/picture2.jpg uploads/


RM
Удаление файла на удаленном сервере:

rm uploads/picture3.jpg
👍25
Приложение RevertSV позволяет преобразовать Windows 11 в Windows 10 «в один клик»

Разработчик выпустил неофициальное приложение RevertSV, которое позволяет преобразовать Windows 11 в Windows 10 всего за один клик. При этом изменится только пользовательский интерфейс.

Разработчик с ником LagLife, который выпустил приложение, объясняет, что у него было несколько попыток «возврата» к Windows 10. 


Другой блогер, Come On Windows, недавно опробовал скрипт на виртуальной машине.

Похоже, что при создании утилиты использовались файлы uDWM DLL и DWMAPI DLL от Valinet.

DWM или Desktop Window Manager, похожий на WDDM, был представлен Microsoft во времена Vista, когда графический интерфейс Windows сделал довольно большой скачок в плане визуальных эффектов.

Приложение RevertSV доступно для загрузки на веб-сайте Internet Archive. 
👍15
Как сменить MAC-адрес в Linux

Зачем вам может понадобиться смена MAC-адреса на вашем Linux-сервере?

Может быть, вы хотите блокировать его на фаерволе или попробовать "магическую" манипуляцию с лицензиями, привязанными к MAC?

Находим текущий MAC-адрес сетевого интерфейса

Сначала давайте посмотрим на текущий MAC-адрес вашего сервера. Сделать это можно командой:

ip link show


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

1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
link/ether 45:c6:f6:a7:12:30 brd ff:ff:ff:ff:ff:ff
3: enp0s12e2: mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000
link/ether 33:23:f8:8b:d7:65 brd ff:ff:ff:ff:ff:ff


Как мы видим, у интерфейса enp0s12e2 текущий MAC-адрес — это 33:23:f8:8b:d7:65. Давайте его поменяем.

Меняем MAC с помощью Macchanger

Установка Macchanger
Macchanger — это простая утилита для просмотра, изменения и управления MAC-адресами на ваших сетевых интерфейсах. Она доступна почти на всех Linux-системах.

Для установки Macchanger используйте следующие команды:

Fedora, CentOS или RHEL:

sudo dnf install macchanger


Debian, Ubuntu, Linux Mint или Kali Linux:

sudo apt install macchanger


Использование Macchanger

Помните имя интерфейса enp0s12e2? Чтобы присвоить этому интерфейсу случайный MAC-адрес, используйте команду:

sudo macchanger -r enp0s12e2


После смены, проверьте, что MAC-адрес изменился командой:

ip addr


Чтобы присвоить конкретный MAC-адрес, примените команду:

sudo macchanger --mac=XX:XX:XX:XX:XX:XX enp0s12e2


Где XX:XX:XX:XX:XX:XX — это нужный вам MAC-адрес. Если нужно вернуть MAC-адрес устройства к его изначальному значению, используйте:

sudo macchanger -p enp0s12e2


Меняем MAC с помощью iproute

Если по какой-то причине вы не хотите использовать Macchanger, можно воспользоваться командой iproute.

Выключите интерфейс:

sudo ip link set dev enp0s12e2 down


Присвойте новый MAC-адрес:

sudo ip link set dev enp0s12e2 address XX:XX:XX:XX:XX:XX


Включите интерфейс обратно:

sudo ip link set dev enp0s12e2 up


Проверьте статус:

ip link show enp0s12e2
👍211
Если бы врачи работали, как сисадмины 😅
🤣29👍3🤔2👎1
Руководство по использованию FFmpeg в Linux

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

Рассмотрим, как установить FFmpeg в Ubuntu и других дистрибутивах Linux, а также приведем несколько полезных команд для работы с этим инструментом.

Установка FFmpeg в Ubuntu и других дистрибутивах Linux

FFmpeg обычно доступен в официальных репозиториях Ubuntu и Debian, поэтому установка очень проста. Выполните следующую команду:

sudo apt update
sudo apt install ffmpeg


Установка в CentOS, RHEL и Fedora

Для установки FFmpeg в CentOS или RHEL необходимо сначала добавить репозиторий EPEL:

sudo yum install epel-release


Затем установите FFmpeg:

sudo yum install ffmpeg ffmpeg-devel


На Fedora:

sudo dnf install ffmpeg


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

Чтобы убедиться, что FFmpeg установлен правильно, выполните команду:

ffmpeg -version


Если FFmpeg установлен, вы увидите информацию о версии и конфигурации.

Основные команды FFmpeg

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

Конвертация видео в другой формат

Чтобы преобразовать видео из одного формата в другой (например, из MP4 в AVI):

ffmpeg -i input.mp4 output.avi


Извлечение аудио из видео

Чтобы извлечь аудиодорожку из видео и сохранить её в формате MP3:

ffmpeg -i input.mp4 -q:a 0 -map a output.mp3


Для изменения разрешения видео используйте следующую команду:

ffmpeg -i input.mp4 -vf scale=1280:720 output.mp4


Объединение нескольких видеофайлов

Сначала создайте текстовый файл file_list.txt со списком видео для объединения:

file 'video1.mp4'
file 'video2.mp4'
file 'video3.mp4'


Затем используйте FFmpeg для объединения видео:

ffmpeg -f concat -safe 0 -i file_list.txt -c copy output.mp4


Чтобы создать видео из серии изображений:

ffmpeg -framerate 1/5 -i img%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4


Для сжатия видео с сохранением качества:

ffmpeg -i input.mp4 -vcodec libx265 -crf 28 output.mp4


Чтобы вырезать часть видео, например, с 00:01:00 до 00:02:00:

ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:00 -c copy output.mp4
👍23🔥3