LINUX.ORG.RU

В Ubuntu по умолчанию задействован sudo-rs, написанный на Rust

 , , ,


0

5

В ежедневно обновляемых экспериментальных сборках Ubuntu, отражающих развитие осеннего выпуска Ubuntu 25.10, вместо утилиты sudo по умолчанию задействован проект sudo-rs, написанный на языке Rust. Решение использовать sudo-rs в Ubuntu было принято в мае, но до последнего времени не было ясно, успеют ли разработчики реализовать в sudo-rs необходимые отсутствующие возможности до перехода Ubuntu 25.10 на стадию заморозки.

Для поставки sudo-rs в Ubuntu 25.10 были выполнены такие требования, как возможность работы в системах со старыми версиями ядра Linux (<5.9), поддержка механизма защиты NOEXEC и профилей AppArmor, исправление проблем со стабильностью, рецензирование пакета и его добавление в репозиторий main. Для возвращения классического sudo в Ubuntu-установках c sudo-rs можно использовать команду update-alternatives --set sudo /usr/bin/sudo.ws. В версии Ubuntu 26.10 в репозитории main планируют оставить только пакет sudo-rs. Что касается утилиты su, то в Ubuntu продолжает использоваться обычная утилита /usr/bin/su, но разработчики намерены в будущем начать эксперименты с использованием варианта su (su-rs) на языке Rust.

Замена системных компонентов производится в рамках инициативы по повышению качества системного окружения через поставку программ, изначально разрабатываемых с оглядкой на безопасность, надёжность и корректность. Поставка утилит, написанных на языке Rust, даст возможность снизить риск появления ошибок при работе с памятью, таких как обращение к области памяти после её освобождения и выход за границы буфера. Если не возникнет непредвиденных проблем, то утилиты на Rust будут задействованы по умолчанию в LTS-ветке Ubuntu 26.04.

>>> Подробности на opennet



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от Stanson

А вот на расте - не знаю.

Опять же ваша проблема. Соломенный аргумент, я вот не знаю что такое pandoc например, и что дальше?

Так только сишники и пишут. Просто сишникам ещё надо сотни тыщ уже имеющихся проектов развивать и поддерживать, поэтому сишников и не хватает на совершенно новые проекты. Допишут, конечно, в итоге.

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

Бла бла бла, как было, так и осталось 0 реальных аргументов. Потому что чистых программистов на расте наверное еще и не появилось в природе, они тоже сишники или откуда-то еще пришли.

Люди пишут то, что им нужно или нравится. Я например в душе не ЭБУ что такое это ваше ЭБУ, оно мне не надо, как наверное и 99% других людей, поэтому и софт для него не пишу.

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

Рассказать, в каком году вышло второе издание K&R, в котором настоятельно советуют явно писать void в таком случае, или сам нагуглишь?

При чём тут void вообще? Ты читаешь, на что отвечаешь?

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

Вкидывание дезинформации

А вот это тоже дезинформация?

Или здесь ключевое слово «modified», и если с нуля писать, то можно? А gcc-шный rust с нуля написан? А, и там не только про компилятор, но и про cargo, без которого что-либо сложнее хеллоуворлда написать проблематично.

P.S. И @datamanу на комментарий чуть выше заодно ответьте, пожалуйста.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 4)
Ответ на: комментарий от dataman

Нужно. Но вы это, стрелки не переводите. Ответ был на

противоречит требованиям разработчиков раста: компиляторы раста имеют право выпускать только они.

Компилятор есть? Есть.

greedyskoof
()

Пусть внедряют, посмотрим какой раст безопасный на деле. Но линуксоиды же хитрые, и на сервер судораса не станут тащить. Значит нужно действовать радикально — выкинуть sudo из реп бубунты. Заодно и лохматый сишный coreutils туда же.

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

Это относится скорее к использованию названия, очень много проектов имеют подобные правила, например PHP.

И что dataman отвечать? Компилятор еще не готов для реального использования, но он уже в составе gcc. Ждем иск к gcc?

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

Перепишу вопрос, ты реально считаешь что gccrs в уязвимом положении как проект?

