LINUX.ORG.RU

Сообщения Legioner

 

Непонятные ошибки в таблице роутинга ipv6

Форум — Admin

Centos 7.6, интерфейс настраивал через nmcli просто указав адрес с подсетью и шлюз. Вывод nmcli:

[root@msk ~]# nmcli
eth0: connected to eth0
        "Red Hat Virtio"
        ethernet (virtio_net), 52:54:00:18:80:F7, hw, mtu 1500
        ip4 default, ip6 default
        inet4 194.113.107.147/32
        route4 194.113.107.147/32
        route4 194.113.107.129/32
        route4 0.0.0.0/0
        inet6 2a07:14c0:1:1810:550:5e4d:9634:1cf1/64
        inet6 fe80::66ee:1640:67cc:5d0c/64
        route6 2a07:14c0:1:1810::/64
        route6 ff00::/8
        route6 fe80::/64
        route6 ::/0

lo: unmanaged
        "lo"
        loopback (unknown), 00:00:00:00:00:00, sw, mtu 65536

DNS configuration:
        servers: 1.1.1.1
        interface: eth0

Если написать ip -6 route, выходит что-то непонятное:

unreachable ::/96 dev lo metric 1024 error -113 pref medium
unreachable ::ffff:0.0.0.0/96 dev lo metric 1024 error -113 pref medium
unreachable 2002:a00::/24 dev lo metric 1024 error -113 pref medium
unreachable 2002:7f00::/24 dev lo metric 1024 error -113 pref medium
unreachable 2002:a9fe::/32 dev lo metric 1024 error -113 pref medium
unreachable 2002:ac10::/28 dev lo metric 1024 error -113 pref medium
unreachable 2002:c0a8::/32 dev lo metric 1024 error -113 pref medium
unreachable 2002:e000::/19 dev lo metric 1024 error -113 pref medium
2a07:14c0:1:1810::/64 dev eth0 proto kernel metric 100 pref medium
unreachable 3ffe:ffff::/32 dev lo metric 1024 error -113 pref medium
fe80::/64 dev eth0 proto kernel metric 100 pref medium
default via 2a07:14c0:1:1810::1 dev eth0 proto static metric 100 pref medium
При этом ipv6 нормально работает, пинги туда-сюда идут по крайней мере. Хотелось бы понять, что это там такое в таблице роутинга, что за ошибки и откуда.

 , ,

Legioner ()

Посмотреть, что было сделано после установки

Форум — Linux-install

Есть Ubuntu 18.04, в которой после установки что-то сделали. Хочется понять: 1. Список пакетов, который был установлен установщиком (вероятно минимальный). 2. Список пакетов, который был установлен после установки. 3. Список изменённых файлов (т.е. тех файлов, которые отличаются от файлов в пакетах, добавленных, удалённых и тд).

Как такое сделать?

 

Legioner ()

Оставлю для гугла: online.net ipv6 ubuntu 18.04

Форум — Talks

Тут поковырялся с сабжем, там не всё так просто, как кажется, в итоге вроде разобрался, напишу тут, может кому поможет. В панели получаете сеть /48, при желании делите на подсети, я себе зароутил всю /48. Придумываете себе любой адрес с вашим префиксом, я просто сделал hexdump -n 10 /dev/urandom. Далее пишете такие конфиги и скрипты (где dhcp6.client-id там будет ваш DUID из панели управления):

root@onl:~# cat /etc/netplan/01-netcfg.yaml
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s20:
      dhcp4: yes
      addresses:
        - 2001:bc8:3d28:511a:4670:c4d4:18ba:6998/48

root@onl:~# cat /etc/dhcp/dhclient-6.conf
interface "enp0s20" {
    send dhcp6.client-id 00:xx:xx:xx:xx:xx:xx:xx:xx:77;
}

root@onl:~# cat /etc/systemd/system/dhclient-6.service
[Unit]
Wants=network-pre.target
After=network-pre.target
Before=systemd-networkd.service

[Service]
Type=forking
PIDFile=/run/dhclient-6.pid
ExecStart=/sbin/dhclient -6 -P -pf /run/dhclient-6.pid -cf /etc/dhcp/dhclient-6.conf enp0s20

[Install]
WantedBy=multi-user.target

ну и стандартно

