LINUX.ORG.RU

Избранные сообщения superuser

Переназначение клавиш на самом глубоком, ядерном уровне?

Форум — General

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

 reassignment

burato
()

Теор. вопрос по структуре звук. серверов (ALSA, Pulseaudio, JACK, Pipewire)

Форум — Multimedia

Здравия желаю, товарищи профессионалы! Изучаю как устроена звуковая система Линукса. Прочитал много статей, посмотрел много блок-схем, написал конспектик для себя. И вроде всё понятно, но есть один момент, который не могу уловить. В разных статьях он по-разному освещён. Поэтому, хочу понять, где же правда.

ALSA у нас состоит из ядерной части (ALSA Kernel) и пользовательской (ALSA Library, ALSA lib, libasound), ну и плюс драйвера и утилиты, но речь не о них. Так вот:

Правильно ли я понимаю, что Pulseaudio заменяет собой ALSA Library (юзерспейсовую часть Алсы), а JACK – не заменяет, и работает поверх её? Об этом говорят блок-схемы, которые есть в сети на эту тему. Однако же, я находил и другие схемы, на которых Pulseaudio изображён рядом с ней (с ALSA-userspace) и следовательно тоже не заменяет её, а лишь дополняет. Pipewire вроде как ничего из Алсы не заменяет и работает поверх неё. Он не имеет своего API, используя как JACK API, так и Pulseaudio API.

Но при этом везде (в статьях) указано, что Pipewire идёт как замена Pulseaudio. А если так, то Pipewire должен, как и Pulseaudio, заменять собой ALSA Library. Хотя, не должен, конечно, просто это логично предположить.

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

 , , ,

Don_Antonio
()

Проблемы с уровнем яркости на Honor Magicbook 14 GLO-G561

Форум — Linux-hardware

Установил Ubuntu 22.04.3 LTS на указанный ноут. Сразу при запуске все хорошо - яркость регулируется и с кнопок, и из менюшки. Через некоторое время (минут 10) яркость сама по себе доводится до максимума или до минимума, после чего перестает работать одна или обе кнопки настройки яркости, при этом регулировка из менюшки работает. Иногда это событие повторяется. Один раз было, что яркость сама повысилась до максимума и менялась через менюшку, но сразу же восстанавливалась до максимума, будто была зажата кнопка, но прошло само через пару секунд (впоследствии кнопки так и не заработали). Кто знает, подскажите пожалуйста, в чем может быть дело.

 

krigga
()

Отлючения Intel ME тред

Форум — Linux-hardware

К линуксу это имеет немного косвенное отношение, но здешним линуксоидам будет интересно. Авось информация начнёт копиться в одном месте. Немного самонадеянно с моей стороны, но прошу обратить внимание, что это не talks|general, и тред не про вопросы нужности.

Ну, из спортивного интереса и зачатков паранойи я попытался.

Сначала проверим, активен ли Boot Guard. Сделать это можно из под линукса, метод с патченной intelmetool из coreboot. У меня не сработало (error access чего-то там, запускал ессно от рута), но вы по ссылке сходите, там информация о косвенных признаках присутствия Boot Guard, который, суде по ссылке на сатью на хабр выше, может нам испортить всю малину.

В (CS)ME System Tools с форума все утилиты есть для доса и .efi, а FWUpdate и для линукса. Но FIT есть только под винду. Можно ли без неё - хз. Но все туториалы, которые я находил, все опирались на неё. Поэтому далее манипуляции проводил из под винды.

Запустил скачанную с форума под своё железо MEinfo. Она бодро рапортует. Что-то. Если что-то такое, то конкретно вам повезло.

В таком случае, если вы с помощью утилиты flash programming tool (FPT) дампните себе всё (fpt.exe -d image.bin), то всё скорее всего пройдёт без ошибок. Полученный образ будет содержать таблицу-дескриптор, дамп биоса, дамп МЕ, ещё чего-нибудь. Посмотреть на эту таблицу, кстати, можно натравив coreboot'овский ifdtool либо на образ, либо на результат выполнения команды fpt.exe -D desc.bin -DESC (на случай, если МЕ не дампается).

Этот обрах можно редактировать в flash imaging tool (FIT). Всё настраиваете (убрать бут гард, отключить МЕ, поставить HAP-бит, например). Ещё можно взять ME регион, который появляется в папке disassembly в папке с экзешником FIT, и натравить на него me_cleaner (инструкцию как всё правильно сделать находил в интернете). По отчётам, с HAP битом эта процедура не ломает загрузку.

