J'ai besoin de déployer, gérer et exécuter des logiciels en tant qu'utilisateur non privilégié dans SuSE (c'est-à-dire, aucun accès root quel qu'il soit, ne peut pas utiliser la gestion des packages du système, etc.).
Quelles sont mes options?
Je préférerais réutiliser le gestionnaire de packages du système (YaST) en configurant en quelque sorte un référentiel utilisateur-local distinct. Le deuxième meilleur choix est un système de gestion de packages distinct qui prend en charge les référentiels utilisateur-local. De préférence, il prendrait également en charge les mises à jour de style push (par opposition à pull).
linux
package-management
suse
Alex B
la source
la source
Réponses:
Eh bien pour Gentoo, il y a le projet Gentoo Prefix qui vous permet d'installer des packages dans un endroit différent de /. Le portage du gestionnaire de paquets de Gentoo est écrit en Python et très portable afin que vous puissiez facilement configurer une nouvelle arborescence pour un utilisateur auquel cet utilisateur a un accès complet sans rien casser.
Deux problèmes que je vois:
Vous devrez probablement compiler beaucoup de choses ou créer des packages binaires pour vos utilisateurs de cette façon et vous devrez probablement installer beaucoup de choses deux fois pour que le préfixe fonctionne correctement (je pense qu'il serait difficile de construire des choses contre vous les packages déjà installés de cette façon)
Vous n'auriez pas de service push.
L'autre approche que je vois serait d'offrir un punch de fichiers tar.gz qui sont fondamentalement juste des packages personnalisés de votre distribution corrigés pour utiliser un préfixe différent: Disons que vous créez un répertoire "Library" dans chaque répertoire utilisateur et ajoutez "~ / Library / usr / bin "vers le chemin de chaque utilisateur, un simple gestionnaire de paquets pourrait être créé pour prendre en charge les installations (vous pouvez également consulter le pacman d'Arch Linux pour cela car il s'agit essentiellement de fichiers .tar.gz et de dépendances.
la source
Utilisez un gestionnaire d'utilisateurs privilégié [sous licence :(] et vous pouvez exécuter des commandes qui nécessitent un accès superutilisateur en tant qu'utilisateur normal. Tout est suivi et audité
la source
Vous pouvez tout autoriser
zypper family command
à votre utilisateur dans/etc/sudoers file
.la source
zypper
comme apt-get dans debian ouyum
dans la distribution redhat-base. Vous pouvez doncyouruser ALL = NOPASSWD: /usr/sbin/zypper
:, vous n'avez alors pas besoin de privilèges root et de votre mot de passe.