← All posts tagged Linux

PoZitron
Linux PulseAudio мышь Какое-то время назад купил себе Logitech MX Master 3. Настраивать её занятие увлекательное. На боковое колёсико я, не долго думая, повесил регулировку звука. Правда есть несколько возможных реализаций этого, и ни одного правильного. Я выбрал через pactl, но он легко увеличивает громкость выше 100% и ограничить это никак нельзя :( Пришлось набросать такой костыль:
LANG= pactl list sinks | grep -A8 RUNNING | grep -q -E '1..%' && pactl set-sink-volume @DEFAULT_SINK@ 100% || pactl set-sink-volume @DEFAULT_SINK@ +1%

Что тут:
* находим активный sink
* проверяем что громкость перескочила 100%
* если да — ставим 100%
* если нет — делаем +1%

PS MX Revolution всё-таки лучшая мышь

PoZitron
Linux монитор Выключить монитор программно (как если нажать клавишу выключения):
ddcutil -b 3 setvcp D6 05
Включить:
ddcutil -b 3 setvcp D6 01

Узнать есть ли такая возможность:
ddcutil -b 3 capabilities
На мониторе Dell:
Feature: D6 (Power mode)
Values:
01: DPM: On, DPMS: Off
04: DPM: Off, DPMS: Off
05: Write only value to turn off display

На LG последней строчки нет, но мне и не надо.
Узнать номер шины на которой монитор:
ddcutil detect
PoZitron
· Edited
Linux Ubuntu звук Nvidia *звук *ubuntu *linux *nvidia
Установка каждой новой версии Убунты сопровождается появлением новых багов костыли под которые придумываешь потом всё время её использования.
В 20.04 у меня появилась раздражающая проблема что звук прерывается на пару секунд при включении заставки и подключении/отключении монитора.
В этот раз я заметил в логах сообщение:
snd_hda_codec_hdmi hdaudioC0D0: HDMI: invalid ELD data byte 1

Очевидно что это связано с hdmi-звуком, которым я не то что не использую, так он ещё и маячит в настройках звука даже когда его там отключаешь. Что ж, заблокировал загрузку модуля создав /etc/modprobe.d/blacklist-snd-hda-hdmi.conf ... но он всё равно загрузился. Прочёл что такое бывает с некоторыми модулями, есть обходной путь:
install snd_hda_codec_hdmi /bin/true

Да, сработало!
+1 костыль, -1 неприятность
PoZitron
Linux Ubuntu Да, забыл ещё один хак. В линуксах поломались виджеты погоды из-за каких-то проблем с API сайта погоды. И вместо того чтобы взять и починить, они спорят надо чинить или само всё пройдёт... А меня очень раздражает что погоды нет на привычном месте, прям дискомфорт вызывает. В общем, какой-то чувак выложил бинарный патч:
forums.linuxmint.com
sudo sed -i 's|https://www.aviationweather.gov/adds/dataserver_current/httpparam|https://www.aviationweather.gov/adds/dataserver1_3/httpparam\x0\x0\x0\x0\x0|' /usr/lib/x86_64-linux-gnu/libmateweather.so.1.6.9

Работает!
PoZitron
Linux Ubuntu компьютеры драйверы В продолжении #2972551.
Понятно что грузить вручную (даже скриптом) каждый раз при загрузке драйвер сетевой карты это не круто. Да и при следующем обновлении ядра оно либо перестанет работать либо повесит систему.
В общем, я таки сделал красиво :)
Я взял аналогичный пакет r8168-dkms:
apt source r8168-dkms
Переименовал везде где можно r8168 на r8125, удалил (возможно) лишние файлы, заменил те исходники на актуальные и выполнил:
debuild -i -us -uc -b --lintian-opts --profile debian
и поставил созданный пакет.
Ура! Теперь оно прочно стоит в системе и должно обновляться вместе с ядром.
Результат здесь: github.com
Пользуйтесь на свой страх^W^W здоровье!
PoZitron
Linux компьютеры драйверы Купил себе свежий комп... настолько свежий что нет драйверов для сетевой карты!
Не буду вдаваться в подробности покупки, перейду к сути. В интернете информации по проблеме нет, помощи никакой ждать не приходится, поддержку в ядро добавят не скоро.
lspci показывает:
Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 04)
В dmesg:
r8169 0000:08:00.0: unknown chip XID 641
В Интернетах удалось найти только:
spinics.net
Решения там нет. И нигде нет. r8168 не помогает.
Оказывается есть официальный r8125: realtek.com
На всякий случай, залил на яндекс: yadi.sk
Вы не поверите. Распаковал, сделал:
make
sudo insmod ./src/r8125.ko
Работает!!! Сразу, без танцев с бубном.
Вполне возможно надо поставить пакеты для сборки, но у меня видимо уже всё стояло и поэтому собралось мгновенно.
Завтра буду разбираться как подгружать его при старте компьютера.
PoZitron
Linux Ubuntu Java bug Понадобилось работать в Eclipse. Запускаю, создаю проект, пытаюсь запустить отладку... чувствую, всё как-то долго. Всё время подвисают окна, процессы, отладка... работать невозможно! Постоянно виснет отладка, не реагирует на кнопки.
Короче, выяснилось что это известный баг, связанный с GTK3: bugs.launchpad.net
Есои добавить
export SWT_GTK3=0
перед запуском бинарника, то программа оживает!
PoZitron
Linux Bluetooth Как сохранить спаренными блютус устройство с адаптером при переходе с одного компьютера на другой.
У меня есть миниатюрный блютус-адаптер который я использую то дома, то на работе. К нему я подключаю одни и те же наушники. Однако при спаривании каждый компьютер генерирует свой уникальный ключ который наушники запоминают, но только последний. Поэтому наушники работают только с последним спаренным компьютером.
Ключ лежит в этом файле:
/var/lib/bluetooth/XX:XX:XX:XX:XX:XX/linkkeys
где XX:XX:XX:XX:XX:XX это MAC вашего адаптера.
Надо спарить устройство с адаптером один раз, залезть в этот файл, найти строчку соответствующую MAC-адресу устройства и скопировать его в аналогичный файл на всех остальных компьютерах где хочется использовать устройство.
PoZitron
Linux Bash У баша есть проблема с русскими символами, например если в скрипте есть команда read, ты вводишь ответ и ошибся, то тексту хана. Стираешь символы, а в переменную идёт мусор. С латиницей такой проблемы нет.
Наткнулся на временное решение в интернете. Добавить stty iutf8 в скрипт.
Добавил, работает. Могу стирать текст сколько угодно раз и он не бьётся.
PoZitron
Linux фс У меня есть раздел для бэкапов, там каждый гигобайт на счету. Всё-таки он кончился. Посмотрел что можно сделать и заметил что там резервируется место для рута, стандартные 5%. Убрал резерв
sudo tune2fs -m 0 /dev/sdb4
стало легче дышать. Оказывается сделать это можно на живой системы без переформатирования (конечно я её отмонтировал перед изменением).
PoZitron
Linux Bluetooth Однажды, после многих лет страданий, я нашёл как дампить информацию с блютус #1163592. Однако я не написал как это сделал, и сейчас опять пришлось потратить время, силы и нервы на это. Непорядок. Исправляю ситуацию.
Чтобы дампить локальный блютус трафик, нужно выполнить команду hcidebug с правами рута! После команды, можно указать фильтр трафика, получится как-то так:
sudo hcidump avdtp avct