Собственно собранный FIT'ом образ, вроде бы и нужно шить, но я боюсь, что я пропускаю тут какие-то важные нюансы, я так далеко не заходил. Так как мы всё-таки не софт ставим, а аж шьём биос, то я бы разорился на программатор с клипсой и таки снял бы дампы с чипов. Так надёжнее, ибо потенциально можно раскирпичить девайс, плюс много попыток. Правда возможно, там тоже есть свои подводные камни, нужно гуглить.

Если же на этапе проверки бут гарда не повезло, и картинка какая-то такая, то не повезло, и фиг что с ME сделаешь. Наверно. У меня картинка на ноутбуке была как раз такая.

Я не очень шарю во всём этом, могу где-то тупить. Хочу попробовать поменять что-нибудь с помощью setup_var, но никак не могу понять, какие адреса переменных использовать. IFRextract'овский файл содержит VarStoreInfo и VarStore, и я хз, какой адрес использовать. Не знаю, насколько это осмысленно, поэтому прошу не пинать.

Например, тут:

One Of: Me FW Image Re-Flash, VarStoreInfo (VarOffset/VarName): 0x2, VarStore: 0x4, QuestionId: 0x86E
Ясное дело, что нельзя просто написать setup_var 0x2|0x4 0x1, потому что на 0x2 и 0x4 - это явно не то, ведь поискав, находим и другие настройки с VarStore: 0x4 и VarStoreInfo: 0x2

Для примера дамп «скрытого меню» (я хз как в него попасть, был бы рад советам): Section_PE32_image_E6A7A1CE_5881_4B49_80BE_69C91811685C_Setup_body IFR.txt

                                UEFI Protocol Detected
--------------------------------------------------------------------------------


                                String Packages
--------------------------------------------------------------------------------
Offset:		Language:
--------------------------------------------------------------------------------
0x354		en-US (0x0)


                                   Form Sets
--------------------------------------------------------------------------------
Offset:		Title:
--------------------------------------------------------------------------------
0x44E74		Platform Information Menu (0x12CB from string package 0x0)
0x45504		Intel Advanced Menu (0x12DD from string package 0x0)
Интересный кусок
0x5DB4A 		Ref: Firmware Update Configuration, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x864, FormId: 0x1043 {0F 0F 89 03 8A 03 64 08 00 00 FF FF 00 43 10}
0x5DB59 		Gray Out If {19 82}
0x5DB5B 			QuestionId: 0xA17 equals value 0x1 {12 86 17 0A 01 00}
0x5DB61 				QuestionId: 0xA15 equals value 0x1 {12 06 15 0A 01 00}
0x5DB67 				Or {16 02}
0x5DB69 			End {29 02}
0x5DB6B 			One Of: ME State, VarStoreInfo (VarOffset/VarName): 0x2, VarStore: 0x1108, QuestionId: 0x865, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 91 03 92 03 65 08 08 11 02 00 10 10 00 01 00}
0x5DB7C 				One Of Option: Disabled, Value (8 bit): 0x0 {09 07 04 00 00 00 00}
0x5DB83 				One Of Option: Enabled, Value (8 bit): 0x1 (default) {09 07 03 00 30 00 01}
0x5DB8A 			End One Of {29 02}
0x5DB8C 		End If {29 02}
Про возможность писать ME:
0x5DD5A 	Form: Firmware Update Configuration, FormId: 0x1043 {01 86 43 10 89 03}
0x5DD60 		One Of: Me FW Image Re-Flash, VarStoreInfo (VarOffset/VarName): 0x2, VarStore: 0x4, QuestionId: 0x86E, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 8B 03 8C 03 6E 08 04 00 02 00 10 10 00 01 00}
0x5DD71 			One Of Option: Disabled, Value (8 bit): 0x0 (default) {09 07 04 00 30 00 00}
0x5DD78 			One Of Option: Enabled, Value (8 bit): 0x1 {09 07 03 00 00 00 01}
0x5DD7F 		End One Of {29 02}
0x5DD81 		Suppress If {0A 82}
0x5DD83 			QuestionId: 0xA11 equals value 0x3 {12 86 11 0A 03 00}
0x5DD89 				Not {17 02}
0x5DD8B 			End {29 02}
0x5DD8D 			One Of: Local FW Update, VarStoreInfo (VarOffset/VarName): 0x1, VarStore: 0x1108, QuestionId: 0x86F, Size: 1, Min: 0x0, Max 0x1, Step: 0x0 {05 91 8D 03 8E 03 6F 08 08 11 01 00 10 10 00 01 00}
0x5DD9E 				One Of Option: Disabled, Value (8 bit): 0x0 {09 07 04 00 00 00 00}
0x5DDA5 				One Of Option: Enabled, Value (8 bit): 0x1 (default) {09 07 03 00 30 00 01}
0x5DDAC 			End One Of {29 02}
0x5DDAE 		End If {29 02}
0x5DDB0 	End Form {29 02}