По моему они довольны его существованием: https://blog.rust-lang.org/2024/11/07/gccrs-an-alternative-compiler-for-rust/

Но если предположить что перестанут, то gcc надо будет запустить в репозитории s/rust/gnust/g.

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

А, и там не только про компилятор, но и про cargo, без которого что-либо сложнее хеллоуворлда написать проблематично.

Ну можно пожаловаться что CMake это торговая марка kitware, и без него тоже многие проекты не соберешь на C/C++.

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

А вот это тоже дезинформация?

Конечно дезинформация, потому что вырвано из контекста, и потому что у кого-то видимо плохо с английским. Фразу «other than those permitted above» мы в расчет не берем? А ведь там выше написано, что делать можно.

Publicly distributing a modified version of the Rust programming language, compiler, or the Cargo package manager is allowed, provided that the modifications are limited to:

  • Code adjustments for the purpose of porting to a different platform, architecture, or system, or integrating the software with the packaging system of that platform.
  • Hosting a fork of the code for the purpose of making changes, additions, or deletions that will be submitted as proposed improvements to the Rust Project code is allowed, as long as you do not market or promote your fork.
  • Publicly distributing, in source code form, modifications made by an official platform distributor of Rust as listed explicitly or implicitly in https://doc.rust-lang.org/rustc/platform-support.html is allowed, provided such changes are licensed under the same license as the Rust Project code and the Rust Foundation has not stated publicly that it has asked the platform distributor to revert the modifications because they are inconsistent with the purpose and direction of the Rust Project.

Или здесь ключевое слово «modified», и если с нуля писать, то можно? А gcc-шный rust с нуля написан?

И это тоже да. Там речь только об их исходнике и трейдмарках. Сам стандарт языка имплементить никто не запрещает.

А, и там не только про компилятор, но и про cargo, без которого что-либо сложнее хеллоуворлда написать проблематично.

Так-то помимо компилятора в наборе раста дофига утилит. Свои писать никто не запрещает. GCC RS пишут с нуля, насколько я знаю, поэтому и долго.

Хотя то что все это дело не совсем FOSS конечно обидно. С другой стороны, давайте посчитаем сколько чисто проприетарных компиляторов было создано за время существования C++.

greedyskoof
()
Последнее исправление: greedyskoof (всего исправлений: 2)
Ответ на: комментарий от gns

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

Их китайцы бесплатно раздают вообще-то вместе со своими шнурками. Там другая проблема - многие производители повадились нынче многие нужные функции реализовывать исключительно через т.н. pass-through - т.е. дилерская софтина общается с ЭБУ машины через шнурок, потом отправляет данные на сервер производителя, получает с сервака нужные данные и отправляет в ЭБУ. В результате, если нет дилерского аккаунта или интернета, то, например, после замены какого-нибудь сраного датчика или ЭБУ на исправные машину не оживить. Но там тоже ничего сложного, на самом деле, тупейшие функции просто вынесли на удалённый сервер.

Я не знаю, что прошито в автосервисных диагностических компах. Может и линух со спецсофтом.

Сначала это были коробки со своей прошивкой и экранчиком и разным софтом на компактфлешах и пр. для разных моделей. Потом для новых моделей стали писать софт под венду. Потом, когда оказалось что машины старые есть, а дилерские девайсы поломались у дилеров некоторые даже написали эмуляторы этих древних дилерских девайсов под венду. Например GM’овский Tech2Win под венду это полный эмулятор реального девайса Tech2 (для машин GM до 2015г. ЕМНИП), причём эмулятор использует образы компактфлешей которые вставлялись в Tech2. Т.е. сама по себе задача достаточно забавная - сделать эмулятор реального девайса под линукс который сможет выполнять софт для Tech2. А образы с софтом даже переписывать не надо.

Сейчас проблема с вендой появилась - скажем, идёт процесс калибровки или перепрошивки ЭБУ, через сервак производителя, а венда решила обновиться экстренным обновлением безопасности, которое, конечно, можно отложить, но вот скачивать она будет его прямо щаз. :) А в ЭБУ таймауты и всё такое. Венда качает обновление, а в ЭБУ (и, соответственно, двигателе, например) при этом происходит звездец, потому что нужный пакет с данными вовремя не приехал, а калибровка как раз в разгаре.

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

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