Если честно, это всё равно не помогло мне точно понять какие профили поддерживают наушники и с какими профилями они работает с телефоном. С толку сбивает оформление трафика, эмпирическим путём установлено что < означает исходящий трафик, когда как > означает входящий. Интуитивно же хочется думать иначе.
PoZitron
Linux ололо "(vino-server:21165): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're its parent."
Перевод: "Попытка удалить ребёнка, который не верит что мы его родитель."

Обожаю читать линуксовые предупреждения и ошибки! :)
PoZitron
Linux В одной из версий Rhythmbox'а интерфейс решили слегка угробить. Одним из изменений стало уменьшение картинки альбома до размеров иконки и запихивание её куда подальше. Это печальное, ненужное изменение.
Оказывается есть плагин против этого! Не знаю где лежит оригинал, но здесь лежит например исходник: ppa.launchpad.net который встал как влитой и работает! Может не так хорошо написан как хотелось бы, но свою функцию выполняет.
PoZitron
Linux Оказывается Rhythmbox 2.98 разучился читать тег "год". А я ругал flacon и даже сегодня перепробовал кучу его версий. Оказалось дело в Rhythmbox'е.
Я нашёл исправляющий этот баг коммит в репозитории Rhythmbox'а, сделал патч и выложил на лаунчпад с инструкцией как его применить: bugs.launchpad.net
Бери бесплатно без смс, патч, пользуйся.
PoZitron
Linux Есть Самсунговский ноут с Windows 7. Когда закрываешь крышку — засыпает. Открываешь — через секунду-две просыпается. Збс.
Теперь вопрос: если я воткну туда Убунту, всё будет так же хорошо или быстрое пробуждение испортится? То есть я не хочу сносить Windows 7, я только параллельно хочу поставить Убунту. Притом я не хочу лишиться таких удобных ускорялок который понапихал Самсунг.
PoZitron
Linux фс Оказывается монтировать nfs через fstab — плохая примета. У меня половина системы зависало при отсутствии связи с сервером. Первым отказывал почему-то mate-settings-daemon, затем я замечал что плохо работает сетевая подсистема. Наконец, невозможно зайти в папку с точкой монтирования nfs-каталога, невозможно никаким образом отмонтировать каталог nfs и, в итоге, система просто не могла завершить работу.
Я заметил что вообще любой модуль ведра может заставить накрыться систему быстро и без шума (нельзя догадаться какой модуль сбоит в том или ином случае).
PoZitron
Linux GRUB Оказывается включить доступ по серийному порту к грубу намного легче чем я думал. Достаточно в файле /etc/default/grub в опцию GRUB_TERMINAL добавить serial, как-то так:
GRUB_TERMINAL="console serial"
Естественно сделать update-grub, подключиться нуль-модемным кабелем к порту компьютера и слушать порт с другого компьютера. При загрузке в порт, но только если он аппаратный (через usb-конвертор не заработало), начнёт рисоваться груб аналогичный тому что на мониторе и принимать команды, если их умеет посылать тот терминал через который вы работаете с com-портом. Я пока не понял как лучше подключаться к порту, пока использую gtkterm.
PoZitron
Linux перенося систему с компьютера на компьютер забыл поменять в fstab UUID корня. Заметил это только сейчас, когда подготавливал систему к очередному переносу. Так вот она до сих пор работает со старым uuid корня. Вопрос: КАК???
PoZitron
Linux Помните я писал что решил проблему с монтированием из-под пользователя #2459005? Я ошибался. Оказывается это уже не можно. Там используется udisks, а нынче модно использовать udisks2, поэтому возникают всякого рода накладки (невозможно отмантировать диск, не та точка монтирования...).
Правильно так:
udisksctl mount -b /dev/sdb5