Сторонние приложения¶
Как активировать аппаратное ускорение в браузере Firefox?¶
Для активации аппаратного ускорения рендеринга страниц в Mozilla Firefox на поддерживаемых драйверах необходимо открыть модуль конфигурации about:config
и исправить значения следующих переменных (при отсутствии создать):
layers.acceleration.force-enabled = true
webgl.force-enabled = true
gfx.webrender.enabled = true
gfx.webrender.all = true
dom.webgpu.enabled = true
Изменения вступят в силу при следующем запуске браузера.
Внимание! Это не затрагивает аппаратное декодирование мультимедиа средствами видеоускорителя.
Как активировать аппаратное ускорение декодирования мультимедиа в браузерах?¶
Поддерживаемые веб-браузеры:
Как активировать аппаратное ускорение декодирования мультимедиа в Firefox?¶
Начиная с версии Firefox 77.0, аппаратное ускорение декодирования мультимедиа доступно для сеанса Wayland, а с Firefox 81.0 и для X11.
Установим полный набор кодеков, а также VA-API драйверы из репозитория RPM Fusion.
Откроем модуль конфигурации about:config
и изменим значения следующих переменных (при отсутствии создадим):
widget.wayland-dmabuf-vaapi.enabled = true
media.ffmpeg.vaapi.enabled = true
media.ffmpeg.low-latency.enabled = true
media.navigator.mediadatadecoder_vpx_enabled = true
В случае использования сеанса на базе Wayland ввиду известной ошибки отключим встроенную песочницу для декодировщика мультимедиа (это значительно снизит безопасность браузера):
media.ffvpx.enabled = false
media.rdd-ffvpx.enabled = false
media.rdd-vpx.enabled = false
Перезапустим браузер для вступления изменений в силу.
Как активировать аппаратное ускорение декодирования мультимедиа в Chromium?¶
Начиная с версии Chromium 110, аппаратное ускорение декодирования мультимедиа включено по умолчанию в Fedora.
Установим полный набор кодеков, а также VA-API драйверы из репозитория RPM Fusion.
Далее зайдём в chrome://flags
и установим для пункта Hardware decoding значение Enabled, после чего перезапустим браузер для вступления изменений в силу.
В каких проигрывателях реализовано аппаратное ускорение декодирования мультимедиа?¶
Полная поддержка аппаратного декодирования мультимедиа средствами VA-API (AMD, Intel, NVIDIA) или VPDAU (NVIDIA) реализована в проигрывателях VLC и mpv.
Для активации данной функции необходимо в качестве графического бэкэнда вывода изображения указать vaapi или vdpau, после чего перезапустить плеер.
Как получить информацию о поддерживаемых VA-API форматах видео?¶
Установим утилиту vainfo:
sudo dnf install libva-utils
Выведем информацию о поддерживаемых форматах и профилях:
vainfo
Как лучше установить Telegram Desktop в Fedora?¶
Мы настоятельно рекомендуем устанавливать данный мессенджер исключительно из RPM Fusion:
sudo dnf install telegram-desktop
Данная версия собрана и динамически слинкована с использованием исключительно штатных системных библиотек, доступных в репозиториях Fedora, а не давно устаревших и уязвимых версий из комплекта Ubuntu 14.04, как официальная.
Сборка Fedora поддерживает системные настройки тем, правильное сглаживание шрифтов (за счёт использование общесистемных настроек) и не имеет проблем со скоростью запуска.
Ранее я устанавливал официальную версию Telegram Desktop. Как мне очистить её остатки?¶
Официальная версия с сайта создаёт ярлыки запуска и копирует ряд загруженных бинарных файлов в пользовательский домашний каталог. Избавимся от этого:
удалим старый бинарник и модуль обновления официального клиента, а также их копии из
~/.local/share/TelegramDesktop
и~/.local/share/TelegramDesktop/tdata
;удалим ярлыки из
~/.local/share/applications
.
Теперь можно установить версию из RPM Fusion.
Как активировать все доступные кодеки мультимедиа браузерах?¶
Браузеры Mozilla Firefox и Chromium из официального репозитория Fedora использует ffmpeg для работы с мультимедийным контентом, поэтому подключим RPM Fusion и произведём установку пакета ffmpeg-libs.
Вариант для стандартных версий Fedora с любыми рабочими средами:
sudo dnf install ffmpeg-libs --allowerasing
Вариант для неизменяемых систем, основанных на ostree, например Silverblue:
rpm-ostree override remove libavcodec-free libavfilter-free libavformat-free libavutil-free libpostproc-free libswresample-free libswscale-free --install ffmpeg-libs
В репозиториях есть полнофункциональные редакторы LaTeX?¶
Да. Для работы с документами в формате LaTeX рекомендуется использовать texmaker:
sudo dnf install texmaker
Как установить поддержку кириллических шрифтов для LaTeX?¶
Наборы кириллических шрифтов доступны в виде коллекции:
sudo dnf install texlive-collection-langcyrillic texlive-cyrillic texlive-russ texlive-babel-russian
Как скачать видео с Youtube?¶
Скачать любое интересующее видео с Youtube, а также ряда других хостингов, можно посредством утилиты yt-dlp, доступной в основном репозитории Fedora:
sudo dnf install yt-dlp
Скачивание видео с настройками по умолчанию в наилучшем качестве:
yt-dlp https://www.youtube.com/watch?v=XXXXXXXXXX
Иногда при скачивании видео в разрешении 4K с ключом -f bestvideo
может не работать аппаратное ускорение при воспроизведении из-за того, что кодек vp9.2 не поддерживается аппаратными кодировщиками. В таких случаях необходимо явно указывать кодек (-f bestvideo[vcodec=vp9]
).
Чтобы гарантировано скачать видео с указанным кодеком со звуком требуется дополнительно установить пакет ffmpeg из репозиториев RPM Fusion:
sudo dnf install ffmpeg
В качестве примера скачаем видео в наилучшем качестве, сжатое кодеком VP9 (с возможностью аппаратного ускорения) и звуком:
yt-dlp -f bestvideo[vcodec=vp9]+bestaudio https://www.youtube.com/watch?v=XXXXXXXXXX
Поддерживается автоматическое удаление спонсорских интеграций из видеоряда на основе базы данных SponsorBlock, активируемое параметром --sponsorblock-remove=sponsor
:
yt-dlp -f bestvideo+bestaudio --sponsorblock-remove=sponsor https://www.youtube.com/watch?v=XXXXXXXXXX
Данная утилита имеет множество параметров командной строки, справку по которым можно найти в её странице man:
man yt-dlp
Для выхода из окна просмотра справки достаточно нажать Q.
Как из Fedora записать образ с MS Windows на флешку?¶
К сожалению, штатный способ записи посредством использования утилиты dd не сработает в случае ISO образов MS Windows, поэтому для этого следует применять утилиту WoeUSB:
sudo dnf install WoeUSB
Как конвертировать текстовый файл из одной кодировки в другую?¶
Для быстрой перекодировки текстовых файлов из одной кодировки в другую можно использовать утилиту iconv.
Пример перекодировки файла из cp1251 (Windows-1251) в юникод (UTF-8):
iconv -f cp1251 -t utf8 test.txt > result.txt
Здесь test.txt -- исходный файл с неправильной кодировкой, а result.txt используется для записи результата преобразования.
Как подключить смартфон на Android посредством протокола MTP?¶
Для простой и удобной работы с файловой системой смартфона вне зависимости от используемых приложений, рабочей среды и файлового менеджера, мы рекомендуем использовать основанную на FUSE реализацию.
Установим пакет jmtpfs:
sudo dnf install jmtpfs fuse
Создадим каталог, в который будет смонтирована ФС смартфона:
mkdir -p ~/myphone
Подключим устройство к компьютеру или ноутбуку по USB, разблокируем его и выберем режим MTP, после чего выполним:
jmtpfs ~/myphone
По окончании работы обязательно завершим MTP сессию:
fusermount -u ~/myphone
Как лучше работать со смартфоном посредством компьютера или ноутбука?¶
Для простой и эффективной работы со смартфоном на базе ОС Android пользователи рабочей среды KDE Plasma 5 могут использовать KDE Connect:
sudo dnf install kde-connect
Сначала установим клиент KDE Connect на смартфон:
Запустим плазмоид KDE Connect и выполним сопряжение.
KDE Connect не видит мой смартфон. Как исправить?¶
Добавим правило, разрешающее входящие соединения к сервису kdeconnectd посредством Firewalld:
sudo firewall-cmd --add-service=kdeconnect --permanent
Применим новые правила:
sudo firewall-cmd --reload
Как добавить новый тип файлов в меню Создать в Dolphin?¶
Сначала получим пути, в которых KDE пытается обнаружить ярлыки шаблонов новых файлов:
kf5-config --path templates
По умолчанию это ~/.local/share/templates
и он не существует, поэтому создадим его:
mkdir -p ~/.local/share/templates
В качестве примера сохраним в любом каталоге новый шаблон xml-document.xml
примерно следующего содержания:
<?xml version="1.0" encoding="utf-8" ?>
<root>
</root>
В каталоге шаблонов KDE добавим ярлык xml-document.desktop
на созданный ранее файл:
[Desktop Entry]
Icon=application-xml
Name[ru_RU]=Документ XML
Name=XML document
Type=Link
URL[$e]=file:$HOME/Templates/xml-document.xml
Здесь Icon -- значок для новой строки, Name -- название новой строки с поддержкой локализации, а URL -- полный путь к файлу шаблона.
Изменения вступят в силу немедленно и через несколько секунд в меню Создать файлового менеджера Dolphin появится новый пункт.
Как добавить новый тип файлов в меню Создать в Nautilus?¶
В отличие от Dolphin в KDE, Nautilus в Gnome ищет файлы шаблонов в стандартном каталоге $XDG_TEMPLATES_DIR. Получим путь к нему:
xdg-user-dir TEMPLATES
Создадим новый файл XML document.xml
следующего содержания:
<?xml version="1.0" encoding="utf-8" ?>
<root>
</root>
Изменения вступят в силу немедленно и через несколько секунд в меню Создать файлового менеджера Nautilus появится новый пункт.
Как конвертировать множество файлов в mp3 из текущего каталога?¶
Конвертируем все файлы с маской *.ogg в mp3 в текущем каталоге:
find . -maxdepth 1 -type f -name "*.ogg" -exec ffmpeg -i "{}" -acodec mp3 -ab 192k "$(basename {}).mp3" \;
Как убрать рамки внутри окон в KDE Plasma 5?¶
Для этого следует открыть Меню KDE -- Компьютер -- Параметры системы -- Оформление приложений -- страница Стиль интерфейса -- кнопка Настроить -- вкладка Рамки, убрать все флажки из чекбоксов на данной странице и нажать кнопку OK.
Как обновить кэш значков приложений в главном меню KDE Plasma 5?¶
Обычно кэш обновляется автоматически при любых изменениях файлов внутри каталогов /usr/share/applications
(глобально), а также ~/.local/share/applications
(пользователь), однако если по какой-то причине этого не произошло, выполним обновление кэшей вручную:
kbuildsycoca5 --noincremental
В установленном Thunderbird не обновляются языковые пакеты. Как исправить?¶
Проблема заключается в том, что системные расширения и пакеты с переводами должны копироваться в профиль пользователя при каждом обновлении клиента, но RPM пакетам запрещено вносить любые изменения в домашние каталоги пользователей, поэтому они автоматически не обновляются.
Чтобы исправить проблему необходимо и достаточно создать символические ссылки на XPI файлы, обновляемые пакетом.
Удалим старые файлы из профилей Thunderbird:
rm -f ~/.thunderbird/*/extensions/langpack-ru@thunderbird.mozilla.org.xpi
Создадим символические ссылки на месте удалённых XPI файлов:
ln -s /usr/lib64/thunderbird/distribution/extensions/langpack-ru@thunderbird.mozilla.org.xpi ~/.thunderbird/*/extensions/langpack-ru@thunderbird.mozilla.org.xpi
Перезапустим Thunderbird для того, чтобы изменения вступили в силу.
Как распознать QR-код или штрих-код из консоли?¶
Для распознавания бар-кода на изображении и получения его содержимого воспользуемся пакетом zbar:
sudo dnf install zbar
Применим утилиту zbarimg для получения содержимого кодов внутри файла изображения foo-bar.png
:
zbarimg --noxml foo-bar.png
Результат (или результаты (по одному на каждый обнаруженный бар-код)) будут выведены в консоль.
Как можно распознать текст с изображения или сканера?¶
Для получения текста из файлов изображений, либо PDF, можно воспользоваться системой оптического распознавания символов Tesseract, а также графической утилитой gImageReader.
Установим Tesseract и набор файлов для русского языка:
sudo dnf install tesseract tesseract-langpack-rus
Установим утилиту gImageReader с интерфейсом на Qt (для пользователей KDE, LXQt):
sudo dnf install gimagereader-qt
Установим утилиту gImageReader с интерфейсом на GTK3 (для пользователей Gnome, XFCE, LXDE, Mate, Cinnamon и т.д.):
sudo dnf install gimagereader-gtk
Запустим gImageReader, в левой боковой панели выберем отсканированный файл (для наилучших результатов разрешение при сканировании должно быть не меньше 300 DPI), PDF, либо устройство сканирования, зададим режим распознавания и используемые в документе языки, затем нажмём кнопку Распознать всё.
Результат может быть сохранён в файл с панели результатов распознавания.
При распаковке Zip архива появляются кракозябры вместо имён файлов. Как исправить?¶
Zip-архивы, созданные штатными средствами ОС Windows, сохраняют имена файлов внутри архива исключительно в однобайтовой кодировке системы по умолчанию (в русской версии это Windows-1251 (cp1251), в английской -- Windows-1252 (cp1252)), поэтому при распаковке таких архивов вместо русских букв будут отображаться кракозябры.
Утилита unzip поддерживает явное указание кодировки, поэтому воспользуемся данной функцией:
unzip -O cp1251 foo-bar.zip -d /path/to/destination
Здесь cp1251 -- кодировка имён файлов, foo-bar.zip -- имя архива, а /path/to/destination -- каталог, в который он будет распакован.
Стоит ли переносить кэши браузеров в tmpfs?¶
Да, т.к. это даёт следующие преимущества:
очень быстрый доступ особенно при случайном чтении;
отсутствует необходимость в ручной очистке, т.к. это будет сделано автоматически при перезагрузке системы.
Как перенести кэш браузера Firefox в tmpfs?¶
В Fedora каталог /tmp по умолчанию монтируется в tmpfs, поэтому осуществим перенос кэшей данного браузера именно в него:
запустим Firefox и откроем страницу
about:config
;найдём в списке переменную
browser.cache.disk.parent_directory
(при отсутствии создадим) и присвоим ему строковое значение/tmp/firefox
;чтобы кэш очень сильно не разрастался, укажем в переменной
browser.cache.disk.capacity
(тип целое) максимальный размер в килобайтах, например262144
(256 МБ);перезапустим браузер для применения новых изменений.
Как скачать веб-страницу рекурсивно?¶
Для рекурсивного скачивания статических веб-страниц можно использовать wget в специальном режиме.
Запустим скачивание ресурса example.org:
wget --random-wait -r -p -e robots=off -U "Mozilla/5.0 (X11; Linux x86_64; rv:100.0) Gecko/20100101 Firefox/100.0" https://example.org
Рекурсивное скачивание может занять много времени и места на диске. Настоятельно не рекомендуется использовать этот режим на ресурсах с динамическим контентом.
Как извлечь метаданные EXIF из файла изображения?¶
Установим пакет ImageMagick:
sudo dnf install ImageMagick
Осуществим извлечение метаданных EXIF файла foo-bar.jpg:
identify -verbose foo-bar.jpg
Как проверить действительность ссылок в закладках без сторонних расширений?¶
Проверить действительность любых ссылок, указанных в файле, можно средствами wget в режиме spider.
Запустим веб-браузер и экспортируем список закладок в файл, совместимый с форматом Netscape Bookmarks. В Firefox это можно сделать так:
Закладки -- Показать все закладки;
Импорт и резервные копии -- Экспорт закладок в HTML файл;
сохраняем файл bookmarks.html в любом каталоге.
Перейдём в каталог, в котором находится файл bookmarks.html и запустим проверку:
wget --spider --force-html --no-verbose --tries=1 --timeout=10 -i bookmarks.html
В зависимости от размера файла процесс проверки может занять очень много времени.
Как установить Steam в Fedora?¶
Подключим репозитории RPM Fusion (как free, так и nonfree), после чего установим его:
sudo dnf install steam
Ярлык запуска клиента Steam появится в главном меню используемой графической среды.
Откуда правильно устанавливать расширения для Gnome Shell?¶
Расширения для Gnome Shell можно устанавливать как в виде пакета из репозиториев, так и напрямую из Магазина расширений Gnome. Разница лишь в том, что расширения, установленные пакетом, будут доступны сразу для всех пользователей системы.
Рекомендуется устанавливать расширения из Магазина, т.к. многие пакеты очень редко получают обновления.
Как разрешить установку расширений Gnome Shell из веб-браузера?¶
Для того, чтобы разрешить установку расширений Gnome Shell из браузеров, необходимо установить соответствующий пакет:
sudo dnf install gnome-shell-browser
Также данное дополнение можно установить и вручную:
Как разрешить установку расширений KDE Plasma из веб-браузера?¶
Для того, чтобы разрешить установку расширений оболочки KDE Plasma из браузеров, необходимо установить соответствующий пакет:
sudo dnf install plasma-browser-integration
Также данное дополнение можно установить и вручную:
Как вернуть классический системный лоток (трей) в Gnome Shell?¶
Начиная с Gnome 3.26, из области уведомлений оболочки была удалена поддержка классического системного лотка, поэтому многие приложения при закрытии или сворачивании могут не завершать свою работу, а продолжать работать в фоне без отображения видимого окна.
Восстановить трей можно посредством установки одного из расширений Gnome Shell:
AppIndicator Support (также доступно в виде пакета
gnome-shell-extension-appindicator
в репозиториях);TopIcons Plus (также доступно в виде пакета
gnome-shell-extension-topicons-plus
в репозиториях).
Как вернуть классический рабочий стол в Gnome Shell?¶
Начиная с Gnome 3.28, поддержка рабочего стола с возможностью размещения на нём файлов, либо ярлыков приложений, была удалена.
Восстановить классический рабочий стол можно при помощи установки расширения Gnome Shell Desktop Icons (также доступно в виде пакета gnome-shell-extension-desktop-icons
в репозиториях).
Как упаковать содержимое каталога в архив с разделением на части, пригодные для записи на диск?¶
Установим пакет p7zip:
sudo dnf install p7zip
Упакуем содержимое текущего каталога в 7-Zip архив с использованием алгоритма сжатия LZMA2 c разбиением на тома размером 4480 МБ (для размещения на DVD носителях):
7za a -m0=LZMA2 -mx9 -r -t7z -v4480m /path/to/archive.7z
Как настроить автоматическое обновление Kerberos-тикетов в Gnome?¶
Актуальные версии среды Gnome поддерживают автоматическое обновление Kerberos-тикетов "из коробки".
Откроем настройки Gnome, выберем пункт Онлайн учётные записи, нажмём кнопку с символом + для добавления нового, в конце списка выберем вариант Другие, а затем Enterprise login (Kerberos).
В появившемся окне введём авторизационные данные и подтвердим добавление аккаунта.
Как запустить фоновый клиент для загрузки торрентов?¶
Установим Transsmission в виде сервиса:
sudo dnf install transmission-daemon
Установим "тонкий клиент" Transsmission Remote:
sudo dnf install transmission-remote-gtk
Активируем и запустим сервер:
sudo systemctl enable --now transmission-daemon.service
В Firewalld разрешим входящие BitTorrent подключения:
sudo firewall-cmd --add-service=transmission-client --permanent
Запустим "тонкий клиент", подключимся к серверу 127.0.0.1:9091, перейдём в Опции -- Настройки сервера и внесём свои правки, указав например каталог для загрузок.
Изменения вступают в силу немедленно. Сервер будет запускаться автоматически при каждой загрузке системы и сразу же осуществлять загрузку, либо раздачу торрентов.
Как сбросить все настройки Gnome Shell?¶
Чтобы сбросить все настройки Gnome и Gnome Shell, выполним:
dconf reset -f /
Это действие удалит все настройки Gnome, включая приложения, использующие dconf для хранения пользовательских настроек, аккаунтов и т.д., параметры системы, настройки среды, установленные темы и расширения и т.д. Перед использованием рекомендуется создать резервную копию.
При следующем входе будут восстановлены значения по умолчанию.
Как построить дерево каталогов и сохранить его в файл?¶
Для построения дерева каталогов воспользуемся утилитой tree, затем перенаправим вывод в файл:
tree /path/to/directory > ~/foo-bar.txt
Здесь /path/to/directory -- путь к каталогу, дерево которого нужно построить, а ~/foo-bar.txt -- файл, в котором будет сохранён результат.
Как из терминала удалить файл в корзину?¶
Для удаления в корзину из оболочки воспользуемся утилитой gio:
gio trash /path/to/file.txt
Можно ли входить в IRC сеть LiberaChat без ввода пароля?¶
Да, сеть LiberaChat поддерживает вход по ключам.
Создадим каталог для хранения ключей HexChat:
mkdir -p ~/.config/hexchat/certs
Воспользуемся утилитой openssl, чтобы сгенерировать новую ключевую пару:
openssl req -x509 -new -newkey rsa:4096 -sha256 -days 1825 -nodes -out ~/.config/hexchat/certs/liberachat.pem -keyout ~/.config/hexchat/certs/liberachat.pem
Будут заданы стандартные вопросы. На них можно отвечать как угодно (сервер не проверяет валидность данных), за исключением Common Name (зарегистрированный ник в сети LiberaChat) и Email Address (привязанный к учётной записи адрес электронной почты).
Установим корректный chmod:
chmod 0400 ~/.config/hexchat/certs/liberachat.pem
Запустим HexChat, откроем список сетей и убедимся, что FreeNode называется liberachat (в нижнем регистре; важно, чтобы имя файла сертификата соответствовало названию сети). Если это не так, нажмём F2 и осуществим переименование.
Зайдём в расширенные настройки сети liberachat, укажем в качестве основного сервера irc.liberachat.net/6697
(остальные лучше вообще удалить), затем установим следующие параметры:
флажок соединяться только с выделенным сервером -- включено;
флажок использовать SSL для всех серверов в этой сети -- включено;
метод авторизации -- SASL external (cert).
Получим SHA1 отпечаток созданного сертификата:
openssl x509 -in ~/.config/hexchat/certs/freenode.pem -outform der | sha512sum -b | cut -d' ' -f1
Подключимся к серверу, затем авторизуемся в системе:
/ns identify PASSWORD
Добавим SHA1 отпечаток сертификата в доверенные:
/ns cert add XXXXXXXXXX
Здесь PASSWORD -- текущий пароль пользователя, а XXXXXXXXXX -- отпечаток сертификата.
Теперь можно отключиться и подключиться заново. Вход будет выполнен уже безопасным способом без использования паролей.
В меню KDE перестали отображаться значки приложений и документов. Как исправить?¶
Исчезновение значков приложений, либо документов в меню KDE Plasma 5 часто происходит при повреждении баз данных компонента KDE activity manager.
Произведём удаление старых баз (при необходимости можно сделать резервную копию):
rm -rf ~/.local/share/kactivitymanagerd
При следующем входе в систему все настройки Kickoff будут сброшены, включая страницу Избранное и при этом должна восстановиться его правильная работа.
Как сжать базы данных sqlite браузера Firefox?¶
Браузер Mozilla Firefox сохраняет данные внутри стандартных баз sqlite3, поэтому даже после очистки истории, cookies, кэшей и т.д. их размер на диске не уменьшается, т.к. данные в них лишь помечаются удалёнными, а непосредственная очистка (vacuum) производится по таймеру во время простоя несколько раз в месяц.
Сжать все базы данных можно и вручную. Для этого установим пакет sqlite:
sudo dnf install sqlite
Убедимся, что Firefox не запущен, затем выполним команду vaccuum для всех sqlite файлов внутри локальных профилей браузера:
find ~/.mozilla/firefox -name "*.sqlite" -exec sqlite3 "{}" VACUUM \;
Это действие абсолютно безопасно, т.к. физически удаляет лишь те данные, которые в них были помечены в качестве удалённых.
Как безопасно проверить объём накопителя?¶
Установим пакет f3:
sudo dnf install f3
Подключим накопитель и смонтируем его, затем начнём проверку:
f3write /media/foo-bar
По окончании работы осуществим проверку записанных данных:
f3read /media/foo-bar
Если проверки прошли успешно, накопитель имеет действительный объём.
Удалим созданные проверочные данные:
find /media/foo-bar -name *.h2w -delete \;
Здесь /media/foo-bar -- точка монтирования накопителя, объём которого требуется проверить.
Как выполнить глубокую проверку объёма накопителя?¶
Установим пакет f3:
sudo dnf install f3
Подключим накопитель, но не будем его монтировать.
Внимание! Все данные с этого устройства будет безвозвратно потеряны.
Запустим глубокую проверку:
sudo f3probe --destructive --time-ops /dev/sdb
Здесь /dev/sdb -- устройство, объём которого требуется проверить.
После завершения процесса потребуется заново создать раздел и файловую систему на проверяемом устройстве при помощи таких утилит, как GParted, Gnome Disks, KDE Disk Manager и т.д.
Как из документа в формате Markdown создать PDF?¶
Установим универсальный конвертер документов pandoc:
sudo dnf install pandoc
Установим движок xelatex:
sudo dnf install texlive-xetex
Преобразуем документ foo-bar.md
из формата Markdown в PDF:
pandoc foo-bar.md --pdf-engine=xelatex --variable papersize=a4 --variable fontsize=12pt --variable mathfont="DejaVu Sans" --variable mainfont="DejaVu Serif" --variable sansfont="DejaVu Sans" --variable monofont="DejaVu Sans Mono" -o foo-bar.pdf
Допускается указать любые установленные в системе OpenType шрифты.
Как из консоли получить размер каталога вместе со всем его содержимым?¶
Выведем общий размер каталога в человеко-читаемом формате, включая вложенные объекты:
du -sh ~/foo-bar
Как из консоли вывести список десяти самых крупных каталогов?¶
Вывыдем список десяти самых крупных каталогов:
du -hs /path/to/directory/* 2>/dev/null | sort -rh | head -10
Здесь /path/to/directory -- начальный каталог.
Как вывести содержимое каталога в графическом виде?¶
В графическом режиме для визуализации содержимого каталога могут применяться такие утилиты, как Baobab (Gnome, GTK), либо Filelight (KDE, Qt).
Установим Baobab (для пользователей Gnome или других DE, основанных на GTK):
sudo dnf install baobab
Установим Filelight (для пользователей KDE):
sudo dnf install filelight
Как перезапустить зависшую оболочку KDE Plasma 5?¶
Перезапустим KDE Plasma 5:
kquitapp5 plasmashell && kstart plasmashell
Как перезапустить оконный менеджер KDE Plasma 5?¶
Перезапустим оконный менеджер KWin, работающий поверх X11:
kwin_x11 --replace &>/dev/null &
Перезапустим оконный менеджер KWin, работающий поверх Wayland:
kwin_wayland --replace &>/dev/null &
Как перезапустить зависшую оболочку Gnome Shell?¶
Перезапустим Gnome Shell:
gnome-shell --replace
Как сохранить контрольные суммы файлов в каталоге рекурсивно?¶
Cгенерируем файл с контрольными суммами SHA2 (SHA-512) содержимого текущего каталога при помощи утилит find и sha512sum:
find -type f \( -not -name 'sha512sum.txt' \) -exec sha512sum '{}' \; > sha512sum.txt
Результат будет сохранён в файле с именем sha512sum.txt.
Как проверить контрольные суммы файлов в каталоге?¶
Проверим контрольные суммы SHA2 (SHA-512), сохранённые в sha512sum.txt:
sha512sum -c sha512sum.txt > check_results.txt
Для удобства перенаправим вывод в файл check_results.txt ибо он может быть очень большим и не поместиться на экране.
Как вывести список не совпадающих с сохранёнными контрольными суммами файлов?¶
Проверим контрольные суммы SHA2 (SHA-512), сохранённые в sha512sum.txt и выведем лишь те, проверка которых завершилась неудачно:
sha512sum -c sha512sum.txt | grep -v 'OK'
Для удобства перенаправим вывод в файл failed_results.txt ибо он может быть очень большим и не поместиться на экране:
sha512sum -c sha512sum.txt | grep -v 'OK' > failed_results.txt
Как переопределить тему в Qt приложениях?¶
Воспользуемся переменными окружения для переопределения темы Qt:
QT_STYLE_OVERRIDE=adwaita QT_QPA_PLATFORMTHEME=qgnomeplatform /usr/bin/foo-bar
Как правильно установить Wine в Fedora?¶
В основном репозитории Fedora всегда находится самый свежий и правильно опакеченный выпуск Wine, поэтому подключать какие-либо сторонние репозитории, в т.ч. официальный от WineHQ, категорически не рекомендуется.
Установим Wine из репозитория Fedora:
sudo dnf install wine wine.i686
Как правильно установить dxvk для Wine из репозиториев?¶
Наряду с правильно опакеченным Wine, в основном репозитории Fedora доступен и dxvk.
Установим dxvk с поддержкой DirectX 10, 11:
sudo dnf install wine-dxvk wine-dxvk.i686
Установим dxvk с поддержкой DirectX 9:
sudo dnf install wine-dxvk-d3d9 wine-dxvk-d3d9.i686
Как сделать Chromium браузером по умолчанию в KDE?¶
Для того, чтобы назначить Chromium браузером по умолчанию, выполним Параметры системы -- Приложения -- Приложения по умолчанию -- Браузер -- установим точку около в следующем приложении, затем в выпадающем списке выберем Chromium и нажмём кнопку Применить.
Однако, даже если указанное действие сделано верно, Chromium всё равно будет предлагать установить его браузером по умолчанию при каждом запуске, т.к. он проверяет привязку не только к протоколам, но и к конкретным mime-типам для HTML-файлов.
Чтобы избавиться от данного сообщения, повторно откроем Параметры системы -- Приложения -- Привязки файлов, в строке поиска введём html
и переместим Chromium в самый верх списка приоритетов для xhtml+xml и html. Нажмём Применить.
Что такое earlyoom и почему он установлен по умолчанию?¶
В Fedora 32 и 33, в редакции Workstation, предустановлен пакет earlyoom, который представляет собой систему раннего предотвращения нехватки памяти из пользовательского режима (user-space OOM Killer).
В случаях, когда объём доступной оперативной памяти опустится ниже 4% или 400 МБ (в зависимости от того, что меньше), earlyoom принудительно завершит работу процесса, наиболее активно потребляющего память (имеющего самое высокое значение oom_score), не доводя систему до очистки системных буферов и вызова ядерного OOM Killer.
Наиболее приоритетными кандидатами на завершение являются процессы Web Content браузера Mozilla Firefox. В то же время, снижен приоритет для различных системных сервисов, критичных для работы системы.
Как активировать earlyoom?¶
Установим пакет earlyoom (для версий, отличных от Workstation):
sudo dnf install earlyoom
Активируем его сервис (будет запускаться вместе с системой):
sudo systemctl enable --now earlyoom.service
Как отключить earlyoom?¶
Отключим earlyoom (не будет запускаться вместе с системой):
sudo systemctl disable --now earlyoom.service
Удалим пакет earlyoom:
sudo dnf remove earlyoom
Внимание! Если удалить пакет earlyoom в Fedora 32 и 33, он может быть установлен заново из-за включённых по умолчанию слабых зависимостей.
Как настроить earlyoom?¶
Параметры earlyoom хранятся в файле /etc/default/earlyoom
.
Откроем его в текстовом редакторе:
sudoedit /etc/default/earlyoom
Внесём правки, сохраним изменения, а затем перезапустим сервис:
sudo systemctl restart earlyoom.service
Подробную документацию о всех поддерживаемых опциях можно найти в man earlyoom
.
Что такое systemd-oomd?¶
Начиная с Fedora 34, во всех редакциях активирован по умолчанию сервис systemd-oomd.
Как и earlyoom, он представляет собой систему раннего предотвращения нехватки памяти из пользовательского режима (user-space OOM Killer).
Как отключить systemd-oomd?¶
Отключим сервис systemd-oomd (не будет запускаться вместе с системой):
sudo systemctl disable --now systemd-oomd.service
Заблокируем возможность его повторной активации и запуска:
sudo systemctl mask systemd-oomd.service
Как отключить systemd-oomd и вернуться к earlyoom?¶
Выполним два простых шага:
Изменения вступят в силу немедленно.
Как открыть ISO образ в KDE?¶
Файлы образов ISO могут быть открыты архиватором Ark (sudo dnf install ark
), если они не используют файловую систему UDF.
В качестве альтернативного варианта можно установить утилиту Gnome Disks (sudo dnf install gnome-disk-utility
), после чего пункт монтирования ISO-файла появится в контекстном меню по щелчку правой кнопки мыши в Dolphin. Таким способом можно быстро смонтировать образ с любой ФС.
Что такое uresourced и почему он установлен по умолчанию?¶
Начиная с Fedora 33, в редакции Workstation предустановлен пакет uresourced, который представляет собой систему повышения отзывчивости графической оболочки.
По умолчанию данный сервис резервирует 250 МБ или 10% от общего объёма оперативной памяти (в зависимости от того, что меньше) при помощи cgroupsv2.
В результате снижается вероятность возникновения ошибок страниц за счёт исключения возможности вытеснения страниц памяти, занимаемых графической оболочкой, что в итоге и приводит к повышению отзывчивости.
Как активировать uresourced?¶
Установим пакет uresourced (для версий, отличных от Workstation):
sudo dnf install uresourced
Активируем его сервис (будет запускаться вместе с системой):
sudo systemctl enable --now uresourced.service
Как отключить uresourced?¶
Отключим uresourced (не будет запускаться вместе с системой):
sudo systemctl disable uresourced.service
Удалим пакет uresourced:
sudo dnf remove uresourced
Внимание! Если удалить пакет uresourced в Fedora Workstation, он может быть установлен заново из-за включённых по умолчанию слабых зависимостей.
Как в Firefox включить диалог загрузки и сохранения файлов от KDE?¶
По умолчанию Firefox использует диалоги открытия и сохранения файлов из GTK, однако существует возможность активации родных от используемой рабочей среды, например KDE.
Установим соответствующий пакет с порталом:
sudo dnf install xdg-desktop-portal-kde
Откроем about:config
и установим переменной widget.use-xdg-desktop-portal
значение true
.
Изменения вступят в силу немедленно.
Как заменить текстовый редактор по умолчанию Nano на Vim?¶
Призведём замену пакета, предоставляющего общесистемную конфигурацию по умолчанию:
sudo dnf swap nano-default-editor vim-default-editor --allowerasing
Данное действие затронет всех пользователей системы, явно не указавших предпочитаемый текстовый редактор при помощи переменных окружения.
Осуществим новый вход в систему для вступления изменений в силу.
Как объединить несколько PDF-файлов в один?¶
Для объединения нескольких PDF-файлов в один воспользуемся утилитой pdfjam, входящей в набор texlive.
Установим пакет texlive-pdfjam:
sudo dnf install texlive-pdfjam
Объединим файлы с именами file1.pdf -- fileN.pdf в result.pdf по схеме 3x1 (три на одной странице):
pdfjam file*.pdf --nup 3x1 --outfile result.pdf
Поддерживаются следующие схемы размещения исходников:
1x1 -- один файл на странице (по сути, простое объединение);
2x1 -- два файла;
3x1 -- три файла;
4x1 -- четыре файла.
Внимание! Если в оригиналах присутствовали цифровые подписи, они не будут перенесены в итоговый PDF.
Как изменить строку во всех файлах рекурсивно?¶
Воспользуемся утилитами find и sed для замены строки foo на bar.
Произведём поиск и замену во всех файлах каталога src:
find src -type f -exec sed -e "s/foo/bar/g" -i "{}" \;
Произведём поиск и замену в файлах, удовлетворяющих маске имени *.txt
, начиная с текущего каталога:
find -type f -name "*.txt" -exec sed -e "s/foo/bar/g" -i "{}" \;
Как изменить строку во всех файлах Git-репозитория?¶
При использовании системы контроля версий Git, не следует применять классический поиск без указания маски имени, либо начального каталога, т.к. это может повлечь за собой внесение правок в индексы, расположенные внутри служебной директории .git
, что приведёт к повреждению локальной копии репозитория.
Воспользуемся функцией Git ls-files и утилитами xargs и sed для замены строки foo на bar.
Произведём поиск и замену во всех файлах репозитория:
git ls-files | xargs sed -i -e "s/foo/bar/g"
Произведём поиск и замену в файлах репозитория, удовлетворяющих маске имени *.txt
:
git ls-files "*.txt" | xargs sed -i -e "s/foo/bar/g"
Как улучшить приватность KDE Plasma 5?¶
С настройками по умолчанию KDE activity manager отслеживает, собирает и сохраняет в базе данных SQLite ~/.local/share/kactivitymanagerd/resources/database
подробную информацию об использовании системы, включая запуск приложений, открытие документов и каталогов и т.д.
Для отключения этой функциональности перейдём в Настройки системы (System Settings) -- Рабочая среда (Workspace) -- Поведение рабочей среды (Workspace Behavior) -- Комнаты (Комнаты).
На вкладке Комнаты (Activities), справа от имени каждой существующей комнаты, выберем вариант Настроить комнату (Configure activity), в появившемся окне установим флажок в чекбокс Не запоминать статистику использования (Do not track usage for this activity) и нажмём кнопку OK.
На вкладке Конфиденциальность (Privacy), в разделе Запоминать открытые документы (Remember opened documents), установим точку около пункта Не запоминать (Do not remember), после чего нажмём Применить (Apply). Здесь же обязательно очистим все уже собранные данные при помощи Очистить историю (Clear history) -- Стереть всё (Forget everything).
Произведём очистку кэша mime-типов файлов и каталогов и при необходимости автоматизируем это действие.
Изменения вступят в силу при следующем входе в систему.
Как очистить кэш файлов и каталогов в KDE Plasma 5?¶
KDE activity manager отслеживает, собирает и сохраняет в базе данных SQLite ~/.local/share/kactivitymanagerd/resources/database
, в таблице ResourceInfo, информацию о mime-типе каждого файла или каталога, которые был открыты при помощи любого приложения из состава KDE.
Очистим данную таблицу вручную при помощи утилиты sqlite3:
sqlite3 ~/.local/share/kactivitymanagerd/resources/database 'DELETE from ResourceInfo; PRAGMA wal_checkpoint(TRUNCATE); VACUUM;'
Как автоматизировать очистку кэша файлов и каталогов в KDE Plasma 5?¶
Т.к. в настоящее время не существует возможности штатно запретить KDE activity manager накапливать данные о mime-типах, автоматизируем очистку при помощи пользовательского systemd-юнита.
Создадим и откроем файл ~/.config/systemd/user/plasma-clean-database.service
в любом текстовом редакторе:
mkdir -p ~/.config/systemd/user
touch ~/.config/systemd/user/plasma-clean-database.service
restorecon -Rv ~/.config/systemd
Добавим следующее содержимое:
[Unit]
Description=Clean KDE Activity Manager database
Before=plasma-plasmashell.service
[Service]
Type=oneshot
ExecStart=/usr/bin/sqlite3 %h/.local/share/kactivitymanagerd/resources/database 'DELETE from ResourceInfo; PRAGMA wal_checkpoint(TRUNCATE); VACUUM;'
RemainAfterExit=true
[Install]
WantedBy=graphical-session.target
Настроим его автоматический запуск:
systemctl --user daemon-reload
systemctl --user enable plasma-clean-database.service
Как добавить поддержку открытия и сохранения изображений в формате HEIF?¶
Для работы с графическими файлами в формате High Efficiency Image File, подключим репозиторий RPM Fusion и установим пакет libheif-freeworld:
sudo dnf install libheif-freeworld
Перезапустим графический редактор для вступления изменений в силу.
Как отключить аппаратное ускорение для QML-приложений?¶
Для отключения аппаратного ускорения отрисовки QML и QtQuick, зададим переменную окружения QT_QUICK_BACKEND перед его запуском:
QT_QUICK_BACKEND=software foo-bar
При необходимости отредактируем ярлык:
Exec=env QT_QUICK_BACKEND=software foo-bar