А вот пользователей автомобилей или радиолюбителей которые хотят принимать (и декодировать) из эфира всё что там есть - много. Поэтому и опенсурс появляется.

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

Impact:

On systems that support /etc/nsswitch.conf a user may be able  
to run arbitrary commands as root.
mumpster ★★★★★
()
Ответ на: комментарий от MOPKOBKA

Не, про инструментирование кода — это сколько угодно. Я про флаг AC в регистре флагов. Типа если обращаешься к указателю по нечетному адресу, то процессор трапует. Насколько мне известно, только Солярис на x86 устанавливал этот флаг по старту. Такой жесткий контроль сильно помогает писать переносимый код.

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

Соломенный аргумент, я вот не знаю что такое pandoc например, и что дальше?

Ты наверняка пользовался результатами его работы и не раз. Очень часто используется для генерации документации (включая man и info) в куче линуксячьих пакетов.

Ну это если ты маны читаешь, конечно.

Я например в душе не ЭБУ что такое это ваше ЭБУ, оно мне не надо, как наверное и 99% других людей, поэтому и софт для него не пишу.

Т.е. растаманы происходят именно из 99% хомячков, которым абсолютно похер как что устроено и как что работает, даже если они пользуются этими вещами постоянно. :) Разумеется такие персонажи никогда ничего нового и полезного не напишут. Они ж в душе не ЭБУ ничего и ни о чём. Магическое мышление во все поля.

ЧТД.

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

Так чем тебе именно мое предложение не нравится? Все тоже самое: https://godbolt.org/z/oqa3sfx61

Причем влияет не только четность, неправильное выравнивание тоже ловит.

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

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

Если формат данных открыт и не шифрован. В EDA пропиетарных форматов чуть более, чем все. :) Найдите вон спецификацию на тейпаут :)

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

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

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

И что, иксы не позволяли гонять битмапы? Я думал Wayland критикуют не за битмапы, а за то что там приложения не работают, и ограничения как на айфоне.

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

Посмотрим, что будет в 2030м…

В этом НИИЧАВО каноникал или в шляпе какую-нибудь очередную жуть придумают.

PunkPerson
() автор топика
Ответ на: комментарий от MOPKOBKA

Ну все ОК, хорошее предложение. Это было 20 лет назад, я уж не упомню, что тогда GCC умел. Чем могли, тем отлаживались.

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

Так C точно так же ломают, как и Rust. void f() раньше означал функцию с произвольным числом аргументов,

Залез сейчас специально в книгу Кернигана и Ритчи (2 издание) и вижу там следующее

Описание power в начале программы согласно первой версии Си должно было бы выглядеть следующим образом: int power(); … Старый синтаксис объявления и определения функции все еще допускается стандартом ANSI, по крайней мере, на переходный период, но если ваш компилятор поддерживает новый синтаксис, мы настоятельно рекомендуем пользоваться только им.

Т.е. ещё 35 лет назад этот синтаксис считался устаревшим и не рекомендовался к использованию. Но «переходный период» затянулся аж на 35 лет.

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

Как только растишки выкатят своё ядро версии 0.001, так сразу же его вставят в бубунту по умолчанию. Но сначала нужно cat переписать, не всё так сразу. Там ещё есть план Б: заставить писать на расте кодеров ядра линукс. Но с этим пока не задалось.

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

Ну это если ты маны читаешь, конечно.

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

Т.е. растаманы происходят именно из 99% хомячков, которым абсолютно похер как что устроено и как что работает, даже если они пользуются этими вещами постоянно.

Вот с этого момента поподробнее. Где это я им постоянно пользуюсь? У меня нет автомобиля, и даже водительских прав нет. Мне абсолютно наплевать как там автолюбители пердолятся со своими колымагами.

Зато я знаю, что есть в моем PC, на серверах на работе, или пускай даже в ARM телефоне. И для них я софт пишу, при чем внезапно так же успешно на C, C++ и куче других языков.

Разумеется такие персонажи никогда ничего нового и полезного не напишут.

Так делайте, раз для вас это полезно. Почему это за вас другие должны делать?

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

можно повысить права в софте. Ну, если правильно написан.

Если в вашей программе не обнаружено ошибок - позовите авторов компилятора - они поправят там (с) :)

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

Только нужно учитывать, что -fsanitize вставляет рантаймовые проверки, что дико раздувает код (итоговый бинарник может быть раз в 10 больше в размере) и соответственно серьезно просаживает производительность. То есть не для продакшн билдов это

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

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

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

Если формат данных открыт и не шифрован.

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

В EDA пропиетарных форматов чуть более, чем все. :) Найдите вон спецификацию на тейпаут :)

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

Если EDA в смысле Electronic Design Automation - то, например, формат того, что называется обычно тейпаутом в электронике - GDSII для масок микрух читает-пишет вполне себе опенсурсный KLayout. А уж тейпаут для печатных плат в виде gerber/excellon/PnP - так вообще весь около EDA софт умеет.

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

По моему они довольны его существованием

Хорошо, будем считать, что этой ссылкой ты меня успокоил :)

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

Расту жить отсалось (о, опечатка прям в тему) годика 3 где-то.

«Запомните этот твит»

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

У меня нет автомобиля, и даже водительских прав нет.

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

Зато я знаю, что есть в моем PC, на серверах на работе, или пускай даже в ARM телефоне.

В PC - процессор и виндовс, на серверах процессор, сетевуха и линукс, а в телефоне ARM, камера и ведроид?

Так делайте, раз для вас это полезно. Почему это за вас другие должны делать?

А кто сказал что я не делаю? У меня даже проектец на эту тему есть, для машин понимающих протокол KWP1281. (Всякий VAG с 1990 по 2017 где-то, если считать Seat и Skoda) Аналог вендового VCDS только для командной строки. Будет время свободное - допилю да выложу. На сишечке, разумеется, даже без плюсов.

Stanson ★★★★★
()

Пользуюсь сабжем продолжительное время. Никаких проблем не заметил, если не знал бы что стоит sudo-rs вместо обычного sudo - в жизни не догадаешься. Планирую в TileOS у себя его по дефолту назначить. Так что убунтоиды молодцы.

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

Среди последних, выходит, сишники есть, а растаманов нету.

Всякое может быть.

В PC - процессор и виндовс, на серверах процессор, сетевуха и линукс, а в телефоне ARM, камера и ведроид?

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

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

А кто сказал что я не делаю? … На сишечке, разумеется, даже без плюсов.

Вот это правильно. Каждый пилит то что ему нравится.

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

Как по мне, страдают они… известно чем.

А вдруг они этим «известно, чем» не страдают, а наслаждаются??.. ;D;))

Somebody ★★★★
()

Какие-то слоупоки, я уже год как на нем. Как и на rust coreutils. Гну надо мочить в сортире максимально.

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

А вдруг они этим «известно, чем» не страдают, а наслаждаются??.. ;D;))

А никто не может это отрицать.

PunkPerson
() автор топика
Ответ на: комментарий от unC0Rr

ты давно жёлтые страницы использовал? и вообще ты хоть раз о них слышал?

в sudo последние cve это связка с ldap или ещё какой сторонеей pam мутью как и вданном случае.

s-warus ★★★★
()

Кодов ещё не написанных сколько? Скажи мне, Столлман, пропой. На Си мне код писать или на Расте? Придумать что-то новое? Или страдать фигнëй?

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

Так C точно так же ломают, как и Rust. void f() раньше означал функцию с произвольным числом аргументов, в последнем стандарте это стала функция без аргументов. Всё, код не компилируется

Ну что ты несёшь?!

Во-первых, код компилируется как и раньше. Просто надо уяснить себе что запуск gcc без аргумента -std= это UB.

Во-вторых, в нормальном софте void f() не писали.

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

Для такого нужна отдельная рутовая сессия.

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

Комп должен быть настроен так чтобы тебе не требовалось постоянно править системные конфиги.

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

Почти верно, но я всё-таки уточню: su нужно чтобы рут мог запускать проги от других юзеров. А вот в обратную сторону и правда не стоит разрешать.

firkax ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.