172 похожих чатов

Доброго вечера. как закодить выполнение команд под sudo? чтобы можно было использовать

tee, cat, etc, слать им что-то типа EOF, и продолжать слать команды в sh
эксперимент: убийство процесса tee показывает, что такое физически возможно.
но как сделать это из раста без вызова новой команды под sudo? (я уже молчу о получении pid tee, это мега костыль)

10 ответов

19 просмотров
Ярослав-Нестеров Автор вопроса

додмался наконец, можно оч просто. не идеально, но годно

Ярослав-Нестеров Автор вопроса

прога находит vendor id android девайса в lsusb и добавляет о нём инфу в /etc/udev/rules.d/51-android.rules чтобы работало adb upd: и перезапускает udevadm

Ярослав Нестеров
прога находит vendor id android девайса в lsusb и ...

В таком случае нужно избегать использования sudo в программе. Sudo - всего лишь утилита. Хочешь сделать правильно - сделай второй бинарник, который создан только для добавления и использует рут.

Ярослав-Нестеров Автор вопроса
User are dead (Властелин ничего, Лис)
В таком случае нужно избегать использования sudo в...

а второй зачем? можно if non_root { println!("Дай root"); exit(1); } или Command::new("sudo").arg("этот_же_бинарь")

Ярослав Нестеров
а второй зачем? можно if non_root { println!("Дай ...

Для разграничения пакетов. В целом можно обойтись и без него.

Не стоит вызывать судо. Просто Проверяй, что прав рута нет и вались с ошибкой. Потому что: 1. Судо может просто не быть. Да, такие системы встречаются. И да, это я про линукс. 2. Судо может быть настроен так, что пользователь не будет добавлен в sudoers, а значит не сможет пользоваться этой утилитой. Единственный нормальный и корректный подход, который к тому же проще сделать кросс-платформенным, это вторая своя отдельная утилита, которая выполняет действия с правами рута/администратора, а пользователь пусть сам удобным ему способом повышает права и вызывает её. Ещё можешь посмотреть в сторону polkit (PolicyKit бывший), он вообще и создан для программного повышения прав, но тоже может быть не на каждой системе, плюс не очень прозрачная штука.

Пашечка
Не стоит вызывать судо. Просто Проверяй, что прав ...

если sudo нет значит есть su) а ему уже на sudoerrs всеравно

Денис Котляров
если sudo нет значит есть su) а ему уже на sudoerr...

А ещё есть ограничение прав LDAP, есть мандатное разделение в Астра Линуксе, есть свои механизмы в SELinux. Чо, все варианты в огромном условии перебирать? И su "большие специалисты" могут вырезать. И аналоги su/sudo люди периодически пишут, их тоже все проверять будем?

Ярослав Нестеров
screenshot додмался наконец, можно оч просто. не идеально, но...

пожксперементируй мб с set-user-id https://www.linux.com/training-tutorials/what-suid-and-how-set-suid-linuxunix/

Ярослав-Нестеров Автор вопроса
Пашечка
Не стоит вызывать судо. Просто Проверяй, что прав ...

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

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта