LINUX.ORG.RU

Сообщения Shushundr

 

Как расшарить интернет?

Форум — Admin

У меня есть:

  1. роутер с выходом в интернет, у него есть IPv4-интернет-адрес (неважно какой), у него есть адрес интерфейса LAN (пусть 192.168.0.1).
  2. к нему интерфейсом enp5s0 подключен (через провод) комп с адресом 192.168.0.2/24
  3. на этом же компе есть другой интерфейс enp6s0 с адресом 192.168.1.2/24
  4. и есть последний, самый дальний комп с адресом 192.168.1.1/24, который (проводом) соединен с компьютером из пункта 3.

На компьютере из пунктов 2-3 я включил # sysctl
net.ipv4.ip_forward = 1

На дальнем компьютере из пункта 4 я настроил default route через средний комп

маршруты на дальнем компе выглядят так:

default via 192.168.1.2 dev br-lan 
192.168.1.0/24 dev br-lan scope link  src 192.168.1.1

маршруты на среднем компе выглядят так:

# ip route show
default via 192.168.0.1 dev enp5s0 
192.168.0.0/24 dev enp5s0 metric 2
192.168.1.0/24 dev enp6s0 metric 2

на роутере тоже на всякий случай статический маршрут добавил (там web-интерфейс):

192.168.1.0/24 -> 192.168.0.2, Metric 2

Мне кажется, что пакеты должны ходить просто так (без всяких дополнительных маскарадов на среднем компьютере). Но не ходят.

например с дальнего компьютера пингуется средний, со среднего компьютера пингуется роутер, но с дальнего компьютера роутер не пингуется.

Почему?

UPD: у меня была мысль повысить метрику default route на роутере, но я не знаю как это сделать, там в web-интерфейсе такого нет.

 

Shushundr
()

Как в Java использовать Rune-ы?

Форум — Desktop

Ну то есть, четырёхбайтовые Unicode codepoint-ы?

Надо брать java –version >= 18, потому что
https://openjdk.org/jeps/400

А дальше как?

as of Java 7 you can use constants for charset name such as StandardCharSets.UTF_8

«В Java, класс IntStream представляет поток целых чисел, и каждый элемент в этом потоке занимает 4 байта, поскольку int в Java является 32-битным целым числом, независимо от платформы, включая Intel64.»

IntStream combinedStream = IntStream.concat(stream1, stream2);

Как зачитать IntStream из stdin? записать в stdout?

since Java 8, public IntStream String.codePoints() (inherited from CharSequence) and int String.codePointCount(). Такое преобразование выглядит странным, излишним: stream.mapToObj(codepoint -> String.valueOf(Character.toChars(codepoint))) .forEach(System.out::println); в нём сначала происходит конвертация в кодировку UCS-16, а затем в UTF-8, а хотелось бы сразу напрямую. Нужно обойтись без использования класса String вообще.

Вручную - многобукв:

stream.forEach(codepoint -> {
    if (codepoint < 0x80) {
        System.out.write(codepoint);
    } else if (codepoint < 0x800) {
        System.out.write(0xC0 | (codepoint >> 6));
        System.out.write(0x80 | (codepoint & 0x3F));
    } else if (codepoint < 0x10000) {
        System.out.write(0xE0 | (codepoint >> 12));
        System.out.write(0x80 | ((codepoint >> 6) & 0x3F));
        System.out.write(0x80 | (codepoint & 0x3F));
    } else {
        System.out.write(0xF0 | (codepoint >> 18));
        System.out.write(0x80 | ((codepoint >> 12) & 0x3F));
        System.out.write(0x80 | ((codepoint >> 6) & 0x3F));
        System.out.write(0x80 | (codepoint & 0x3F));
    }
});

UPD: или может быть какая-нибудь есть библиотека, в которой символы 3-х байтовые и весь рантайм под такие API переделан?

типа com.google.protobuf.ByteString

