LINUX.ORG.RU

Сообщения vel

 

java hidpi

Есть чудо девайс aten cs1708i - ipkvm

Есть slackware-15/x86_64 c xfce-4.12

Все замечательно работает, но есть проблема - на 4к мониторе оно мелковато.

Прочитал про настройки жабы для работы с hiDPI был сделан скрипт (чтоб ругать жабы было видно)

export GDK_SCALE=2
export GDK_DPI_SCALE=0.5
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true -Dswing.defaultlaf=com.sun.java.swing
.plaf.gtk.GTKLookAndFeel -Dswing.crossplatformlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel'

exec /usr/lib64/jre/bin/javaws "$@"
Запускаю, а в ответ ругань на execstack какой-то либы /tmp/libiKVMLib_V1.0.so и тишина. (правда жаба остается в памяти и ее нужно убивать)
Picked up _JAVA_OPTIONS: -Dsun.java2d.uiScale=2 -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel -Dswing.crossplatformlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel
Java HotSpot(TM) 64-Bit Server VM warning: You have loaded library /tmp/libiKVMLib_V1.0.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'
Если опций нет, т.е. просто запускается javaws, то ругань на либу есть, но при этом все работает.

Что странно: /tmp/libiKVMLib_V1.0.so выкачивается откуда-то, т.к. в /tmp изначально ее нет и после появления у нее владелец тот, кто запустил. Но это еще не все. Эта либа 32-x битная!

Вопрос - что это за куйня с выкачиванием либы и какого хрена она 32-х битная?

nm на нее говорит следующее

/tmp/libiKVMLib_V1.0.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamical
ly linked, with debug_info, not stripped
00002710 T Java_com_aten_javaclient_jni_JniInterfaceClass_registerHook
000014d8 T Java_com_aten_javaclient_jni_JniInterfaceClass_setCatchSystemKey
0000295c T Java_com_aten_javaclient_jni_JniInterfaceClass_setKeyHook
000028c8 T Java_com_aten_javaclient_jni_JniInterfaceClass_setKeyLed
0000162c T Java_com_aten_javaclient_jni_JniInterfaceClass_unregisterHook
000014fc T ExitThread()
00002578 T CreateThread()
0000142a T SetSpecialKey(int, int)
0000276e T SetKeyboardLed(bool, bool, bool)
000013fc T ResetSpecicalkey()
00001490 T GetSpecialKeyStatus()
00001932 T GetVKCodeAndLocation(int, int, int, int&, int&, int&)
00002a36 W JNIEnv_::GetMethodID(_jclass*, char const*, char const*)
00002a16 W JNIEnv_::NewGlobalRef(_jobject*)
00002aae W JNIEnv_::CallVoidMethod(_jobject*, _jmethodID*, ...)
00002a66 W JNIEnv_::GetJavaVM(JavaVM_**)
00002a88 W JavaVM_::AttachCurrentThread(void**, void*)
00006854 A __bss_start
00006854 A _edata
00006904 A _end
00002b24 T _fini
00001054 T _init
00004600 D x_usb_key_map

Смешивать 32 и 64 бита в одном процессе нельзя вроде как...

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

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

 , ,

vel ()

xfce-4.12 firefox размер окна при старте или по ctrl-N

FF-60.8.0esr

При запуске или по ctrl-N открывается окно размером примерно 1080x1600 (основной монитор 2560x1440, второй монитор 1920x1200 повернутый на 90 градусов)

Кто в этом виноват: FF или XFCE ?

 , , ,

vel ()

Старые ядра и версии gcc. GCC невиновен!

Грабли на пройденном пути.

gcc 8.3.0 собирает ядро 4.9.91 и оно при этом грузится и работает.

А вот 4.9.90 и ниже ( до .87 точно) собранное им же, мгновенно ребутится после сообщения «Uncompressing Linux...»

git bisect делать лень.