systemctl daemon-reload
systemctl enable dhclient-6
systemctl reboot

вроде нормально работает. Долго ковырялся пытаясь сделать по уму, через этот netplan с networkd но не осилил, кажется не умеют они такого, пришлось колхозить запуск dhclient отдельным сервисом. Если вдруг кто подскажет, как это сделать кошерно, буду благодарен.

 , ,

Legioner ()

CentOS: WARNING jump label: negative count!

Форум — General

При загрузке пишется что-то вроде

WARNING: CPU: 0 PID: 0 at kernel/jump_label.c:90 __static_key_slow_dec+0xa6/0xb0
jump label: negative count!
Modules linked in:
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.10.0-957.12.2.el7.x86_64 #1
Hardware name: Online Labs SR/SR, BIOS 00.00.00.0012 01/17/2018
Call Trace:
 [<ffffffff90d63041>] dump_stack+0x19/0x1b
 [<ffffffff906976e8>] __warn+0xd8/0x100
 [<ffffffff9069776f>] warn_slowpath_fmt+0x5f/0x80
 [<ffffffff907b3d16>] __static_key_slow_dec+0xa6/0xb0
 [<ffffffff907b3d42>] static_key_slow_dec+0x22/0x50
 [<ffffffff90640bce>] arch_smt_update+0x7e/0x110
 [<ffffffff913954f9>] check_bugs+0x2de/0x33a
 [<ffffffff9138619d>] start_kernel+0x422/0x46c
 [<ffffffff91385b7b>] ? repair_env_string+0x5c/0x5c
 [<ffffffff91385120>] ? early_idt_handler_array+0x120/0x120
 [<ffffffff9138572f>] x86_64_start_reservations+0x24/0x26
 [<ffffffff91385885>] x86_64_start_kernel+0x154/0x177
 [<ffffffff906000d5>] start_cpu+0x5/0x14

Что это и стоит ли беспокоиться? Появилось вроде после обновления ядра на эту уязвимость MDS. CentOS 7, Atom C2350.

 ,

Legioner ()

На что влияет галочка Enable SELinux в CentOS 7?

Форум — Linux-install

В инсталлере есть галочка Enable SELinux. На что она влияет в конечной системе? Конкретно интересует, как его правильно включить после установки, если галочка была снята.

Про /etc/selinux/config SELINUX=disabled поменять на enforcing знаю. Ещё на что-то может влиять?

 ,

Legioner ()

Почему в торрентах не раздают видео, аудио и субтитры отдельно?

Форум — Talks

Качаю, например, GoT с какого-нибудь трекера. Если бы всё было как в сабже, я легко мог бы это раздавать на том же рутрекере, звуковые дорожки на сотню мегабайтов подкачались бы и всё, а основной размер в видеопотоке оставался бы в оригинальном файле (например хардлинками). Да и в целом все эти странные форматы вроде матроски просто не нужны, положить в папочку все нужные файлики и всё! Какие ещё матроски.

 ,

Legioner ()

Скрипт для билда: обновление во время билда

Форум — Development

Делаю скрипт, который будет дёргаться при изменении в репозитории. Смысл в том, чтобы сделать pull, собрать новую версию, установить куда положено. Как обрабатывать ситуацию, когда событие произошло во время билда? Второй билд запускать не хочу. Собственно хочу, чтобы билд дошёл до конца, а потом запустился ещё раз, сбилдив на сей раз последнюю версию.

Пока делаю примерно так:

if [ -e build-in-progress ]; then
  touch rebuild
  exit
fi
touch build-in-progress
...
if [ -e rebuild ]; then
  rm rebuild
  exec $*
fi
rm build-in-progress

но как-то всё это ненадёжно, всякие там гонки могут быть, если запрос придёт прям в то время, когда проверка выполняется.

Есть ли какой-нибудь способ сделать это всё по уму, который будет работать железобетонно?

 

Legioner ()

Ищу VPS, который даёт маршрутизируемую /56 IPv6 подсеть

Форум — Talks

Собственно сабж. Очень желательно Нидерланды, но в крайнем случае можно и другие европейские страны, можно и российский, если на их серверы не действует великий российский фаервол.