Вот посмотрите, как лапочка Дональд Кнут. У него текст состоит из страниц, на страницах расположены строки, строки состоят из боксов. Логично же текстовый документ точно так же читать - чтение текста, это некоторая последовательность обхода этих строк и боксов в каждой строке. Если надо прочитать что-то специальное (математическую формулу), то там другие правила чтения, дерево боксов, но и формулу тоже можно прочитать, просто на другом уровне. Вот почему файловые API так же не устроены? Где в Java классы TextFileReader, TextLineReader, TextBoxReader? Последний можно было бы параметризовать каким-нибудь типом, который описывает, что такое «символ». То-ли LaTeX парсит, толи Unicode GraphemeCluster-ы собирает из Unicode Codepoint, это уже мелкие детали, а наше дело - крупные.

 ,

Shushundr
()

Как математически описывают «потоки»?

Форум — Talks

Раньше были «ленты» (в 1936-м году, у Тьюринга и у Поста). Ленты можно было читать в любом направлении, перемещаться и туда, и обратно, и куда-попало. А потоки не такие, потоки надо вычитывать последовательно и они могут заканчиваться (а ленты по определению были бесконечные).

Так вот, как математики эти новомодные потоки описывают, когда доказывают корректность программ?

UPD: сайт заменил тэг «потоки» на multithreading. А я хотел streams

 ,

Shushundr
()

Что должна уметь делать консольная утилита?

Форум — Desktop

Чтобы быть удобной пользователю?

  1. во-первых, она может разбирать командную строку и получать из неё имена входных и выходных файлов, а если их там нет, то использовать stdin и stdout.

  2. во-вторых, она должна иметь ключ --help или как-то так (кстати, в каких гайдлайнах это написано?)

  3. в-третьих, она может писать в stderr цветным (красным) текстом, отключать вывод цвета при перенаправлении в пайп, и иметь ключ командной строки для того, чтобы цвет не отключать.

  4. возвращать разные коды возвратов при ошибках (есть ли какие-то стандарты? кроме «меньше нуля»)

  5. утилита может уметь разбирать из командной строки команды с параметрами (по аналогии с git)

  6. понимать локаль и выводить сообщения на языке пользователя.

  7. уметь выводить свою версию (для того, чтобы это указывать в багрепотртах)

что ещё?

 ,

Shushundr
()

{безумная} Идея по лицензированию контента форума

Форум — Linux-org-ru

Форум условно говоря состоит из:

  1. HTML-кода/шаблонов страниц;
  2. программного кода JavaScript;
  3. пользовательского контента.

Пользовательский контент можно не выдавать сразу, а затягивать в HTML при помощи JavaScript позднее (для того, чтобы у каждого фрагмента пользовательского текста был свой отдельный URL)

Дальше, в URL-ы можно добавить кусок пути, который будет указывать лицензию, например:

CC_BY-ND: Creative Commons Attribution-NoDerivs – можно использовать произведение только в исходном виде, без изменений, с указанием авторства.

CC_BY-NC-SA: Creative Commons Attribution-NonCommercial-ShareAlike – только некоммерческое использование и указание авторства

CC_BY-SA: Creative Commons Attribution-ShareAlike – можно распространять произведение и адаптировать его, в том числе для коммерческих целей, с указанием авторства и публикацией производной работы под той же лицензией.

CC_BY-NC: Creative Commons Attribution-NonCommercial – требуется только некоммерческое использование и указание авторства.

CC_BY: Creative Commons Attribution – можно копировать, распространять и адаптировать материал, в том числе для коммерческих целей, с обязательным указанием авторства.

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

Без JavaScript работать это не будет и индексироваться будет хуже, но на этот случай есть вариант включить этот же текст в секцию NoScript для старых браузеров. Т.е. если JavaScript отключен, то всё показывается из изначально загруженной страницы, а если включен то со спец-урлов. Когда сервер определится, поддерживается ли JavaScript в сессии, перестанет дублировать контент.

Вставлять можно или через iFrame (чтобы URL был записан в странице) или через изменение DOM java-скриптом (тогда URL будет записан как параметр вызова функции скрипта)

