Как установить программный центр для установки программного обеспечения для пользователей без полномочий root?

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

Он работает (есть некоторые проблемы, но в основном работает так, как должно быть, со звуком).

Здесь вы можете установить его:

Установить вино (если его нет). Загрузите wolfenstein et client для windows (здесь: http://www.splashdamage.com/content/download-wolfenstein-enemy-territory). Извлеките его где-нибудь в безопасности, например, homefolder и open terminal. Тип: cd путь к файлу WolfET_2_60b_custom.exe (пример: cd / home / workspace). Затем выполните: wine WolfET_2_60b_custom.exe (программа для открытия открытых окон, запустите его). Загрузите punkbuster и keygenerator (здесь: http://etkey.org/pages/punkbuster/auto---install-for-windows-by-harlekin.php) Извлеките его и щелкните правой кнопкой мыши ET_PBSetup.exe и запустите с вином (установите его в к папке wolfenstein). В вашей системе перейдите в /.wine/dosdevices/c:/Program Files / Wolfenstein (или там, где вы установили wolfenstein et), rightclick et.exe и сделайте ссылку. Вырезать ссылку и вставить ее в рабочее пространство. Перезагрузите, закройте, дважды щелкните ссылку link_to_et.exe на рабочем месте и получайте удовольствие от et.
1
задан 18 February 2014 в 19:33

3 ответа

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

Добавьте следующую строку в / etc / sudoers (используйте sudo visudo для редактирования файла):

%packageinstallers ALL = NOPASSWD: /usr/bin/software-center /usr/bin/apt-get

Тогда вам просто нужно создать и добавить конкретных пользователей к packageinstallers group:

$ sudo addgroup packageinstallers
$ sudo adduser jdoe packageinstallers

Теперь jdoe может выполнять следующие действия:

$ sudo apt-get install <some-package>

, и вы можете редактировать пункт меню рабочего стола для Программного центра, чтобы он вызывал на software-center, добавив команду с gksudo.

PolicyKit может позволить вам сделать это без sudo, но на данный момент это невозможно понять.

10
ответ дан 29 May 2018 в 13:09
  • 1
    Позволяет ли они устанавливать их из Synaptic или aptitude или просто apt-get? – snostorm 29 July 2010 в 00:55
  • 2
    Если вы должны добавить " / usr / bin / synaptic " к списку, это было бы. На самом деле вы, вероятно, можете добавить " / usr / bin / software-center " к списку, и это сработает. Не проверял это, хотя, дайте мне знать, если это сработает, и я обновлю ответ. – lfaraone 29 July 2010 в 01:01
  • 3
    Я попробую. :) – snostorm 29 July 2010 в 01:09
  • 4
    Это потребует, чтобы пользователи знали запустить программный центр с помощью sudo или изменить файл .desktop. См. Мой ответ о том, как настроить PolicyKit, чтобы делать то, что вы хотите. – RAOF 29 July 2010 в 07:24
  • 5
    Согласитесь, это было бы превосходным решением. – lfaraone 29 July 2010 в 07:32

Ответ RAOF применим только к Ubuntu. Kubuntu использует QAptWorker в качестве backend (наблюдается для Natty и Oneiric). Чтобы разрешить установку без полномочий root, создайте /etc/polkit-1/localauthority/50-local.d/10-allow-non-root-install-packages.pkla, содержащий:

[Update Software Sources]
Action=org.kubuntu.qaptworker.updateCache
ResultAny=no
ResultInactive=no
ResultActive=yes

[Install Software]
Action=org.kubuntu.qaptworker.commitChanges
ResultAny=no
ResultInactive=no
ResultActive=auth_self

Я хотел разрешить некоторым пользователям, не входящим в систему администратора, устанавливать программное обеспечение, не предоставляя напрямую доступ к sudo. Это было сделано путем вставки следующих строк в обе группы конфигурации:

Identity=unix-user:some-non-admin-user

Если существует группа, которой должно быть предоставлено разрешение, используйте unix-group вместо unix-user.

5
ответ дан 29 May 2018 в 13:09
  • 1
    Чтобы повторно применить правила, я перезагрузился. (повторная регистрация, вероятно, тоже будет работать) – Lekensteyn 14 November 2011 в 03:47
  • 2
    Как вы должны это делать? Даже после sudo -i у меня даже нет доступа к /etc/polkit-1/localauthority (Ubuntu 17.10): «Не будет пытаться обработать каталог / etc / polkit-1 / local authority». – JHBonarius 20 January 2018 в 00:41

Если вам требуется только общее разрешение на установку / запрет на установку пакета, перейдите в PolicyKit.

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

Я также искал что-то подобное, но так как я сделал «Я ничего не нашел, я закодировал это« программные каналы »для простого решения», доступный здесь, в GitHub

. Это очень простая система, позволяющая обычным (не административным) пользователям устанавливать пакеты из ограниченных каталогов. [!d4 ]

Просто определите «каналы» (группы пакетов) в простом текстовом файле и дайте вашим пользователям разрешения запуска программных каналов.

Они будут видеть пакеты только в каналах, соответствующих их группам unix.

]
5
ответ дан 29 May 2018 в 13:09

Другие вопросы по тегам:

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