Из известных мне: online.net вроде бы, но там нужно покупать дорогой выделенный сервер, зато даёт /48 на аккаунт. Вроде хвалили linode но просто так не дают, просят обосновать, я попросил, они вроде и не отказывают но автоматом не дают, а настаивать я стесняюсь.

PS неужели IPv6 такой дорогой? У меня сервер с IPv4 арендуется меньше чем за евро в месяц (по акции, правда, но сомневаюсь, что они в минус работают). Я бы тот же бакс в месяц за /48 платил без проблем.

 ,

Legioner ()

Очередной поиск замены микросерверу

Форум — Talks

В очередной раз интересуюсь заменой Microserver Gen8. Сейчас придумал такой план. Во-первых есть бесшумные компьютеры маленького фактора (вроде Intel NUC, но других производителей), даже без вентиляторов есть. Во-вторых сегодня обнаружил такой класс продуктов, как SATA Backplane. Как я понял, это во-первых корзина для дисков, во-вторых там сзади стоит какая-то микросхема, которая магическим образом соединяет все диски в один шнурок и втыкается куда-то там в компьютер. Информации по такому чудо устройству мало и хотелось бы почитать более детально, если кто знает:

1. Я вообще правильно пишу или что-то путаю?

2. Как это подключается? Можно ли подключить по USB? Для четырёх дисков требуется немалое питание, как его подключать?

3. Требуется ли специальное охлаждение для четырёх дисков? Никогда этим не заморачивался, но четырёх дисков в ряд у меня и не было. В идеале хочется, чтобы всё работало без единого вентилятора. Диски обычные HDD 3.5 класса WD Red или подобного (5400 оборотов в секунду).

4. Как линукс увидит всё это? Просто как 4 обычных диска, а дальше уже моё дело? Не потребует ли это каких-нибудь треклятых проприетарных драйверов?

5. Есть ли дешёвые способы сделать удалённое управление для не-сервера? Т.е. чтобы я мог установить Linux тот же по сети, не таская монитор с клавиатурой туда-сюда?

 ,

Legioner ()

Простой неблокирующий HTTP-стек для Java

Форум — Development

Есть ли такой в природе? В первую очередь интересен Android. Вроде nio есть, то бишь неблокирующий код можно писать, но популярная библиотека Volley держит пул потоков (ещё и довольно маленький) для каждого запроса. В том числе DNS, я так понимаю, он по дефолту в жаве блокирует поток, поэтому нужна альтернативная реализация. Какая-то странная ситуация выходит. Ладно серверы, там гонять потоки не проблема, а в мобильном приложении во-первых неблокирующий АПИ позволит убрать всю синхронизацию, т.к. всё будет в одном потоке, во-вторых там же вроде как в принципе должны все экономить циклы, а тут пускаем кучу потоков, жрём память, не нужно ведь всё это. Интересует и сервер и клиент (HTTP везде примерно одинаковый, поэтому по идее разницы большой не должно быть).

 , , ,

Legioner ()

Продвинутый HTML видеоплеер

Форум — Talks

В очередной раз пытаюсь построить удобную систему для просмотра видео с NAS на телевизоре.

Что мне не нужно: комбайны вроде Emby или Plex.

Что мне нужно: 1. Серверная часть, которая умеет на лету ремуксить файл как положено. Естественно посредством ffmpeg и очень желательно именно на лету, без всяких предобработок по 5 минут. Естественно с оффсетами, то бишь если я перематываю в конец, чтобы там тоже перезапустился процесс. 2. Клиентская часть, которая умеет это всё запрашивать и показывать.

Телевизор умеет показывать всё, что ему скормишь через стандартный HTML-плеер. В плане кодеков. То бишь никакой причины перекодировать что-либо нет. Всё, что надо: сремуксить исходный файл в mkv-поток с выбранным аудио-потоком. Дальше он разберётся. Это раз. Субтитры он умеет только в vtt, субтитры из mkv вытаскивать дело геморное, в общем и целом я считаю, что субтитры нужно прикручивать сверху, тем более, что в качественных релизах субтитры во всяких графических форматах вроде pgs, которые, естественно, хочется показывать как положено: люди стараются, выбирают цвета, позиционирование.