Таким образом на одном сайте сможет отображаться контент с разными лицензиями по желанию каждого пользователя и все лицензии будут указаны для каждого фрагмента.

 

Shushundr
()

Что такое Twonky Media Server ?

Форум — Multimedia

Как это установить в Gentoo? (пакет не нашел)

можно ли это чем-то заменить?

В руководстве написано:

Для воспроизведения музыкальных файлов посредством сети необходим сервер или программное обеспечение сервера, совместимые с распределением данных соответствующего формата. Для воспроизведения упомянутых аудиоформатов через сеть необходимо установить на компьютер или NAS серверное программное обеспечение, например Twonky Media Server или jRiver Media Server, для обеспечения полной поддержки. Имеется также и другое серверное программное обеспечение. Проверьте поддерживаемые форматы.

Второй, я так понимаю, вообще под Windows.

Что (PulseAudio?) и как надо потом настраивать, чтобы оно через этот медиа-сервер работало?

 ,

Shushundr
()

Library Genesis через IPFS

Форум — Desktop

В библиотеке есть книжка, которую не получается скачать,
потому что «Get» не возвращает её,
CloudFlare, ipfs.io и Pinata
сообщают, что

410 Gone

The content that you requested has been blocked because of legal, abuse, malware or security reasons.

и остаётся только последний вариант - localhost:8080.

Что и как надо установить и настроить?

acct-group/ipfs
    Group for the system-wide net-p2p/go-ipfs-bin server
acct-user/ipfs
    User for the system-wide net-p2p/go-ipfs-bin server
net-p2p/kubo
    Main implementation of IPFS

По этому поводу есть страницы:
https://wiki.gentoo.org/wiki/Kubo

# ipfs init
...
initializing IPFS node at /root/.ipfs
# mv /root/.ipfs /var/lib/ipfs/.ipfs
# chown -R ipfs:ipfs /var/lib/ipfs/.ipfs
# systemctl start ipfs.service    
# systemctl enable ipfs.service  
авг 07 12:16:54 lacaille9352 systemd[1]: Started ipfs.service.
авг 07 12:16:54 lacaille9352 ipfs[328312]: Initializing daemon...
авг 07 12:16:54 lacaille9352 ipfs[328312]: Kubo version: 0.26.0
авг 07 12:16:54 lacaille9352 ipfs[328312]: Repo version: 15
авг 07 12:16:54 lacaille9352 ipfs[328312]: System version: amd64/linux
авг 07 12:16:54 lacaille9352 ipfs[328312]: Golang version: go1.20.5
авг 07 12:16:56 lacaille9352 ipfs[328312]: Swarm listening on /ip4/127.0.0.1
...
авг 07 12:16:56 lacaille9352 ipfs[328312]: Swarm announcing /ip4/127.0.0.1
...
авг 07 12:16:56 lacaille9352 ipfs[328312]: RPC API server listening on /ip4/127.0.0.1/tcp/5001
авг 07 12:16:56 lacaille9352 ipfs[328312]: WebUI: http://127.0.0.1:5001/webui
авг 07 12:16:56 lacaille9352 ipfs[328312]: Gateway server listening on /ip4/127.0.0.1/tcp/8080
авг 07 12:16:56 lacaille9352 ipfs[328312]: Daemon is ready

И что дальше?

Жмякаю «local gateway» и всё, ничего не происходит.

 

Shushundr
()

Где книги?

Форум — Linux-org-ru

Есть две строчки в исходниках:

https://github.com/maxcom/lorsource/blob/master/src/main/webapp/.htaccess#L4C20-L4C37

Redirect permanent /info.html http://www.linux.org.ru/books/
Redirect permanent /info-mirror.html http://www.linux.org.ru/books/

я не понимаю, зачем они нужны, если сайт ничего не показывает по адресу http://www.linux.org.ru/books

 ,

Shushundr
()

В чём разница между cachefs и bcachefs?

Форум — Admin

