grep -vE "(^#|^$)" file.conf
После обновления на KDE Plasma 6.1, при вызове контекстного меню на рабочем столе и выборе «Завершить работу», предлагается выбор между единственным действием и отменой. Вернуть это к нормальному виду можно с помощью удаления файла «~./.config/ksmserverrc»:
Разработчики Dolphin почему-то решили, что файлы помечаемые, как бэкапы (*~, *%, *.bak, *.old, *.sik) должны считаться невидимыми и сделали отображение их зависимыми от переключателя «Показывать скрытые файлы».
Понятно, что сообщество очередной раз указало им, что если делаете глупость, делайте и возможность её игнорировать - https://bugs.kde.org/show_bug.cgi?id=475805
Но есть способ удаления MIME типа «application/x-trash», в который и занесены вышеуказанные файлы:
В файле «/usr/share/mime/packages/freedesktop.org.xml» удаляем соответствующую секцию и:
update-mime-database /usr/share/mime
Как известно, разработчики Fedora анонсировали полное отключение поддержки X11 для KDE Plasma 6 в Fedora 40. Действительно, при установке Fedora 40 отсутствует возможность запуска сеанса KDE в X11 - только в Wayland. Но есть (пока) выход:
dnf install plasma-workspace-x11
Найдено здесь...
Все параметры:
grubby --info=ALL
Параметры конкретного пункта:
grubby --info /boot/vmlinuz-6.4.7-200.fc38.x86_64
Удалить и добавить аргументы
grubby --remove-args="argX argY" --args="argA argB" --update-kernel /boot/vmlinuz-6.4.7-200.fc38.x86_64
Обновить все пункты меню с добавлением параметров:
grubby --update-kernel=ALL --args=console=ttyS0,115200
Fedora 38
После двух минут после запуска, libvirtd останавливается и к нему невозможно подключиться ни с virsh ни с Virtual Machine Manager.
Аналогичная проблема описана в https://bugzilla.redhat.com/show_bug.cgi?id=2213660
В конфигурации службы libvirtd указан таймаут, который влияет на остановку данной службы:
grep "\[Service\]" -A 3 /usr/lib/systemd/system/libvirtd.service [Service] Type=notify Environment=LIBVIRTD_ARGS="--timeout 120" EnvironmentFile=-/etc/sysconfig/libvirtd
Проблема решена отключением данной опции:
echo LIBVIRTD_ARGS= > /etc/sysconfig/libvirtd && systemctl restart libvirtd
Видеокарта: RTX 3050
Драйвер: akmod-nvidia-530.41.03-1
QT_QPA_PLATFORM=xcb jami QT_QPA_PLATFORM=xcb /usr/work/current-projects/vlctv/vlctv/tvok QT_QPA_PLATFORM=xcb GDK_BACKEND=x11 kdocker -q -d 25 dolphin /net/beta/storage/capture/ /mnt/capture/Capture/ QT_QPA_PLATFORM=xcb GDK_BACKEND=x11 kdocker -q -m -d 25 thunderbird %u QT_QPA_PLATFORM=xcb krdc
xbindkeys не работает. Вместо него установлен и настроен input-remapper:
dnf copr enable sunwire/input-remapper dnf install python3-input-remapper
Запуск из меню - «Настройка/Input Remapper» https://discussion.fedoraproject.org/t/mjg-input-remapper/45688/1
Файл конфигурации:
cat "/home/oleg/.config/input-remapper-2/presets/Logitech USB Laser Mouse/Mouse middle.json" [ { "input_combination": [ { "type": 2, "code": 6, "origin_hash": "c2effc5289d9f8ebe6133958c615ac34", "analog_threshold": -1 } ], "target_uinput": "mouse", "output_symbol": "BTN_MIDDLE", "name": "Wheel Left", "mapping_type": "key_macro" } ]
Из-за периодических мерцаний части экрана, в параметры ядра добавлена опция nvidia-drm.modeset=1. Всё равно, очень редко, мерцания повторяются.
Установил кадровую частоту монитора на 50 Гц вместо 60, может будет лучше. Изменение частоты не помогло.
Вывод изображения в avidemux нормально работает только при «XVideo» и отключенных опциях «OpenGL» во вкладке «Display» в параметрах и добавленных переменных окружения QT_QPA_PLATFORM=xcb GDK_BACKEND=x11.
Попытка перехода началась 14.05.2023 и закончилась 17.05.2023. Работать в wayland в KDE с дровами NVIDIA невозможно. Постоянное мерцание экрана и неработоспособность большинства программ в этой связке. Вернулся к X11.
При попытке обновления Skype:
GPG ключ https://repo.skype.com/data/SKYPE-GPG-KEY (0xDF7587C3) уже установлен GPG ключи, перечисленные для репозитория «skype (stable)», уже установлены, но они не являются правильными для этого пакета. Проверьте, правильно ли настроены URL ключей для этого репозитория.. Сбойный пакет: skypeforlinux-8.97.0.203-1.x86_64 Ключи GPG настроены как: https://repo.skype.com/data/SKYPE-GPG-KEY Ошибка: СБОЙ проверки GPG
Как видно, проблемный кдюч имеет номер DF7587C3.
Решение:
Получить ранее сохранённый ключ:
rpm -qa | grep gpg-pubkey-$(echo DF7587C3 | tr [:upper:] [:lower:]) gpg-pubkey-df7587c3-576a5c23
Удалить ранее сохранённый ключ:
rpm -e gpg-pubkey-df7587c3-576a5c23
Обновить Skype с установкой нового ключа.
Аналогично «лечится» ошибка. типа:
Key D97A3AE911F63C51 invalid: not signing capable ошибка: rpmdbNextIterator: skipping h# 145 Заголовок V4 DSA/SHA1 Signature, key ID 11f63c51: BAD
Завершает сеанс текущего пользователя:
loginctl terminate-user $USER
Запустить:
newaliases
grep -v '^ *#\|^ *$' /etc/squid/squid.conf
dnf versionlock add <пакеты> dnf versionlock exclude <пакеты> dnf versionlock list dnf versionlock delete <пакеты> dnf versionlock clear
hostnamectl set-hostname NEWNAME
и перегрузиться.
Программа разрабатывалась на Python 3.7.5 (Fedora Linux 31) и тестировалась на Python 3.6.8 (CentOS 7) с использованием библиотек PyQT5. Версия платформы 1С:Предприятие — 8.3.15.1778.
Возможности:
lpc:localhost
или
lpc:SERVERNAME
yum history list yum history info 86 yum history undo 86
Должен быть разрешён html, а браузер должен поддерживать HTML5 (WHATWG HTML5).
Структура:
<html><details><summary>Заголовок спойлера:</summary></html> Содержимое\\ ...\\ ...\\ ...\\ <html></details></html>
Результат (закрыт по умолчанию):
Заголовок спойлера:
Содержимое
…
…
…
Результат (открыт путём добавления параметра «open» к «<details>»):
<html><details open><summary>Заголовок спойлера:</summary></html>
Заголовок спойлера:
Содержимое
…
…
…
Так-же к файлу «conf/userstyle.css», для красоты, можно добавить параметры details и summary:
details { font-weight: normal; padding: 2px 2px; border-style: solid; border-width: 1px; background-color: honeydew; } summary { padding: 1px 1px; cursor: pointer; background-color: #DCDCDC; font-weight: bold; background-color: lightcyan; }
Обнаружилось после включения компьютера. До выключения, никаких неполадок не наблюдалось. Выключение производилось через меню KDE.
Например:
# dnf Traceback (most recent call last): File "/bin/dnf", line 57, in <module> from dnf.cli import main File "/usr/lib/python3.7/site-packages/dnf/__init__.py", line 30, in <module> import dnf.base File "/usr/lib/python3.7/site-packages/dnf/base.py", line 45, in <module> import dnf.conf.read File "/usr/lib/python3.7/site-packages/dnf/conf/read.py", line 27, in <module> import dnf.repo File "/usr/lib/python3.7/site-packages/dnf/repo.py", line 32, in <module> import dnf.logging File "/usr/lib/python3.7/site-packages/dnf/logging.py", line 29, in <module> import logging.handlers File "/usr/lib64/python3.7/logging/handlers.py", line 26, in <module> import logging, socket, os, pickle, struct, time, re File "<frozen importlib._bootstrap>", line 983, in _find_and_load File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 677, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 724, in exec_module File "<frozen importlib._bootstrap_external>", line 857, in get_code File "<frozen importlib._bootstrap_external>", line 525, in _compile_bytecode ValueError: bad marshal data (unknown type code)
В данном случае помогло удаление содержимого папки
/usr/lib64/python3.7/__pycache__
Задача: Запускать задание через случайное время лежащее между 5 и 7 часами со случайными минутами.
#!/bin/sh # Случайное число для минут Minutes=$RANDOM # Через остаток от целочисленного деления получаем минуты от 0 до 59 let "Minutes %= 59" # Случайное число для часов Hours=$RANDOM # Через остаток от целочисленного деления получаем часы от 0 до 2 let "Hours %= 2" # Получаем часы от 5 до 7 let "Hours = $Hours + 5" # Получаем значение времени для следующего запуска SDate=$(date -d "+$Hours hours +$Minutes minutes" +%H:%M) # Задаём скрипт и время в команде "at" echo "/usr/bin/perl /mnt/storage/scripts/r1-scan" | at $SDate # Вывод времени следующего запуска (может пригодиться) echo $SDate
Если есть необходимость запускать скрипт, указанный в команде «at», через следующий случайный промежуток времени, необходимо в скрипте «r1-scan» сделать вызов описанного выше скрипта.
Файлы, описывающие пункты меню создаются в ~/.local/share/kservices5/ServiceMenus/ (в KDE 5) и имеют расширение «desktop»
Узнать, где расположены ServiceMenus можно командой
kf5-config --path services
Пример файла «video-convert.desktop»:
[Desktop Entry] Type=Service Actions=to-mkv-ffmpeg;to-mkv-mkvmerge;to-mkv-mencoder # Пункты подменю ServiceTypes=KonqPopupMenu/Plugin,video/.* # Пункт меню появляется при выборе видео файла X-KDE-Priority=TopLevel # Расположить в корне контекстного меню X-KDE-Submenu=Преобразовать видео... # Пункт меню, включающий подменю [Desktop Action to-mkv-ffmpeg] Exec=to-mkv-ffmpeg %u # Команда запуска Icon=preferences-desktop-display-color # Иконка Name=В MKV (ffmpeg) # Название пункта меню [Desktop Action to-mkv-mkvmerge] Exec=to-mkv-mkvmerge %u Icon=preferences-desktop-display-color Name=В MKV (mkvmerge) [Desktop Action to-mkv-mencoder] Exec=to-mkv-mencoder %u Icon=preferences-desktop-display-color Name=В MKV (mencoder)
Подробней:
[Desktop Entry] - начало описания.
Type - тип .desktop файла должен быть Service.
Actions - через точку с запятой перечисляются действия (action1;action2;), каждому из которых должен соответствовать раздел ([Desktop Action action1], [Desktop Action action2]).
ServiceTypes - mime-типы файлов, перечисляются через запятую, all/allfiles соответствует всем файлам, all/all всем файлам и каталогам, inode/directory - лишь деректориям. KonqPopupMenu/Plugin - без этого срабатыает не на всех типах файлов. Т.е. можно описать конкретные mime-типы файлов (картинки, музыка, html файлы и т.д.), в случае выбора которых, появится данный контекстный пункт. Список mime-типов можно найти здесь.
X-KDE-Submenu=подменю - этот параметр следует добавить, если хочется заключить действия в отдельное подменю с именем «подменю».
[Desktop Action имя] - описание действий контекстной строки.
Exec - команда на запуск (команда или скрипт). Полный перечень передаваемых аргументов можно найти здесь.
Icon - имя иконки. Найти подходящую можно в папке /usr/share/icons/[ваша тема]/22×22, достаточно указать имя иконки, без расширения.
Name - текст, отображаемый в качестве пункта меню.
14 января 2014г. Fedora 20.
Создаёт форму со строкой редактирования и кнопкой.
В строку редактирования передаётся первый аргумент командной строки.
При нажатии кнопки, выводится окно с сообщением, при закрытии которого, в стандартный вывод выводится содержимое строки редактирования и программа завершается.
#!/usr/bin/perl # ------------------------------------------------------------------------------------------ fMain class package fMain; use strict; use utf8; # Поддержка UTF8 в графике use Encode qw(decode); # Для преобразования командной строки use QtCore4; use QtGui4; use QtCore4::isa qw (Qt::Dialog); # Для главной формы используем класс QDialog use QtCore4::slots bRunPressed => []; # Слот для обработки нажатия кнопки my $edit; sub NEW { shift->SUPER::NEW(@_); resize (400,70); # Изменение размера главной формы $edit = Qt::LineEdit (@ARGV[0],this); # Строка редактирования с текстом, передаваемым в качестве первого параметра при запуске программы $edit->move (10,20); # Координаты строки редактирования $edit->resize (190, 22); # Размер строки редактирования my $bRun = Qt::PushButton ("Нажми меня...",this); # Кнопка $bRun->move (200,20); # Координаты кнопки $bRun->resize (190, 22); # Размер кнопки this->connect ($bRun, SIGNAL 'clicked()', SLOT 'bRunPressed()'); # При нажатии кнопки вызвать функцию } # Функция обработки нажатия кнопки sub bRunPressed { Qt::MessageBox::about (this, "Проверка", "Пример Message box."); binmode (STDOUT,':utf8'); # Вывод в консоль осуществлять в UTF8 print $edit->text()."\n"; # Вывод в консоль содержимого строки редактирования exit(); } 1; # ------------------------------------------------------------------------------------------ Main @ARGV = map {decode ("UTF8", $_)} @ARGV; # Преобразовать командную строку my $app = Qt::Application (\@ARGV); # Создать экземпляр приложения my $mainWin = fMain->new(); # Создать экземпляр окна (QDialog) $mainWin->show(); exit $app->exec();
Определяем PID и PPID:
ps -ef | grep defunct root 28122 28121 0 Sep29 ? 00:00:00 [sw-watcher] <defunct>
Прибиваем:
kill -9 28122 28121
В файле «/etc/my.cnf» в секцию «[mysqld]» добавить:
init-connect="SET NAMES utf8" skip-character-set-client-handshake default-character-set=utf8
И перезапустить mysqld.
dnf up --refresh dnf install dnf-plugin-system-upgrade dnf -y system-upgrade download --refresh --releasever=40 dnf system-upgrade reboot
Если «system-upgrade reboot» не продолжает обновление системы, а просто загружает текущую версию ОС, можно грубо заменить все пакеты на новую версию:
dnf distro-sync --releasever=40
Задача: Сменить «IPv4 WAN Адрес» в случае смены динамического адреса при ppp подключении.
Скачиваем «CLI.pm» со страницы http://www.communigate.com/CGPerl/. Помещаем его в папку модулей Perl, например, в «/usr/lib/perl5/site_perl/» (для FC 14).
В «/var/CommuniGate/bin/» создаём файл «set-network»:
#!/usr/bin/perl use CLI; my $cli = new CGP::CLI ({PeerAddr=>'localhost', PeerPort=>106, login =>'postmaster@domain.com', password=>'password-postmaster', SecureLogin=>0}) || die "Can't login to CGPro: ".$CGP::ERR_STRING."\n"; $addr=(split (" ", (split (":", `/sbin/ifconfig ppp0|grep 'inet addr:'`))[1]))[0]; $cli->SendCommand ('SETNETWORK {WANAddress="['.$addr.']";}'); $cli->SendCommand ('REFRESHOSDATA'); $cli->Logout();
PeerAddr - имя (адрес) хоста, на котором расположен CommuniGate Pro
login - Имя пользователя, имеющего права на изменение настроек сети в CommuniGate Pro
password - Пароль вышеуказанного пользователя
Скрипт так-же обновляет информацию об операционной системе, в том числе, об активных сетевых интерфейсах.
Данный скрипт необходимо запускать при переподключении ppp, например из «/etc/ppp/ip-up.local»
Так-же вышеуказанный скрипт можно использовать и после получения адреса по DHCP (вызывать из «/sbin/ifup-local»)
Данная тема затронута на багтрекере RedHat. Касается Fedora 14-x86_64.
При установке официального flash плагина от Adobe (Копия) наблюдается искажение звука при проигрывании flash во всех браузерах, использующих данный плагин (Mozilla Firefox, Google Chrome, Opera).
Для исправления необходимо установить пакет memcpy-1.1-1.fc14.x86_64.rpm (Копия).
Вариант 1. Исправление звука в конкретном приложении:
Запуск, например, firefox, должен осуществляться следующей командой:
LD_PRELOAD /opt/memcpy/memcpy.so firefox
Вариант 2. Исправление звука во всех приложениях, запускаемых пользователем:
В файл ~/.bashrc добавляется строка:
export LD_PRELOAD=/opt/memcpy/memcpy.so
В этом случае необходимо перелогиниться.
При использовании второго варианта возможно проявление проблем в каких-либо приложениях. Сам использую именно этот вариант.
Framebuffer позволяет использовать в текстовой консоли более высокое разрешение экрана (для увеличения количества знакомест на экране) и устраняет поломку русских шрифтов при переключении из X-ов в текстовую консоль. Как дополнение - позволяет смотреть видео с mplayer в текстовой консоли без X-ов.
Задача:
Включить разрешение 1024×768 с 32 битной цветностью и частотой кадров монитора 51 герц (LCD 17\«).
Необходимо передать ядру параметр \»vga=ask\« в загрузчике (при выводе меню загрузки grub нажать \»a\« и дописать через пробел \»vga=ask\«, потом нажать \»Enter\«). Будет выведен список доступных разрешений экрана (1024x768x32 = 0x318).
Варианты:
1) Дописать в строке загрузки ядра \»vga=0x318\«
kernel /boot/vmlinuz-2.6.27.24-170.2.68.fc10.x86_64 ro root=/dev/sda1 rhgb quiet vga=0x318
У меня этот вариант не пошёл (устанавливалась частота неподдерживаемая моим монитором), хотя при \»vga=ask\« режим включался корректно.
2) Пересоздать файл \»/etc/fb.modes\« для своего монитора и передать ядру \»vga=0x318\«
gtf 1024 768 51 -f > /etc/fb.modes
3) Передать ядру полную информацию о режиме:
kernel /boot/vmlinuz-2.6.27.24-170.2.68.fc10.x86_64 ro root=/dev/sda1 rhgb quiet video=vesafb:1024x768@51 vga=0x318
В случае третьего варианта править \»/etc/fb.modes\« не надо.
Для изменения темы надо установить пакеты \»plymouth-theme*\« (в F12 доступны - charge, fade-in, solar, spinfinity)
/usr/sbin/plymouth-set-default-theme NewTheme /usr/libexec/plymouth/plymouth-update-initrd
где \»NewTheme\« - одна из вышеуказанных тем.
Необходимо наличие пакетов KVM и QEMU.
Инициализация модулей (наверное, необязательно):
/sbin/modprobe kvm /sbin/modprobe kvm-intel
Установка полных прав на устройство KVM:
chmod 777 /dev/kvm
Создание образа диска гостевой ОС (windows.img размером 6 гигабайт):
qemu-img create windows.img -f raw 6G
Установка гостевой ОС (инсталлятор в cdrom):
qemu-system-x86_64 -hda windows.img -cdrom /dev/cdrom -boot d -m 384 (вместо /dev/cdrom можно указать файл iso)
Это «костыль», пока crond не научится работать с TimeZone.
В »/etc/cron.daily« создаётся скрипт «cron-timezone» с таким содержимым:
#!/bin/sh function TZ { date --date='TZ="'$1'" '$2 +"%H" } CF="/etc/cron.d/events-timezone" echo "SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=\"root\" LC_ALL=ru_RU.UTF-8 " > $CF echo "10 `TZ Europe/London 07` * * * user start-program-in-other-timezone-1" >> $CF echo "45 `TZ Europe/London 12` * * * user start-program-in-other-timezone-2" >> $CF
Каждую ночь данный скрипт пересоздаёт файл »/etc/cron.d/events-timezone«, подставляя вместо «07» и «12» часов - «09» и «14».
Т.е., первое задание будет запускаться в 07:10 по лондонскому времени (в 09:10 по московскому), второе - в 12:45 по лондонскому времени (в 14:45 по московскому).
Правка - Найти и заменить…
Включить «Регулярные выражения»
Найти: ^$
Заменить: пустая строка
openssl pkcs12 -export -in server.crt -inkey server.key -out server.pfx
convert -density 150 input.pdf -quality 90 output.png
Установлен ffmpeg и ffmpeg-devel из репозитория atrpms.
ffmpeg и ffmpeg-devel версии 2.2.1.
Установлен php-devel с phpize.
Скачиваем ffmpeg-php:
git clone https://github.com/tony2001/ffmpeg-php.git
Далее, команды:
cd ffmpeg-php/ phpize ./configure make make install (под рутом)
Копируем полученный ffmpeg-php/modules/ffmpeg.so в папку /usr/lib64/php/modules (или проверяем его нпличие) (путь получен с помощью phpinfo(), перемення core/extension_dir).
Создаём в папке /etc/php.d файл ffmpeg.ini следующего содержания:
; Enable ffmpeg extension module extension=ffmpeg.so
Перезапускаем httpd.
В phpinfo() наблюдаем секцию ffmpeg
При запуске Dolphin некоторое время (до 30 секунд) не отвечает. Данная проблема появилась после подключения в Dolphin сетевых папок.
Необходимо удалить файл »~/.kde/share/apps/kfileplaces/bookmarks.xml«.
Найдено здесь.
В папке »/etc/profile.d/« создать файл с содержимым:
setfont Cyr_a8x16
Fedora 21,22
В about:config установить параметр extensions.blocklist.enabled в false.
Для Shockwave Flash можно ещё изменить:
plugin.state.flash -> 2 plugins.click_to_play -> false
montage *.jpg -geometry 150x+5+5 -tile 8x -frame 1 -texture granite: -bordercolor black -shadow out.png
Создаёт файл «out.png» из миниатюр всех «JPG» файлов текущей директории. Каждая миниатюра имеет размер по ширине 150 точек (высота масштабируется, соответственно пропорциям исходных изображений), расстояние между миниатюрами - 5 точек. В качестве фона используется текстура «granite».
Перед выполняемой командой вставить:
nice -n 19 ionice -c3 -n7 КОМАНДА
mogrify -format jpg -path ./converted *.png
convert inputimage -fuzz 5% -transparent white outputimage
В файле »~/.bash_profile« добавить строчку:
export KMIX_PULSEAUDIO_DISABLE=1
split -d -b 100MB file.ext file.ext.
Разбивает файл file.ext на части не более 100 мегабайт (-b 100MB), используя цифровые суффиксы (-d), используя file.ext. в качестве префикса.
Выходные файлы имеют вид file.ext.00, file.ext.01 и т.д.
yum whatprovides libQtGui.so.4
LC_ALL="ru_RU.cp1251" приложение
SELECT * INTO OUTFILE '/media/storage/tmp/types.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM types WHERE 1
Экспортирует таблицу \»types\« в файл \»/media/storage/tmp/types.csv\«