Что я делаю сейчас: если нужный мне аудиопоток не дефолтный, делаю ремукс, иначе кормлю mkv файл как есть. Делаю тупо малюсенький HTML руками, в котором указываю этот файл и vtt. Если субтитры в PGS, вытаскиваю их, делаю перекодирование какой-то жаваутилитой в XML+PNG и простым жаваскриптом показываю поверх видео. В принципе работает, но это всё из дерьма и палок, как говорится. Хочется цельного приятного опенсорс решения.

Озаботился ли кто-то таким или я первый, кому такое в голову пришло? Давно хочу это всё сделать в нормальном виде, вроде всё просто, но нюансов много. Особенно если на входе DVD или BDMV файлы, там, конечно, вообще хочется полноценный интерпретатор этого хозяйства на JavaScript, с менюшками и всем таким, но это, конечно, уже совсем другой уровень. Пока можно и mkv обойтись.

Всякие DLNA лесом, не понимаю я, как оно работает, и понимать не хочу.

 

Legioner ()

VPS в нидерландах дешевле $3.5 в месяц

Форум — Talks

Есть vultr: 10 GB SSD, 1 CPU, 512 MB, 0.50 TB, $3.50/mo. Накидайте варианты получше.

 

Legioner ()

Кошерный способ распространять APK кому положено

Форум — Development

Есть приложение, которое не интересно широкой публике (не секретное, но предназначено для определённых клиентов). Как его правильней распространять? Если просто засунуть в Google Play, то его будет качать кто попало, само по себе пофиг, конечно, но это визуальный мусор, ещё какие-нибудь отзывы и рейтинги начнут ставить, в общем ни к чему. Если просто давать скачивать APK с сайта, то не будет автоматического обновления, к тому же вроде бы в Google Play заливаются краши? В общем какую-то ценность этот Play вроде несёт. Я так понял, там есть какие-то корпоративные каналы, но тут не понятно, сами устройства будут обычные без всяких там управлений. Т.е. в идеале должен быть доступ по ссылке, чтобы оно не показывалось в поисках и тд, а только тем, кто зашёл по прямой ссылке, отключены всякие там рейтинги и прочее.

 

Legioner ()

Любителям перевешивать ssh на другой порт

Форум — Talks

Серверу один день. Глянул интереса ради

94.191.44.208 - - [19/Feb/2019:16:12:39 +0600] "GET /cacti/plugins/weathermap/editor.php HTTP/1.1" 404 169 "-" "Mozilla/5.0 (Windows NT
94.191.44.208 - - [19/Feb/2019:16:12:39 +0600] "POST /wuwu11.php HTTP/1.1" 404 571 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537
94.191.44.208 - - [19/Feb/2019:16:12:39 +0600] "POST /xw.php HTTP/1.1" 404 571 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36
94.191.44.208 - - [19/Feb/2019:16:12:40 +0600] "POST /xw1.php HTTP/1.1" 404 571 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36
94.191.44.208 - - [19/Feb/2019:16:12:42 +0600] "POST /9678.php HTTP/1.1" 404 571 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.3
94.191.44.208 - - [19/Feb/2019:16:12:43 +0600] "POST /wc.php HTTP/1.1" 404 571 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36
149.202.191.218 - - [19/Feb/2019:16:12:43 +0600] "\x15\x03\x01\x00\x02\x02P" 400 173 "-" "-" "-"
149.202.191.218 - - [19/Feb/2019:16:12:43 +0600] "\x15\x03\x01\x00\x02\x02P" 400 173 "-" "-" "-"
и такого сотни. На какой порт nginx перевешиваете? :)

 

Legioner ()

Как правильно дробить андроид приложение на опциональные модули?

Форум — Development

Сейчас получается, что я сую в приложение кучу всякого мусора. Китайский SDK для RFID-сканера, Zebra SDK для принтера. В итоге ради того, чтобы работала одна кнопочка, приложение пухнет на десяток jar-ок и несколько мегабайтов, ещё и на других платформах запускается с костылями. Тот же proguard нифига не работает, я уж не стал разбираться почему, он мне там простыню выстлал под сотню строк ошибок.

В общем хочется модульности. Чтобы был основной проект и в каком-то виде его компоненты. Если у человека зебровский принтер - ставит компоненту.

По каким словам гуглить такие техники? Вообще на практике я, как юзер, такого пока не видел. Я предполагаю, что мне надо делать отдельные apk, которые будут содержать в себе сервисы специально для моего приложения, а приложение потом будет взаимодействовать с этими сервисами, правильно?

 