# mount /srv/db/repos
монтируется через fstab
# mount -t tmpfs tmpts /var/db/repos
# mount | grep repos
repos on /srv/db/repos type 9p (rw,relatime,access=client,trans=virtio)
tmpfs on /var/db/repos type tmpfs (rw,relatime,inode64)

https://stackoverflow.com/questions/2193584/copy-folder-recursively-excluding-some-folders

rsync enables a set of options that are commonly used for archiving files, which means preserving as much of the original file’s metadata as possible.

The -a option is equivalent to specifying the following options individually:

-r: recursive, which means rsync will traverse subdirectories
-l: preserve symbolic links
-p: preserve permissions
-t: preserve timestamps
-g: preserve group ownership
-o: preserve owner ownership
-D: preserve device files and special files

By using -a, you’re telling rsync to preserve the file’s metadata, such as permissions, timestamps, and ownership, in addition to copying the file’s contents. This is useful when you want to create an exact replica of the original files, including their metadata.

# time rsync -a --exclude=.git /srv/db/repos/* /var/db/repos/

real 33m8,741s
user 0m18,758s
sys 2m15,623s

# du -b /var/db/repos/gentoo
193974760 /var/db/repos/gentoo

193 Mb = 0.2 Gb

https://en.wikipedia.org/wiki/CacheFS

«CacheFS is a family of software technologies designed to speed up distributed file system file access for networked computers.»

О, у меня как раз сетевая файловая система 9p.

«Project status seems to be stalled»

Ясно

The Linux CacheFS currently is designed to operate on Andrew File System and Network File System (NFS) filesystems.

Жаль, что про 9p тут ничего не говорится.
Не через NFS же теперь подключать?

 ,

Shushundr
()

Dependency resolution took 1011.12 s (backtrack: 20/20).

Форум — Linux-install

1011.12 s это 17 минут Как считаете, это нормально?

Станет ли работать быстрее, если использовать tmpfs и какую-нибудь overlayfs ? Что и как делать детально?

 

Shushundr
()

Не запускаются графические программы

Форум — Desktop

liferea

(net.sourceforge.liferea:3558757): dbind-WARNING **: 17:16:57.225: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
libEGL warning: DRI3: failed to query the version
libEGL warning: DRI2: failed to authenticate
libEGL warning: DRI3: failed to query the version
libEGL warning: MESA-LOADER: failed to open zink: /usr/lib64/dri/zink_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri, suffix _dri)


(net.sourceforge.liferea:3558757): Gdk-WARNING **: 17:17:22.839: The program 'net.sourceforge.liferea' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadRequest (invalid request code or no such operation)'.
  (Details: serial 158 error_code 1 request_code 155 (unknown) minor_code 1)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the GDK_SYNCHRONIZE environment
   variable to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

Вот похожая:
https://forums.gentoo.org/viewtopic-t-1167947-start-0.html
надо выполнить действие
«removed x11-drivers/xf86-video-intel and reconfigured X with modesetting DDX»
как это сделать?

 

Shushundr
()

Какой программой просматривать .atom-файлы (RFC 4287)?

Форум — Desktop

https://ru.wikipedia.org/wiki/Atom

мне надо не только с github: https://github.com/gentoo/gentoo/commits/master.atom

но и вообще с разных сайтов.

https://wiki.gentoo.org/wiki/News_feed

$ eix -cC net-news

[N] net-news/alligator (23.04.3): Convergent RSS/Atom feed reader for Plasma
[N] net-news/amphetadesk (~0.93.1-r1): AmphetaDesk is a free syndicated news aggregator
[N] net-news/canto-curses (~0.9.9): The ncurses client for canto-daemon
[N] net-news/canto-daemon (~0.9.8): Daemon part of Canto-NG RSS reader
[N] net-news/liferea (1.14.5-r1): News Aggregator for RDF/RSS/CDF/Atom/Echo feeds
[N] net-news/newsboat (2.28): An RSS/Atom feed reader for text terminals
[N] net-news/rssguard (4.5.0): Simple (yet powerful) news feed reader
[N] net-news/rsstail (2.1_p20200310): A tail-like RSS-reader
[N] net-news/rsstool (1.0.1_rc2): cmdline tool to read, parse, merge, and write RSS (and Atom) feeds
[N] net-news/sfeed (1.8): Simple RSS and Atom parser
[N] net-news/snownews (~1.9-r1): Command-line RSS feed reader
[N] net-news/yydecode (0.2.10-r2): A decoder for yENC format, popular on Usenet
Found 12 matches

 

