← All posts tagged Linux

Strephil
Linux Arch календарь 15 лет назад установил на своём компьютере Arch Linux, и он работает без переустановок без смс (копирование с диска на диск переустановкой я не считаю).

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

А что принесли эти годы мне? 15 лет бессмысленного и не очень весёлого дрочева.

15 лет назад я установил Arch Linux.
Strephil
Linux Windows коммунизм Linux — это капитализм, твой компьютер — это твоя собственность, и только ты решаешь, какая программа будет выполняться на твоём компьютере;

Windows — это коммунизм, какая программа будет выполняться на "этом компьютере", решает партия.
Strephil
Linux hugepages Попробовал попердолиться с Huge pages. Взять lmbench, в bw_mem заменил malloc на mmap с MAP_HUGETLB, запустил тест bcopy.
Получилось медленнее, чем с обычным malloc! (А malloc-то внутри такой же mmap, только без MAP_HUGETLB), аж на целых 25%.
Я могу понять, почему это не быстрее, ладно. Но почему оно может быть медленнее, не понимаю.
Особенности архитектуры? Я смотрю на PPC64.
Strephil
Linux rust Линус Торвальдс не исключил возможность интеграции поддержки Rust в ядро 5.20
Что ж, будем надеяться, что после 5.19 выйдет 6.0
Strephil
Linux говно Открываю файл, проверяю результат open, не ошибка. mmap'лю его, проверяю результат, не ошибка. Нормально всё, что я сделал не так?
Пытаюсь прочитать — получаю SIGBUS, потому что файл был пустой.

Но как вообще это отлаживать? Когда я запустил программу, и она тупо упала, я не получил никакого внятного сообщения об ошибке, просто "Bus error" и какие-то непонятные адреса в dmesg.

То, что я делаю последовательность системных вызовов, каждый из которых выполняется успешно, а в итоге программа падает, это какое-то говно.
Strephil
Linux VPN ipsec ikev2 Использую strongswan, Arch и Ubuntu. И какое-то оно всё жутко глючное.
Что-то работает, что-то не работает, часть сайтов не открывается, mtu не то. То реаутентификация не проходит, то ещё что-то.
Как-то с wireguard никаких проблем не было. Включил и работает.
Strephil
Linux FreeBSD интернеты SSH В интернетах кто-то неправ.
Пытаюсь подключиться с одной машины с Linux на FreeBSD по ssh. На Linux и на FreeBSD запущены tcpdump.
На Linux я вижу, как я посылаю SYN, через 100 мс получаю один пакет RST.
На FreeBSD я вижу, как на входящий SYN отвечаю несколькими SYN-ACK. При этом seq у этого пакета, который отправляется с FreeBSD, совпадает с тем, который я вижу на Linux.

Кто-то в интернетах подменяет флаг SYN-ACK на RST? Кто? Как? зачем?
Strephil
Linux Arch sdxc Хотел посмотреть фоточки на ноутбуке.
Вставил карточку в ноутбук, загрузил Arch Linux — карточка не видна, вообще не видна /dev/mmcblk0 нет.
Перезагрузился в windows, карточка видна, скопировал фоточки на шёсткий диск.
Перезагрузился в Arch Linux, карточка видна, /dev/mmcblk0 есть, подмонтировал, всё читается.
Готово для десктопа, можно пользоваться.
Strephil
Linux GCC GNU clang bpf BPF-программы компилилруются компилятором clang, а не gcc.
Почему?
Чтобы потихоньку отвыкали от мозолей и привыкали к проприетарщине. Сначала только BPF, потом что-то ещё, а потом никаких свобод и не останется.
Strephil
Linux bpf Давно хотел разобраться с bpf в Linux, даже книжку купил про это какую-то. Но всё как-то не доходили руки, приведённые в книжке примеры на новом ядре уже не работали.
Посмотрел примеры здесь:
nakryiko.com