Legioner ()

Поругайте Xperia XZ1 Compact Black

Форум — Mobile

Нужен девайс для разработки. Гугловые девайсы у нас не продаются, а даже если найти, стоят больше топовых айфонов, в общем не то. Как я понял, Sony уважает открытый андроид и даёт официальную сборку AOSP для этих телефонов. Я за это их уважаю и хочу купить именно их модель. Посмотрев в магазинах нашёл сабж за 15 тысяч, вроде копейки, надо брать. По быстрому просмотру и отзывам вроде ничего плохого не нашёл, я бы сказал, он мне даже нравится. Что в нём может быть плохого? Могу за похожие деньги взять XA2, но он подороже и в нём какой-то древний процессор. Ещё и экран лопата. Я люблю маленькие экраны.

 

Legioner ()

Андроид, человеческое поведение для форм

Форум — Development

По умолчанию поведение фокуса какое-то упоротое. Т.е. я просто беру простейшую форму, кидаю туда TextEdit, button и начинаются проблемы. Во-первых сразу при запуске курсор стоит в TextEdit-е, причём клавиатуры нет и зачем он там стоит - никому не понятно. Во-вторых если таки кликнуть на TextEdit и потом нажать зеленую кнопку типа Ок, то жмякается следующая кнопка (вроде как фокус переходит на неё) но клавиатура не закрывается, лол. Причём ввод из неё идёт в никуда. Снять выделение с Input-а просто невозможно, кликаешь там в пустое место и тд, реакции 0.

По отдельным моментам вроде есть какие-то решения, всякие там магические заклинания android:focusableInTouchMode=«true» на Layout и тд, можно, наверное, на каждую мелочь написать обработчик в форме, но это жесть, на примитивный функционал, который, казалось бы, должен быть по умолчанию, столько усилий.

Может я что-то в корне не так понимаю?

 ,

Legioner ()

Android, JNI для одной архитектуры

Форум — Development

Добавил .so для одной архитектуры (armчегото), теперь на x86 эмулятор вообще apk не ставится. Можно как-то сделать, чтобы он хотя бы ставился, понятно, что те классы, которые грузили ту библиотеку, работать не будут, мне и не надо, пусть кидают исключения. Версии этой библиотеки для x86 естественно нет.

 ,

Legioner ()

Nearby connections API

Форум — Development

Есть локальная сеть предприятия, в которой будут девайсы на андроиде. В норме они будут общаться через сервер. Но интернета может не быть какое-то время, а работу прерывать недопустимо. Каким образом понадёжней обеспечить взаимодействие устройств друг с другом? Надёжно ли апи из сабжа? Можно ли рассчитывать на гарантированную работу? Недоверие у меня к такого рода p2p решениям, я бы лучше сервер нормальный в этой сети поставил, но это по ряду причин неудобно.

 ,

Legioner ()

Не срабатывает правило на ICMP6 Neighbor advertisement

Форум — General

OpenBSD 6.4. Значимые строчки из pf.conf:

block log
pass in quick on vio0 inet6 proto icmp6 icmp6-type neighbradv code 0

Т.е. смысл в том, чтобы пропускать этот пакет без лога. Судя по pflog они этим правилом не ловятся:

16:34:36.321539 rule 0/(match) block in on vio0: fe80::225:90ff:fed4:e03e > ff02::1: [|icmp6]
  0000: 6000 0000 0020 3aff fe80 0000 0000 0000  `.... :.........
  0010: 0225 90ff fed4 e03e ff02 0000 0000 0000  .%.....>........
  0020: 0000 0000 0000 0001 8800 aafe 2000 0000  ............ ...
  0030: 2a04 52c0 0101 0502 0000 0000            *.R.........

Другие ICMP6 пакеты ловятся (похожим правилом). Пытался по байтам разобрать пакет, вроде ICMP6 пакет именно указанного типа. Пытался ловить более общими правилами:

pass in quick on vio0 inet6 proto icmp6
pass in quick on vio0 inet6 proto icmp6 icmp6-type neighbradv
тоже не ловятся (другие пакеты вроде пингов нормально ловятся).

 , , , ,

Legioner ()

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