gcc-9.2 такая же хрень :(

Опять держать зоопарк gcc...

Update: виноват binutils-2.31 которому нужно явно указывать

«ld-option, -z max-page-size=0x200000» для x86_64.

Патч «x86/build/64: Force the linker to use 2MB page size»

 , ,

vel ()

aufs проверка файла

Простой пример: dir1 - основной набор файлов (в RO), dir2 - смонтирована aufs

Можно ли определить что файл dir2/file наследуется из dir1/file ?

 

vel ()

xfce запуск приложений с указанием геометрии

Для вышедших из криокамеры.

Есть xfce 4.12

Как запустить приложение с указанными координатами и размером ?

например thundenbird

Пока нашел упоминания про спец. утиль devilspie2

 

vel ()

Про велосипеды (с двумя колесами)

После долгих лет в криокамере.

Гореть в аду инженерам которые делают велосипеды которые можно разобрать только при помощи специальных ключей! C#$%^ки!

На стареньком stels navigator 510 (2010 г.) стала умирать трещетка на заднем колесе.

Поменял.

Но появился другой эффект - если провернуть педали в обратную сторону хотя бы на 1/4 оборота, а потом снова начать крутить вперед, то цепь проскакивает на 1-2 звена ( по ощущениям).

Цепь родная.

Вопрос: поможет ли замена цепи?

Или если менять, так цепь вместе с центральной звездочкой?

И еще вопрос: как оценить износ переключателя скоростей на заднем колесе? Подшипники там почти убитые.

 , ,

vel ()

Есть ли разница при использовании kvm-переключателя

Два варианта

1) kvm с одним usb портом, но к usb подключен хаб в который подключены клава и мышь. ( на kvm-е 1 usb порт )

2) kvm с двумя usb портами в которые включены клава и мышь

Есть ли существенная разница?

На usb хабе (есть|может быть) свое питание. Все оборудование запитано от одного ups.

 ,

vel ()

Залипание кнопок на ps/2 клаве

Проблема - теряется код отжатия кнопок (она как бы остается нажатой). Возможно теряются и нажатия кнопок, но это чуть сложнее заметить.

Проблема появилась на пустом месте - сменил все железо кроме дисков.

Ядра 5.0 и 5.1

