home.social

#ld_preload — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #ld_preload, aggregated by home.social.

  1. So that I can perpetrate a Monstrous Evil I need to use . I found @b0rk's article (jvns.ca/blog/2014/11/27/ld-pre) and via that Ian Taylor's 20 part guide to (web.archive.org/web/2026051514). There's a comment from a reader there that provides a way of turning the guide into an , but that includes the blog readers' comments. Someone else patched the script to exclude them: web.archive.org/web/2024090900

    Hurrah for other people!

  2. Запуск программ, требующих getrandom() и getentropy(), на ядрах Linux старше 3.17

    Всем привет! Потребовалось на старом ядре linux запустить несколько docker-контейнеров, требующих getrandom и/или getentropy. В ядрах Linux старше 3.17 нет этих системных вызовов. Решение применимо не только к docker, но и к запуску программ на старых ядрах вообще.

    habr.com/ru/articles/980992/

    #linux #synology #kernel #docker #ld_preload

  3. Возвращаясь в IT (админская байка)

    Волей-неволей, я оказался в другой стране. Февральский Тбилиси встретил ветрами, доброжелательными людьми, безденежьем и необходимостью (после 6-летнего перерыва) в очередной раз вкатываться в IT. И я подписался админить первый подвернувшийся проект. Основой проекта был сбор данных, который состоял из двух частей. Сначала куча бинарников сливала данные в один текстовый файл, который в процессе распухал до сотен гигабайт. Время от времени аналитик, (когда ему была необходима очередная порция данных, запускал его на разборку, скармливая его ещё одному бинарнику (назовём его "parser" ). Случалось это иногда раз в неделю, а иногда и раз в месяц. Сама система была разработана давно уволившемся программистом и, на удивление, уже лет 5+ работала без обслуживания и, при этом, без сбоев. Картину дополняли бардак в документации (если её таковой можно было назвать) и полное отсутствие исходников парсера. Но для админских задач они, как бы, не требовались. До поры. Уже в конце первой недели от аналитика пришла просьба: "Файл очень большой, разбирается иногда пару дней, а работает парсер абсолютно молчаливо, ничего не выдавая на экран, и, поэтому, нельзя ли отобразить процент выполнения. Желательно видный через progress , так как через него отслеживаются и другие задачи". Упомянутая выше документация заканчивалась одной интересной строчкой: "парсинг переведён в однопоточный режим из-за "гонок"". Из этой, не до конца понятной фразы, я вынес для себя, что раз парсинг идёт однопоточно, то нет никаких сложностей извлечь данные из "/proc" . Поэтому: "Да без проблем," — ответил я."

    habr.com/ru/articles/837250/

    #ld_preload #ptrace

  4. Возвращаясь в IT (админская байка)

    Волей-неволей, я оказался в другой стране. Февральский Тбилиси встретил ветрами, доброжелательными людьми, безденежьем и необходимостью (после 6-летнего перерыва) в очередной раз вкатываться в IT. И я подписался админить первый подвернувшийся проект. Основой проекта был сбор данных, который состоял из двух частей. Сначала куча бинарников сливала данные в один текстовый файл, который в процессе распухал до сотен гигабайт. Время от времени аналитик, (когда ему была необходима очередная порция данных, запускал его на разборку, скармливая его ещё одному бинарнику (назовём его "parser" ). Случалось это иногда раз в неделю, а иногда и раз в месяц. Сама система была разработана давно уволившемся программистом и, на удивление, уже лет 5+ работала без обслуживания и, при этом, без сбоев. Картину дополняли бардак в документации (если её таковой можно было назвать) и полное отсутствие исходников парсера. Но для админских задач они, как бы, не требовались. До поры. Уже в конце первой недели от аналитика пришла просьба: "Файл очень большой, разбирается иногда пару дней, а работает парсер абсолютно молчаливо, ничего не выдавая на экран, и, поэтому, нельзя ли отобразить процент выполнения. Желательно видный через progress , так как через него отслеживаются и другие задачи". Упомянутая выше документация заканчивалась одной интересной строчкой: "парсинг переведён в однопоточный режим из-за "гонок"". Из этой, не до конца понятной фразы, я вынес для себя, что раз парсинг идёт однопоточно, то нет никаких сложностей извлечь данные из "/proc" . Поэтому: "Да без проблем," — ответил я."

    habr.com/ru/articles/837250/

    #ld_preload #ptrace

  5. Возвращаясь в IT (админская байка)

    Волей-неволей, я оказался в другой стране. Февральский Тбилиси встретил ветрами, доброжелательными людьми, безденежьем и необходимостью (после 6-летнего перерыва) в очередной раз вкатываться в IT. И я подписался админить первый подвернувшийся проект. Основой проекта был сбор данных, который состоял из двух частей. Сначала куча бинарников сливала данные в один текстовый файл, который в процессе распухал до сотен гигабайт. Время от времени аналитик, (когда ему была необходима очередная порция данных, запускал его на разборку, скармливая его ещё одному бинарнику (назовём его "parser" ). Случалось это иногда раз в неделю, а иногда и раз в месяц. Сама система была разработана давно уволившемся программистом и, на удивление, уже лет 5+ работала без обслуживания и, при этом, без сбоев. Картину дополняли бардак в документации (если её таковой можно было назвать) и полное отсутствие исходников парсера. Но для админских задач они, как бы, не требовались. До поры. Уже в конце первой недели от аналитика пришла просьба: "Файл очень большой, разбирается иногда пару дней, а работает парсер абсолютно молчаливо, ничего не выдавая на экран, и, поэтому, нельзя ли отобразить процент выполнения. Желательно видный через progress , так как через него отслеживаются и другие задачи". Упомянутая выше документация заканчивалась одной интересной строчкой: "парсинг переведён в однопоточный режим из-за "гонок"". Из этой, не до конца понятной фразы, я вынес для себя, что раз парсинг идёт однопоточно, то нет никаких сложностей извлечь данные из "/proc" . Поэтому: "Да без проблем," — ответил я."

    habr.com/ru/articles/837250/

    #ld_preload #ptrace

  6. I had implemented soft delete for #git to mitigate SIGBUS errors when reading files using #mmap over #NFS gets deleted from a different computer.

    Reimplemented (implementing abspath was part of it: pastebin.com/Q8Y8qW3A) it and bundle it as a shared library that can be injected using #LD_PRELOAD. With no intrusive changes to git, upgrades will be more seamless.