Может, это вообще не то, я целый вечер тыкаюсь почти вслепую.

Для определённости. Использовал биос от ThinkPad P50 (1.46).

 , , ,

Mihahail
()

Как установить хук на смену виртуальной консоли?

Форум — Desktop

Видеокарта — nVidia 8600GTS. Debian wheezy, 2.6.32-5-amd64, nvidia drivers 195.36.31-6.

Когда я переключаюсь из текстовой консоли в иксы и обратно, теряются настройки шрифтов. В частности, я установил шрифт высотой в 14 точек, а после переключения он устанавливается в 16 точек высотой и нижние две-три строчки уползают за нижнюю границу экрана. Ах да, и еще шрифт сбрасывается, так что русские буквы становятся нечитаемыми. Обычно помогает запуск /usr/bin/cyr (из console-cyrillic), но каждый раз это делать напряжно, а из под midnight commander'а этот способ вообще не работает.

Идеальным решением проблемы был бы автоматический запуск cyr в тот момент, когда я переключаю виртуальные консоли. Поиск дал только советы исопльзовать framebuffer, но с grub2 этот совет не работает, а тот, что работает, вызывает еще более жуткие глюки.

Собственно вопрос: Как установить хук на смену виртуальной консоли?

i-rinat
()

Маршрутизация с помощью метрик

Форум — Admin

Подскажите. Допустим, установлены различные метрики на маршруты (к одной цели). Ес-но будет выбираться маршрут с меньшей метрикой. Но, если этот маршрут «откажет», пойдут ли соединения через другой маршрут (автоматически)?
И вернется ли все в «нормальное русло», когда первый маршрут восстановится?

anonymus123
()

Embedded linux. No kernel messages

Форум — Linux-install