Shushundr
()

Автоматизированное конспектирование

Форум — Desktop

Чтобы запихнуть в программу .pdf-файл, а на выходе получить короткий текст в несколько страниц, чтобы не читать всё.

Язык, обоих текстов конечно же русский.

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

 

Shushundr
()

Как проект GNU работает с кодами машинных команд?

Форум — Development

В 1993-м году было так:

The GNU assembler provides assembly and disassembly for many targets, but different techniques are applied ad hoc to support different architectures [Elsner et al. 1993]. For example, Pentium instructions are recognized by hand-written C code, but MIPS instructions are recognized by selecting a mask and a sample from a table, applying the mask to the word in question, then comparing the result against the sample. On both targets, operands are recognized by short programs written for abstract machines, but a different abstract machine is used for each target. Another set of abstract machines is used to encode instructions during assembly. The implementations of the abstract machines contain magic numbers and hand-written bit operations. The programs interpreted by the abstract machines are represented as strings, and they appear to have been written by hand.

Что поменялось за 31 год?

 , ,

Shushundr
()

Libgen Desktop

Форум — Talks

Никто не хочет портануть вот эту C#-приложуху под Linux:
https://github.com/libgenapps/LibgenDesktop
https://wiki.mhut.org/software:libgen_desktop
? Придётся, правда, переписывать UI, или использовать авалонию, потому что там WPF…

 , ,

Shushundr
()

Как в ядро Linux передаются строки?

Форум — General

Всегда ли там кодировка utf-8 или можно что-нибудь с ядром сделать, чтобы при работе с конкретной программой, строки из неё принимались в другой кодировке?

Мне не важно, к чему там привыкли glibc и gtk+, я спрашиваю про некий абстрактный рантайм, в котором я бы хотел иметь возможность свою кодировку запихивать в ядро.

 , ,

Shushundr
()

ONYX BOOX Tab Ultra C Pro

Форум — Linux-hardware

Сколько людей его использует в России и в мире?
Есть ли на LOR счастливые пользователи?
Диагональ 10.3" это же меньше, чем A4? Это плохо.
Как у него с опенсорсосовместимостью?
Можно ли им пользоваться на ярком солнце (на практике, а не в теории)?
Если он предназначен для использования вне помещений, то почему в него не встроили ГЛОНАСС, GPS и что там ещё бывает?

 ,

Shushundr
()

Какие программы для работы с текстами вы знаете?

Форум — Desktop

Есть ли уже такая:
Предложите пример несложной несуществующей консольной программы (комментарий) ?

Какие ещё бывают? Какие могли бы быть?

 

Shushundr
()

Межмолекулярные связи: ковалентные, ионные, металлические, водородные

Форум — Science & Engineering

Можно сделать язык для описания химических связей, аналогичный VHDL? Если уже сделали, то как он называется?

 ,

Shushundr
()

Существует ли какой-нибудь «язык описания проводов»?

Форум — Talks

Суть в том, что такой язык «разметки» (или «программирования») должен позволять описывать отдельные биты, а так же способы их группировки в битовые поля.

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

Просто какого-нибудь ASN.1 не хватит, так как он (я так предполагаю) не позволяет описывать преобразования битовых полей или битовых значений (не умеет «вычислять»). С другой точки зрения, вычисления в стиле арифметики (сложение/вычитание) не требуются. Основные операции - это перестановки, склеивания и разрезания.

 , , ,

Shushundr
()

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