И собрал какой-то хэлловорлдик, который срабатывает, когда кто-то делает execve.

Суть в том, что скомпилированную clang'ом bpf-программу, объектный файл, нужно скормить bpftool gen skeleton, эта программа сгенерирует сишный файл, в котором этот объектник будет лежать в виде бинарного блоба.
А ещё будет ряд сгенерированных функций с постфиксами __open, __load, __attach. Достаточно выполнить эти функции, и всё заработает. Хорошо.
Strephil
Pidgin Linux wayland Попытка использовать мной wayland подсветила этот процесс умирания Linux на десктопе.

pidgin, вроде использовал его для постов в жуйк и всё работало, как-то не обращал внимание, что переход на GTK3 запланирован 9 лет назад, да так и не сделан, pidgin 3.0 всё никак не выйдет.
Strephil
Linux Vim Arch 282 Буквально сегодня утром подумал, что следующими могли бы быть линуксоиды.
Сейчас сажают свидетелей иеговы, это не сложно, их довольно много, работа в общем не пыльная. Они особо никому не нравятся, никто за них заступаться не будет. Хотя даже Путин несколько раз недоумевал, чего это их, за что. Но в целом никто не против. Они безобидные, не сопротивляются, план закрыть можно, и в сорок лет на пенсию.
Но ведь они тоже закончатся, а премий хочется. Тогда можно сажать смешных красноглазиков. Интересно, всех сразу признают экстремистами или по частям? Сначала запретят Arch? vim будет уже нельзя, а emacs ещё можно?
Strephil
Linux d-bus Долгое время я считал, что d-bus не нужно. Даже старался выпилить её из системы и пересобрать пакеты, которые от неё зависят. Потом смирился, ну есть и есть.
Сегодня разговорился с коллегой, так он говорит, что это очень хорошая вещь, можно делать многие вещи без дурацкого пердолинга со скриптами. Заинтересовало. Нужно будет тоже попробовать что-то такое поделать, поразбираться. Только боюсь, что слишком многие программы d-bus не поддерживают.
Strephil
Linux десктоп глюкалово Готов ли Linux для десктопа к началу 2021 года — к началу третьего десятилетия XXI века?
Сейчас мы вместе с подписчиками этого канала это узнаем!

Мы взяли ноутбук HP Probook и монитор LG. Соединин их кабелем HDMI и загрузим Arch Linux. Видите изображение на внешнем мониторе? Его нет. На экране ноутбука мы видим приглашения lightdm для ввода пароля, на внешнем мониторе — пусто.
Переключимся в виртуальную консоль с помощью хорошо знакомого сочетания клавиш Ctrl — Alt -F2. Что это? Изображение на внешнем мониторе появилось!

Заменим кабель HDMI на VGA и вернёмся на Ctrl -Alt — F7. Изображения по-прежнему нет. Переключимся опять на виртуальную консоль и перезапустим lightdm:
sudo systemctl restart lightdm.

Что это? Изображение на внешнем мониторе появилось! Теперь заменим кабель VGA на HDMI. Монитор снова выключился. Верёмся в виртуальную консоль и перезапустим lightdm ещё раз. Теперь всё работает!

В этом видео мы рассмотрел особенности применения Linux на десктопе в 2021 году. Как видим, всё работает, можно пользоваться!
Strephil
Linux systemd Чё-то не соображу. Мне нужно, чтобы один unit запускался по таймеру, а второй выполнялся бы перед ним или после него.
Как это правильно настроить?
Strephil
Linux imagemagick Давно известно, что imagemagick попахивает говнецом.
Но вот мне понадобилось узнать размеры фоточки. Я запустил команду
identify -format '%w %h\n' фоточка.jpeg

Эта команда выполняется 378 мс! Из раза в раз столько времени! Какой-то кошмар.

Установил graphicsmagick:
gm identify -format '%w %h' фоточка.jpeg

Отработало за 6 мс.