Здравствуйте! Имеется такая плата. Хочу поднять на ней торрент клиент. Процессор: Mstar Ssr621Q На борту uBoot + Embedded linux. Подключился я к плате по UART и начал эксперименты. В консоль uboot попасть не удалось, нет сообщений предлагающих прервать загрузку и на всякие CTRL+C не реагирует. Попробовал прервать процесс закоротив ножки памяти что бы он не смог загрузить ядро, но и тут китайцы подстраховались и юбут запросил пароль. Т.е. доступа к консоли не видать. Но как выяснилось можно прошиваться через юсб флешку. Засунул я на рутфс сторонний busybox, поднял telnetd и таким способом попал в систему. После долгих игр с библиотеками и прочим удалось поднять там transmission-daemon. Но проблема в том что в родной системе нет поддержки файловых систем EXT2-4 (на уровне ядра), только FAT и NTFS ro. FAT не очень сюда подходит, если я правильно нагуглил в родном исполнении система писала на диск напрямую без использования файловой системы, ну или она там какая-то своя. Так же пробовал собирать свою систему на buildroot, которая уже получается не так порезана, без проблем туда при сборке внедряется торрент клиент и вообще более приятна. Но все это работало с родным ядром и естественно без поддержки EXT4. Теперь главная проблема: не могу подсунуть в эту плату свое ядро, т.к. нет никаких сообщений от него :( Что в родной системе, что от моего собранного ядра. Но родное хотя бы загружается хоть и молча.

##  Booting kernel from Legacy Image at 22000000 ...
   Image Name:   Linux-4.9.84
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2235568 Bytes = 2.1 MiB
   Load Address: 20008000
   Entry Point:  20008000
-usb_stop(USB_PORT0)
-usb_stop(USB_PORT1)
   Loading Kernel Image ... OK
using: ATAGSS
atags:0x20000000

Starting kernel ... <-- на этом все, больше никакого вывода
Не могу разобраться как заставить ядро выводить сообщения. Как я выяснил для подобных систем нужны DTS/DTB файлы, но под этот процессор практически ничего не найти. Вытащил этот файл с родного ядра, скармливал своему но не помогло. Дальше я нашел ядро другой платы(TP-LINK TL-NVR6108C-B) с таким же процессором, которое выводит сообщения при загрузке! Но не грузит систему т.к. там указаны совсем другие разделы. Я достал DTB оттуда, но он мне тоже никак не помог. Т.к. под эти процессор/плату нет никаких готовых конфигов я застопорился. Само ядро не выводит никакой информации и не понятно работает или нет. Саму систему так же не загрузить, т.к. места на разделе 4мб, а минимальный размер ядра что у меня выходит 3.5мб и уже ничего туда не влазит. Ну а что бы еще больше уменьшать его размер нужно хотя бы видеть работает оно или нет. Возможно что-то блокирует uboot, но его прошивать не хочу т.к. нет программатора под рукой вернуть все в зад. С другой стороны ядро с другой платы выводит сообщения. Буду рад Вашей помощи. Предоставлю дополнительную информацию по запросу.

 ,

libixur
()

ffmpeg дропает кадры с камеры, если битрейд увеличивается (too full or near too full)

Форум — Development

Вкратце: стримминг камеры(+звука) на rtmp сервисы через ffmpeg

Проблема в следующем: Кадры со входа дропаются, если битрейд передачи потока превышает ~400kbps.

По умолчанию, если ffmpeg получает видеокадр «слишком рано» (в то время как предыдущий кадр еще не закончен), он отбрасывает этот кадр, чтобы он мог поддерживать ввод в реальном времени

Вот что в доках:
https://trac.ffmpeg.org/wiki/DirectShow

By default FFmpeg captures frames from the input, and then does whatever you told it to do, for instance, re-encoding them and saving them to an output file. By default if it receives a video frame «too early» (while the previous frame isn't finished yet), it will discard that frame, so that it can keep up the the real time input.

Ну ок, тут вроде понятно, если кадры с камеры идут очень быстро, а я их не успеваю обрабатывать, то их нужно отбрасывать, для достижения реалтайма. Но я не вижу узких мест. Кодировщик настроен на минималку, FPS на входе и на выходе одинаков. Процессор нагружен на 2-3%. Сеть ДОМРУ ну где то 50Mbps. Сервер тоже тянет.

В целом все хорошо работает. Но сбился с толку уже с этим rtbufsize, который постоянно «too full or near too full», если битрейд превышает 400kbps

rtbufsize - буфер памяти для входа для realtime устройств. Я его установил в 10M(мегабайт). Играть с ним нет вообще никакого смысла, если установишь хоть в гигабайт, то все равно он со временем переполнится, а latency будет огромный

Камеру установил на минималку (640x480@20), выходной поток такой же (640x480@20), битрейд максимальный - 800k.

ffmpeg -f dshow -video_size 640x480 -framerate 20 -rtbufsize 10M -i "video=dev_realtime" -vcodec libx264 -preset veryfast -b 800k -maxrate 800k -bufsize 1600K -r 20 -f flv "rtmp://x.y"


Ещё заметил:
* если на выход установить файл (out.flv), то все четко идет.
* если поднять локально rtmp сервер (ffmpeg -y -f flv -listen 1 -i «rtmp://127.0.0.1:1935/app/live») и передавать на него, то тоже все четко идет
* udp://microsoft.com:666 - хорошо идет, буфер не переполняется

Удаленный сервер менял (от оборудования до провайдера), на сервере замерял битрейд - приходит четко 800kpbs. То есть успевает ffmpeg в сеть передавать?

Не пойму в чем затык! Вроде и на сервер успевает передавать своевременно, но и в тоже время на входе дропаются кадры. Ничего не пойму

Все гугления сводятся к бестолковым «увеличь rtbufsize»

UDP
Кажется баг в rtmp под windows. Помогают правки в реестре (DefaultReceiveWindow, DefaultSendWindow)
https://trac.ffmpeg.org/ticket/1604

 , , , ,

gobot
()

Первичный фон запускаемого firefox

Форум — Desktop

Здравствуйте.

Предпочитаю тёмные темы оформления интерфейсов, соответственно, цвет рабстола у меня тёмный. Заморочился с конфигом firefox, в юзерконтенте.цсс настроил тёмный фон about:home.

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

Мне больно видеть белый свет, мне лучше в полной темноте (с). Очень может быть, что в каком-то месте в каком-то из user....css, или даже в конфиге gtk есть строчка, в которой я условное #fff поменяю на условное #000, и обрету гармонию.

Прошу знающих людей просветить по вопросу.

Linux здесь при том, что firefox у меня на убунте. Спасибо за внимание.

Перемещено hobbit из general

 

piyavking
()

Получить WID из PID

Форум — Development

Запускаю через скрипт приложение

  • (appname 2>&1 > /dev/null) & echo $!
  • Читаю результат $! получив PID отпочковавшейся дочки
  • Запускаю wmctrl -lp ищу в строке PID и забираю соответствующий WID
  • Всё, я довольный, могу через WID манипулировать окном и пришибать процесс через PID точно зная что есть активная пара PID/WID и я не пришибу случайно что-то иное.

Всё работает. Но с некоторыми приложениями например glxgears беда. PID я его получаю, а вот WID найти не могу, да я могу wmctrl без параметров запустить, мышкой кликнуть на окошечко и получить WID, но это не то, не получается зная лишь PID получить WID. С большинством приложений проблем нет, а тут уже не знаю где искать. Сейчас ситуация такая что я запускаю приложеньку, жду несколько секунд пытаясь получить WID окна, если не получилось, грохаю процесс, ну и типа фиг с ним, не судьба :(

Не сообщает _NET_WM_PID оно, жопка такая. Выхода нет? Ключ поверни и по-ле-те-ли И однозначно не определить?

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

Решение:

 , window id, ,

LINUX-ORG-RU
()

Как удалить файл только если он не открыт более никем?

Форум — Development

Пишу приложение, работающее в режиме «демона».

Использую PID-файл и как блокировку от повторного запуска, и как просто файл, содержащий PID процесса.

В принципе мне бы хватило алгоритма «сделал flock(LOCK_EX) после форка - сделал flock(LOCK_UN) на выходе». Для самого Perl'а этого бы хватило за глаза. Но для удобства и для порядку так сказать хотелось бы невозможного: закрывать PID-файл и затем удалять его.

Есть опасения race conditions: я могу закрыть файл, потом следующий мой инстанс получит управление и откроет его, после чего я возьму и удалю уже открытый файлик. Таким образом, будет существовать инод, содержащий PID следующего инстанса, но у файла уже не будет записи в каталоге и с точки зрения Shell-скриптов, например, PID-файл уже не будет существовать.

Сейчас попробую вариант «открыть файл - блокировать хэндлер - удалить файл - разблокировать хэндлер - закрыть файл». Выглядит последовательность странновато, но наверное должна работать...

А вообще кто что думает по этому поводу?

 , ,

DRVTiny
()

Видео записывалка для вашего ПеКа

Форум — Talks

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

Наваял вот, может кому пригодится.

  • Переменная use_recorder задаёт то чем вы ходите записывать
    • ffmpeg
    • recordmydesktop
  • Если передать скрипту аргументы то они прокинутся к утилите записи
    • например record --no-sound если используется recordmydesktop
      • но прокидывайе аргументы с умом рм рф и прочую копипасту туда писать не надо.

Ключи под себя

  • ffmpeg быстро пишет и сразу кодирует без звука.
  • recordmydesktop со звуком и отложенным долгим кодированием

Сам использую нубский recordmydesktop так как вокруг него не надо с бубном бегать по поводу звука (он меня сломан на ПК и чисто программный идёт по сети)

touch $HOME/.local/bin/record
#copy-paste code
chmod +x $HOME/.local/bin/record
  • Прерывать запись через ctrl+C
  • Зависимости в теле написаны какие надо.

Если кажется многословным перепишете на bash, всё можно переписать на bash :)

#!/usr/bin/env lua
-----------------------------------------
-- Depends for recordmydesktop: ogv out
-- apt install lua slop recordmydesktop
-----------------------------------------
-- Depends for ffmpeg: mp4 out
-- apt install lua slop ffmpeg
-----------------------------------------
-- Use ffmpeg or recordmydesktop recorder
--local use_recorder = 'ffmpeg'
local use_recorder = 'recordmydesktop'
-------------------------------------------------------------------------------
local separator = ' '
local arguments = table.concat({...},separator)
local visualfmt = '-b 5 -c 0.5,1.0,0.5,0.8 -o'
local slop_pipe = io.popen('slop -f "%x %y %w %h" '..visualfmt)
local x,y , w,h = slop_pipe:read('*l'):match('(%d+) (%d+) (%d+) (%d+)')
-------------------------------------------------------------------------------
local out_filename = os.date('%Y-%m-%H-%M-%S');
-------------------------------------------------------------------------------
local command = {};
-------------------------------------------------------------------------------
if use_recorder == 'ffmpeg' then
   command = table.concat(
   {
       'ffmpeg ','-f x11grab';
                 '-video_size',w..'x'..h;
                 '-grab_x',x;
                 '-grab_y',y;
                 '-i :0.0';
                 '-framerate 60';
                 '-vcodec libx264';
                  arguments;
                  out_filename..'.mp4';
   },separator)
   print('Run command:\n'..command)
   os.execute(command)
   return 0
end
-------------------------------------------------------------------------------
if use_recorder == 'recordmydesktop' then
   command = table.concat(
   {
       'recordmydesktop','-x='..x;
                         '-y='..y;
                         '--width='..w;
                         '--height='..h;
                         '--fps=60';
                          arguments;
                         '-o',out_filename..'.ogv';
   },separator)
   print('Run command:\n'..command)
   os.execute(command)
   return 0
end
-------------------------------------------------------------------------------
print("[ERROR]: Bad 'use_recorder' value.")
return 1

Вроде мелочёвка, а очень и очень удобно.
Всё. Досвиданья.

 , slop, , ,

LINUX-ORG-RU
()

Удалённый доступ за NAT

Форум — Admin

Привет!

Есть ноутбук (которым пользуется родственник), на нём установлен calculate linux.

Находиться он будет за NAT (модем+маршрутизатор+точка доступа, раздаёт интернет по WiFI), который я не имею возможности администрировать (порт там пробросить или что-то такое). Кстати, не уверен, есть ли там белый IP, не помню.

Хочется иметь туда доступ по SSH… чтобы иметь возможность обновлять ПО, в первую очередь такие вещи как ядро (исправления уязвимостей) и браузер (тоже уязвимости и чтобы сайты не ломались, если долго, то есть годами не обновлять, бывает что современный сайт просто перестаёт открываться).

Какой-нибудь демон может установить… который бы устанавливал соединение, по которому я мог бы туда попадать?

Раньше я что-то такое делал на связке ipv6+ddns, но потом что-то оно перестало работать, так и не разобрался, из-за чего.

Может есть ещё какие-то варианты, которые мне в голову не пришли?

Как вариант - чтобы человек сам запустил какую-то программу, дал мне доступ к экрану, где я смог бы открыть консоль (хотя лучше и без этого)… что нынче даёт такую возможность?

ОТВЕТ: zerotier именно то, что искал, круто, что есть такой продукт, да ещё и бесплатная версия, шикарно.

P.S. ssh-j.com тоже классная штука, подкупает тем, что можно скинуть человеку в чат «запусти пару команд чтобы я к тебе смог подключиться», не надо демон настраивать.

 , , ,

BattleCoder
()

Роутер за $50 для openWRT

Форум — Linux-hardware

У меня в принципе всегда был самый просто роутер, задумался поменять на что то более приличное. Есть ли достойные модели в данном сегменте заказать с али например. В крайнем случае до $60

 ,

armid
()

Прозрачный брандмауэр с маршрутизатором. Тестовая лаборатория

Новости — Интернет
Группа Интернет

В статье рассмотрено решение, требующееся при объединении прозрачного брандмауэра с маршрутизатором, используя утилиту ebtables и создание тестовой лаборатории на микродистрибутиве Linux, используя qemu и initrd на основе моей сборки busybox, включающей в себя ebtables, iptables, ssh(d), рекурсивного DNS и др.

>>> Статья полностью

 , , ,

vodz
()

VLC, детектор движения

Форум — Multimedia

VLC - мощнейший аудиовидео плеер, но не только, с его помощью можно вести записи в видеокамеры.

Попробовал сделать на его основе видеорегистратор.
Получилось легко, т.к. в его опциях есть фича, которая называется «Детектор движения».

Можно так же его использовать и через командную строку -

vlc --video-filter=motion
В тоже время обнаружилась серьезная проблема - этот детектор слишком чувствительный и обнаруживает малейшие движения, например, шелестение даже мелких листьев на удаленном дереве, и из-за этого запись, по сути, вообще не прекращается, идет постоянно.

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

Может у вас найдутся креативные идеи?
Не хочется для такой простой задачки использовать монстров вроде ZoneMinder, AVReg, Xeoma и пр.

 ,

chukcha
()

Вернуть диски или не надо? Уговорите

Форум — Linux-hardware

Ребят, подскажите про SSD, купил сегодня две шт. Планирую заменить stripe на mirror.

У меня раньше было два диска в stripe по 120 Гб. Выглядит пока это так:

  pool: zroot
 state: ONLINE
  scan: scrub canceled on Sat Jan  6 14:47:08 2024
config:

        NAME          STATE     READ WRITE CKSUM
        zroot         ONLINE       0     0     0
          ada2p4.eli  ONLINE       0     0     0
          ada3p4.eli  ONLINE       0     0     0

errors: No known data errors
=>       40  234441568  ada2  GPT  (112G)
         40     532480     1  efi  (260M)
     532520       1024     2  freebsd-boot  (512K)
     533544        984        - free -  (492K)
     534528   16777216     3  freebsd-swap  (8.0G)
   17311744  217128960     4  freebsd-zfs  (104G)
  234440704        904        - free -  (452K)

=>       40  234441568  ada3  GPT  (112G)
         40     532480     1  efi  (260M)
     532520       1024     2  freebsd-boot  (512K)
     533544        984        - free -  (492K)
     534528   16777216     3  freebsd-swap  (8.0G)
   17311744  217128960     4  freebsd-zfs  (104G)
  234440704        904        - free -  (452K)

Я купил два диска по 240 Гб. Возник вопрос по производителю.

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

APACER - тоже неплохая фирма, но не такая прекрасная, как Kingston. Проблема в том, что если смотреть через SMART, Kingston предоставляет практически все показатели, в то время как APACER - только половину. https://paste.ee/p/D9xLe

Пока что я не распечатал упаковку, просто заметил эту разницу, глядя на уже имеющийся у меня старый диск от APACER. Я раньше вроде знал, что SMART может не отображать определенные параметры, но почему-то не придавал этому значения. И в магазине совершенно забыл об этой детали.

Что посоветуете делать? Возвращаться в магазин не хочется, особенно учитывая, что Kingston был в наличии всего один, и мне пришлось бы ждать второй. Предпочел бы избежать этого.

 

Clockwork
()

Что с ядром?

Форум — Linux-hardware

Ещё вчера работал и температура проца была 40-42 градуса. А сегодня - от 45. Ноуты разные с intel HD, дистрибутивы - Debian 12, Ubuntu LTS, Arch. Версии ядер - 5.15 - 6.6.7.

Пробовал и на X11 - DWM и Wayland - Sway, так как канон.

FF - ESR и 121. Простой сёрф, как пример - linux.org.ru, lm-sensors показывает 46 градусов. Из дополнений - Ublock original. При старте браузера вентилятор ноута взлетает. Youtube - тоже, но потом после отрисовки успокаивается. Vaapi стоит, в FF и MPV поддерживается.

Вопрос только один владельцам ноутов. У вас тоже теперь они при прокрутке LOR показывают похожие цифры?

Добавлю, что это на фоне последних обновлений ядер. Вся эта история с Debian и ext4, а также новыми новостями о уязвимостях.

Ещё что было замечено, torrent тоже повышает на 4-5 градусов, чего раньше не было. Что за?..

Аноним помог. Надо обратить внимание на

/sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preference ```

 , , ,

masterOf
()

Типа Lingvo под кеды (Кубунту)

Форум — Desktop

Нужна софтина - сабж. Чтоб ПОЛНОСТЬЮ фриварный. Чтоб было много всяких словарей, под разную тематику.

Пока интересуют буржуйский и испанский. Но и другие языки не помешат.

 

torsar
()

mpv: плейлисты ютуба

Форум — Multimedia

Как скормить mpv напрямую плейлист вида

https://youtube.com/playlist?list=PLBLA-BLA-BLA
mpv как-бы берет этот плейлист, но видит и воспроизводит только первый трек.

yt-dlp без проблем видит (и скачивает) весь плейлист.

Погуглил - везде предлагается вручную создавать плейлист типа m3u. Не понятно, если yt-dlp может с ютубными плейлистами работать, то почему mpv не может.

Как его заставить хавать ютубовские плейлисты?

 , ,

Chord
()