тролль - это не только ценный жир, но и 3-4 легкоусвояемых коммента ежедневно
Программы, как известно, могут состоять не только из исполняемого файла, но и из библиотек (dll/so), которыми исполняемый файл пользуется при своей работе.
Если вы в винде, то всё пучком: вы приносите на флешке прогу (myprog.exe + myproglib.dll) и прямо с флешки её же запускаете, всё работает.
Если вы в линуксе, то никакого пучка не получится: библиотека должна лежать в строго определённых папках, куда её поместить можно лишь имея права админа.
Вопросы:
1) Науя это сделано? Это никак не повышает безопасность системы, лишь вносит неудобства.
2) Как это обойти? Хочу распространять свою программу в виде двух файлов: исполняемого и библиотеки. Хочу, чтобы пользователь мог её запустить на своём компе, не имея прав админа. Идеальный вариант - чтобы юзер мог запустить программу из любой папки, просто скопировав туда два моих файла (myprog + libmyprog.so).
Просветите, пжлст.
Если вы в винде, то всё пучком: вы приносите на флешке прогу (myprog.exe + myproglib.dll) и прямо с флешки её же запускаете, всё работает.
Если вы в линуксе, то никакого пучка не получится: библиотека должна лежать в строго определённых папках, куда её поместить можно лишь имея права админа.
Вопросы:
1) Науя это сделано? Это никак не повышает безопасность системы, лишь вносит неудобства.
2) Как это обойти? Хочу распространять свою программу в виде двух файлов: исполняемого и библиотеки. Хочу, чтобы пользователь мог её запустить на своём компе, не имея прав админа. Идеальный вариант - чтобы юзер мог запустить программу из любой папки, просто скопировав туда два моих файла (myprog + libmyprog.so).
Просветите, пжлст.
-
-
28.01.2012 в 15:04-
-
28.01.2012 в 19:00-
-
28.01.2012 в 21:03эта переменная, типа, вообще запрещена, начиная с 9-ой версии
может, я что не так понял, но записать её в /etc/environment не получается
или для локальных целей она доступна?
-
-
28.01.2012 в 22:35правильно ли я понял, что предлагается вместо исполняемого файла myprog запускать вот этот "батник"?
export LD_LIBRARY_PATH=$(pwd)
./myprog
(немного некрасиво - вместо пары файлов придётся таскать три файла, но лишь бы работало)
это самый лучший способ?
-
-
29.01.2012 в 02:32Это офигенно повышает безопасность системы и отсекает такие вот неправильные желания.
2) Как это обойти? Хочу распространять свою программу в виде двух файлов: исполняемого и библиотеки. Хочу, чтобы пользователь мог её запустить на своём компе, не имея прав админа. Идеальный вариант - чтобы юзер мог запустить программу из любой папки, просто скопировав туда два моих файла (myprog + libmyprog.so).
Это неправильное желание. Где гарантия, что это будут именно Ваши два файла, а не модифицированные неким любителем команды "rm -rf /"? Сделайте нормальный deb-пакет, это просто.
это самый лучший способ?
Этот способ вообще никуда не годится, поскольку нормальные админы монтируют раздел с домашними каталогами с опцией noexec. Именно для защиты от таких "способов".
-
-
29.01.2012 в 02:58Представьте, что программа myprog - это, например, калькулятор. Предлагаете по каждой мелочи звать админа? Конечно, среди админов бывают параноики, но давайте говорить о здоровых людях.
Защита ОС заключается в разграничении прав доступа к системным файлам. Приложение, запущенное без админских прав, ничего страшного (для системы) не натворит.
А раз приложению никакие привилегии не нужны, зачем они обязательно должны требоваться для установки?
А кроме домашних каталогов ещё есть /tmp
-
-
29.01.2012 в 12:01Лучший способ распространить приложение - сделать deb пакет. Если пользователь не имеет sudo - значит так задумано админом.
-
-
29.01.2012 в 13:07У пользователя нет sudo. Но он хочет пользоваться моей программой на своём компе. Какие существуют варианты?
-
-
29.01.2012 в 13:18Вы сейчас идете в область "обмануть админа" и получить больше прав, чем есть.
-
-
29.01.2012 в 14:32никто никого не хочет обманывать
админья область ответственности ограничивается системными файлами, не следует нагружать админов всякой ерундой типа "можно ли мне очистить корзину?"
естественное право любого пользователя - запускать любые программы в рамках своих прав доступа к файловой системе
например, если установлена джава, то пользователь может запустить что угодно, написанное на джаве, и никакой noexec ему не помешает. это по-вашему дыра в защите?
-
-
30.01.2012 в 20:49Это не естественное право. Именно поэтому под линукс 8 вирусов, и те без sudo не собрать.
-
-
30.01.2012 в 20:59во-во
-
-
30.01.2012 в 23:10другой вопрос: какой самый популярный русскоязычный форум по линуксу?
-
-
03.02.2012 в 19:31