LINUX.ORG.RU

Пришло время переписать собственный сервис Canonical unattended-upgrades. Именно так это и работает.

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)

И прекрасно. Пусть минорные релизы грохаются и падают как можно больше, чтобы как можно больше багов вычистить перед выходом следующего вылизанного и стабильного LTS. А вы, арчеводы, завидуйте прогрессу молча. Сами же потом прибежите ставить растовые программы, отлаженные другими людьми.

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 1)

Честно говоря, непонятно, откуда у Canonical такое ярое желание стрелять себе в обе ноги.

Dimez ★★★★★
()
Ответ на: комментарий от Dimez

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

pftBest ★★★★
()
Последнее исправление: pftBest (всего исправлений: 1)
Ответ на: комментарий от seiken

Сами же потом прибежите ставить растовые программы, отлаженные другими людьми

…против их воли. Ага, так завидно, аж трисёт.

thesis ★★★★★
()
Ответ на: комментарий от Dimez

А есть вообще какое-то описание, какую именно поверхность атаки они закрывают, переписывая coreutils?

Это же не веб-сервис, не системная служба и даже не sudo.

Или это чисто карго-культ на тему безопасности?

wandrien ★★★
()
Ответ на: комментарий от wandrien

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

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от seiken

А вы, арчеводы, завидуйте прогрессу молча

С paru, хоть он и на расте, проблем почему-то нет, даже если им пользоваться вместо pacman (C++).

dmitry237 ★★★★★
()
Ответ на: комментарий от PolarFox

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

pftBest ★★★★
()
Последнее исправление: pftBest (всего исправлений: 1)

Ещё и терминал поломали:

https://github.com/uutils/coreutils/issues/8848

After an Ubuntu update (25.10 switching from gnu coreutils to uutils) I noticed, that this issue breaks the terminal embedded into NetBeans IDE.

И собственно как исправить:

The fix was to remove the rust version and reinstall the gnu version again.

troizet
()
Последнее исправление: troizet (всего исправлений: 1)

Универсальное исправление проблем с rust-coreutils:

sudo apt install --allow-remove-essential coreutils-from-uutils- coreutils-from-gnu
troizet
()
Ответ на: комментарий от wandrien

А есть вообще какое-то описание, какую именно поверхность атаки они закрывают, переписывая coreutils?

В теории, можно воспользоваться переполнением буфера подсунув что-то в исполняемый от другого пользователя (рута) скрипт с coreutils. Из интересного для этого будут утилиты работающие с именами файлов, их содержимым, путями или преобразующие строки. Так можно подсунуть что-нибудь необычное в какой-нибудь запускаемый по крону скрипт.

altwazar ★★★★★
()
Ответ на: комментарий от Dimez

А вообще все правильно делают. Главное же переписать на расте, а там хоть трава не расти. Опять же кто-то же должен проталкивать этот ржавый отстой. Тут как с DEI и «зелёной повесткой»: компании подписываются невзирая на выгодность. Потому что по масонской линии пришел приказ: внедрить по самые помидоры

ckotctvo
()
Ответ на: комментарий от dmitry237

С paru, хоть он и на расте, проблем почему-то нет

Потому что это всего лишь надстроечка над сишной libalpm.

dataman ★★★★★
()

Ubuntu - нестабильное говно. Тем более не понимаю тех, кто юзают его в корпоративной среде.

manul91
()
Ответ на: комментарий от wandrien

Надёжно софт тестируют, ну.

Это нормально. Беда в другом, у растовых корутил в описании «While all programs have been implemented, some options might be missing or different behavior might be experienced.», плюс их обкатать не успели.

Корутилы же используются во всяких шелл скриптах, часто позабытых и написанных через одно место. В этой ситуации просто взять и подменить старые - какая-то бессмысленная степень мазохизма и издевательства над пользователями.

altwazar ★★★★★
()
Ответ на: комментарий от altwazar

В этой ситуации просто взять и подменить старые - какая-то бессмысленная степень мазохизма и издевательства над пользователями.

100%

wandrien ★★★
()
Ответ на: комментарий от altwazar

взять и подменить старые - какая-то бессмысленная степень мазохизма и издевательства над пользователями

ВЫ ПРИНЯТЫ, КОГДА МОЖЕТЕ ПРИСТУПИТЬ К РАБОТЕ?

MoldAndLimeHoney ★★
() автор топика

ЛОР не меняется. Не rust-coreutils, а рукожопы из каноникал сломали unattended upgrades, запустив в продакшн абсолютно новый и непроверенный пакет.

bdrbt
()
Ответ на: комментарий от wandrien

А есть вообще какое-то описание, какую именно поверхность атаки они закрывают, переписывая coreutils?

Юридическую поверхность они закрывают. Растовые утилитки под MIT, можно в любой момент начать лепить проприетарщину.

Camel ★★★★★
()
Ответ на: комментарий от Camel

Растовые утилитки под MIT, можно в любой момент начать лепить проприетарщину.

И это, конечно же тоже. Но не только. Использование растовых утилит позволит сократить спектр доступных атак на шелл-код. Это очень важно в проде серьезных дядь и тёть.