«Запасть» может любая кнопка :(

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

Клавиатура - Steelseries 6Gv2

 ,

vel ()

ssd M.2 nvme рабочие температуры

Есть ли счастливые владельцы nvme/M.2 ssd ? Смотрели ли вы на их температуру под нагрузкой ?

В ближайшей лавке был куплен R5MP240G8. Температура под 60C при компиляции меня как-то неприятно удивила (учитывая, что для него Warn/Crit температура 70/80С).

Правда температура сильно зависела от активности I/O и в простое тут же снижалась до 40С.

Проблема в том, что у меня слот М.2 находится под матерью и вентиляции там нет (на mini-ITX с местом туго).

Пришлось купить термопроводящую прокладку и положить в качестве радиатора люминевый лист, что IMHO решило проблему (пока выше 39С не видел).

9Вт это много для ssd в форм-факторе 2280 ?

Для sata/M.2 данные о максимальной потребляемой мощности не показываются в smartctl

 , ,

vel ()

Статистика/отчеты для LogAnalyzer

Есть такая поделка - LogAnalyzer. Для небольших логов - отличная вещь!

Что хорошо:

  1. есть встроенный конфигуратор
  2. понимает и файлы логов и базу данных (через php PDO)
  3. есть пользователи и группы

НО!

  1. встроенный конфигуратор работает только если конфиг лежит в БД и тип БД только mysql @#$%^&* !!!

    и только через php/mysqli

    Ради жалких 5Кб конфига тащить целый mysql! Там sqlite хватает за глаза! На крайний случай можно через serialize конфиг сохранять.

  2. Если логи беруться из файла, то оно понимает время с таймзоной, но тупо игнорирует его. Логи приходящие в UTC оочень трудно читать.
  3. туговато с документацией

Нет ли для LogAnalyzer дополнительных модулей статистики ?

Хочется в логах поискать слова по рег.выражению и вывести найденные слова с их число повторения в виде списока ссылок.

 , ,

vel ()

Прототипы функций в разделяемых либах для C

гугль говорит, что это только для C++

Но только что столкнулся с ошибкой сборки проекта (squid), когда при линковке gcc сказал, что неизвестно где ipset_session_init(void *,void*)

Проблема оказалось в том, что в ipset-7.0 изменился прототип для ipset_session_init()

squid C++, ipset - на С. Собиралось все gcc-8.2

Вопрос - а можно ли посмотреть прототипы функций в разделяемой библиотеке ?

 

vel ()

Магия в оффтопике?

Старый я, много глюков оффтопика видел, но вот чего не могу понять

почему

route add 192.168.0.0 mask 255.255.255.0 gw 192.168.215.5
влияет на
ping -t 192.168.215.1
через openvpn, при том, что в 192.168.0.0/24 не попадает ни один из адресов интерфейсов и туннеля.

Эффект такой - 5-10 секунд пинг нормальный, потом все умирает на 3-5 секунд, потом восстанавливается (на 5-10 секунд)!

при том, что «божественной десятке или стабильной семёрке» выдан адрес 192.168.215.6, а удаленный адрес 192.168.215.5, а адрес интерфейса со стороны оффтопика 192.168.215.1

Если добавить маршрут только в конкретный адрес (например 192.168.0.2), то проблемы c ping-ом до него нет!

Как

begin 644 -

'T+'0N]&/«@`` `

end

им это удается

Второй вопрос шутошный: что общего между bsd-шниками и виндузятниками ?

Ответ: ip-шный стек и нелюбовь к линкусу

IMHO то, что делает оффтопик с интерфейсами p2p это лютый 3.14ц!

 , , ,

vel ()

transmission-daemon при каждом старте проверяет все торренты

Версия 2.94

Первый раз я списал это на то, что его могли остановить по «kill -9»

Но потом, выяснилось, что после «killall -TERM transmission-daemon» или после «transmission-remote --exit» проблема все равно осталась - при старте все торренты проверяются.

В другом месте с этой же версией проблем нет.

Пробовал запускать через «transmission-daemon -f --log-info» и останавливать через «transmission-remote --exit», но ничего интересного не нашел.

Куда копать, что смотреть ?

 ,

vel ()

Documentation/Changes в kernel

гм, а его вообще меняют ?

Во всех ветках меньше 4.19

Current Minimal Requirements
****************************
====================== ===============  ========================================
        Program        Minimal version       Command to check the version
====================== ===============  ========================================
GNU C                  3.2              gcc --version

Это наглая ложь!

gcc-4.3.3 падает при попытке скомпилировать какой-то файл в ядре > 4.14.52 (давненько не видел такого)

если верить git log, то требования к gcc последний раз меняли в 2006 г.

Вот в 4.19 все честно - минимальные требования 4.6

PS забавно, но gcc-4.3.3 не может собрать > gcc-5.x :)

 , ,

vel ()

Имитация медленного процессора

Есть ли способ без замены процессора получить медленный многоядерный процессор (частоту меньше чем минимальная доступная частота в cpufreq-info).

Мне нужно, чтобы softirq сжирал не менее 2-х ядрер.

Железка такая: Xeon E3-1230V2 3.30GHz hardware limits: 1.60 GHz - 3.70 GHz

PS дома сдох БП в машинке с Atom-330, который готовился на эту роль. Там частота была 200-1600МГц с шагом в 200МГц

 ,

vel ()

А вы тестируете все после внесения изменений ?

Слов нет, одни выражения!

Если собрать их последнюю поделку версии 4.4.1, то эта братская щука говорит, а нету у тебя ipv6 на интерфейсах!

Смотрим в в common/discovery.c, а там интересный код с комментами

         /* If the only address we have is 0.0.0.0, we
            shouldn't consider the interface configured. */
         if (IN6_IS_ADDR_UNSPECIFIED(&a->sin6_addr)) {
         tmp->configured = 1;

         add_ipv6_addr_to_interface(tmp, &a->sin6_addr);

в 4.3.6-P1 еще все работало! Делаем diff

@@ -681,17 +712,17 @@
                            continue;
 
                        /* If the only address we have is 0.0.0.0, we
                           shouldn't consider the interface configured. */
-                       if (IN6_IS_ADDR_UNSPECIFIED(&a->sin6_addr))
+                       if (IN6_IS_ADDR_UNSPECIFIED(&a->sin6_addr)) {
                                tmp->configured = 1;
 
                        add_ipv6_addr_to_interface(tmp, &a->sin6_addr);
 
                        /* invoke the setup hook */
                        addr.len = 16;
                        memcpy(addr.iabuf, &a->sin6_addr, addr.len);
-                       if (dhcp_interface_setup_hook) {
+                               if (dhcp_interface_setup_hook) 
                                (*dhcp_interface_setup_hook)(tmp, &addr);
                        }
                }

Дятлу, который сделал эту «оптимизацию» и не удосужился проверить работоспособность ее, нужно вбить гвоздь в голову!

Зачем в 2012 году я исправил этот кусок кода, если ipv6 у меня тогда еще небыло ?

 , , ,

vel ()

ipsec через кошку с gre

Есть удаленная сетка. Коннект к ней через кошку на которой настроен gre-тунель с ipsec (3des/sha1/PSK)

racoon удалось договориться с кошкой (не без проблем, но гугль помог).

Простота конфигурации радует, но вот отсутствие новых версий уже несколько лет делает как-то напрягает.

Как я понял, на данный момент есть как минимум 3 варианта

1) racoon (есть рашпиль для сборки с openssl-1.1 при помощи gcc8)

2) openswan

3) strongswan

Может я что-то пропустил выходя из разморозки ?

На что есть смысл перейти сейчас с racoon ?

 , , ,

vel ()

Что случилось с gdb 8?

.gdbinit

set args aaaa
b main
r
запускаем

gdb prog получаем

Type "apropos word" to search for commands related to "word"...
No symbol table is loaded.  Use the "file" command.
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]
/opt/home/lve/.gdbinit:3: Error in sourced command file:
No executable file specified.
Use the "file" or "exec-file" command.
Reading symbols from prog...done.
(gdb)

20 лет оно работало!

Какого хрена gdb игнорирует аргумент «prog» ?

Если в .gdbinit вписать

file prog
b main
r
то запуск gdb делает то, что нужно.

Как вернуть стандартное поведение?

 ,

vel ()

sata standby mode сломался

Была настройка

hdparm -S 240 /dev/sdb
hdparm -S 24 /dev/sdc
это 20 минут и 2 минуты бездействия.

Диски sdb «WDC WD20EZRX-00D8PB0», sdc «WDC WD20EARS-00MVWB0»

sdc - диск для бекапов, который редко используется :)

Все работало на старой 32-х битной системе вплоть до 4.14.66, потом была замена системы на 64-х битную 4.14.66 (и обновление биоса).

Обновив ядро до 4.14.71 обнаружил две проблемы:

- sdc вообще не останавливается (при полном отсутствии запросов)

- sdb переходит в standby иногда через 2 секунды после запуска.

Интересно, что «hdparm -y /dev/sdc» замечательно останавивает диск, а «hdparm -S 0 /dev/sdb» заставляет его не засыпать.

Оба диска подключены через eSATA «ZALMAN ZM-MH200 U3» который на 2 диска.

Странно, что sdb говорит, что не поддерживает ни APM_level, ни acoustic, а sdc поддерживает только acoustic 128-254

Если верить манам, то acoustic < 128 позволяет диску переходить в standby mode.

Не сталкивался ли кто с такими проблемами ?

Что в ядре и/или биосе может на это влиять ?

 , ,

vel ()

особенности bash в виде sh

Где описана разница для исполнения скрипта bash-ем и sh-м в виде линка на bash ?

Собственно проблема возникла на пустом месте (imho).

Есть два условия:

  • В .profile было ". .bashrc" (и это вызвало страный эффект при определенной ситуации).
  • ни в .bashrc, ни в .profile в первой строке нет «#!»

 

vel ()

RSS подписка на новые темы