seiken ★★★★★
()
Ответ на: комментарий от wandrien

Ты зря орёшь. Шелл-код - это обычное дело, когда тебе дают проприетарную утилиту, и её надо вызывать из твоего кода, подготавливая для неё входные данные.

seiken ★★★★★
()
Ответ на: комментарий от wandrien

В проде серьёзных дядь и тёть используется tcl/tk.

einhander ★★★★★
()

Ну и слава богу. Все эти кривые скрипты тоже надо переписать на Rust.

vbr ★★★★★
()
Ответ на: комментарий от seiken

А вы, арчеводы, завидуйте прогрессу молча. Сами же потом прибежите ставить растовые программы, отлаженные другими людьми.

Ну я лично очень рад, пускай убунтята тестируют, в мой арчик потом прилетит уже всё стабильное. Но полагаю, что в арч это ещё долго не залетит. Там не принято менять что-то просто так.

vbr ★★★★★
()
Ответ на: комментарий от wandrien

А есть вообще какое-то описание, какую именно поверхность атаки они закрывают, переписывая coreutils?

Скачал ты недоверенный файл, написал cat virus.exe, а он переполнил cat, вырвался наружу и украл все твои биткоинсы.

Кстати мысль на подумать. Сколько escape-последовательностей есть в популярных эмуляторах терминала и сколько в них есть уязвимостей? Я вот знаю, как менять заголовок терминала. Что будет, если туда насувать каких-нибудь прикольных невалидных юникодов или может быть даже нулевых символов через какой-нибудь percent encoding? Сколько ещё таких функций? В шутке только доля шутки…

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от ya-betmen

Этож каким жлобом надо быть, чтобы отказаться делиться своими наработками на core utils? Что там вообще можно дорабатывать?

Я могу понять претензии к ядру под GPL, претензии к gcc. Там доработки действительно представляют из себя серьёзную и ценную интеллектуальную собственность. Но coreutils?

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от seiken

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

vbr ★★★★★
()
Ответ на: комментарий от vbr

Да. И убунта как флагман дистростроения всем освещает путь к прогрессу.

seiken ★★★★★
()

ГЛОБАЛЬНО @ НАДЁЖНО

thunar ★★★★★
()
Ответ на: комментарий от static_lab

Формат команды date -r был изменен

Всё же, согласно и багу, и коммиту с фиксом, ключ -r просто вообще не был имплементирован.

Неверно ни одно, ни другое.

Ключ -r был имплементирован так, чтобы ВРАЛ.

То есть, молча возвращал текущую дату вместо даты файла.

Как можно прочитать по ссылкам:

date -r reports current date instead of date specified by reference file. This makes files look «too new», causing for example backup scripts to not run their backups because they think the backups are current, and possible other mayhem.

Эти растаманы ополоумели?

За такое надо гнать ссаной тряпкой из профессии.

Если «переписываешь софт» на «drop-in replacement» - все фичи которые недореализованы, должны возвращать соответную ошибку (чтобы это можно было отловить).

А не врать, чтобы нахрен логически сломать поведение того софта что рассчитывает на правильное поведение.

manul91
()
Ответ на: комментарий от manul91

За такое надо гнать ссаной тряпкой из профессии.

Уборщицам пока права голоса не давали.

seiken ★★★★★
()
Ответ на: комментарий от manul91

date -r reports current date instead of date specified by reference file

Это как раз и означает, что он не был имплементирован, потому что вернуть текущее время — это обычное поведение date. Но да, программа должна была ругнуться на illegal option -r, если ключ не поддерживается.

Кстати, у ключа -r также есть значение «расшифровать таймштамп в секундах с начала эпохи», но это поведение, судя по коду, тоже не реализовано.

Вообще говоря, первое поведение довольно неюниксвейное: чтобы посмотреть modification time есть stat, а обязанность date — показывать и форматировать даты.

static_lab ★★★★★
()
Ответ на: комментарий от vbr

Этож каким жлобом надо быть, чтобы отказаться делиться своими наработками на core utils?

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

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от PPP328

Ну так если возвращать printf(stderr, «Не реализовано\n»); abort(); - то тесты не пройдут.

Вот именно, тесты с претензий на «drop-in replacement» в таком случае и обязаны не пройти

manul91
()
Ответ на: комментарий от static_lab

Но да, программа должна была ругнуться на illegal option -r, если ключ не поддерживается.

Правильно.

Все иное - нарушение контракта интерфейса команды (притом с молчаливом возвращением неверного, но в ожидаемом формате выхлопа) - т.е. худшее, что можно вообще вообразить.

manul91
()
Ответ на: комментарий от manul91

Это ChatGPT фиксил падающие тесты небось. Он такое любит. Или тест отключил, или вернёт что угодно, лишь бы тест позеленел.

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от manul91

Вообще это не растоманы ополоумели, а каноникаловцы — брать как drop-in replacement пакет с версией 0.2.2 и списком багов по несовместимости в 152 пункта — вот это маразм. От версии 0.2.2 следует ожидать, что она хоть в каких-то сценариях нормально работает, а не является аналогом пакета с 35-летней историей.

static_lab ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.