Sistema di gestione dei pacchetti locale dell'utente


10

Devo distribuire, gestire ed eseguire il software come utente non privilegiato in SuSE (ovvero, nessun accesso root, non è possibile utilizzare la gestione dei pacchetti del sistema, ecc.).

Quali sono le mie opzioni?

Preferirei riutilizzare il gestore dei pacchetti di sistema (YaST) impostando in qualche modo un repository locale-utente separato. La seconda scelta migliore è un sistema di gestione dei pacchetti separato che supporti i repository locali dell'utente. Preferibilmente, supporterebbe anche aggiornamenti push-style (anziché pull).


Domanda canonica che stavo cercando ma che non ho trovato fino a quando non ho iniziato una taglia su questo. - Gestori di pacchetti non root
Piotr Dobrogost,

Penso che non ci sia molto da dire al di là di ciò che è stato detto. Esistono varie metodologie possibili per l'installazione del software come utente non root, ma non esistono sistemi formali, quindi non esiste una risposta canonica. Sebbene possa sembrare una domanda "molto interessante e importante", probabilmente lo è solo per la piccola minoranza di utenti che hanno un serio bisogno di una cosa del genere, che, considerando la quantità potenzialmente colossale di lavoro e mal di testa coinvolti, aiuta a spiegare perché non è successo.
Riccioli d'oro

Risposte:


7

Bene per Gentoo c'è il progetto Prefisso Gentoo che ti permette di installare pacchetti in un posto diverso da /. Il portage del gestore pacchetti di Gentoo è scritto in Python e molto portatile in modo da poter facilmente configurare un nuovo albero per un utente a cui quell'utente ha pieno accesso senza interrompere nulla.

Due problemi che vedo:

  1. Probabilmente dovrai compilare un sacco di roba o creare pacchetti binari per i tuoi utenti in quel modo e probabilmente dovrai installare un sacco di roba due volte in modo che il prefisso cose funzioni correttamente (penso che sarebbe difficile costruire roba contro di te pacchetti già installati in quel modo)

  2. Non avresti un servizio push.

L'altro approccio che vedo sarebbe quello di offrire un pugno di file tar.gz che sono fondamentalmente solo pacchetti personalizzati dalla tua distribuzione patchati per usare un prefisso diverso: diciamo che crei una directory "Library" in ogni directory utente e aggiungi "~ / Library / usr / bin "al percorso di ogni utente, un semplice gestore di pacchetti potrebbe essere montato per prendersi cura delle installazioni (si potrebbe anche guardare al pacman di Arch Linux per quello dato che sono fondamentalmente solo file .tar.gz e dipendenze.


1
Ma non sta usando Gentoo, è su SuSE. Quindi come può essere d'aiuto?
ire_and_curses,

Come ha detto ire_and_curses, questo è per Gentoo, non per SuSE. Voterei il voto negativo, ma sono solo a 123 ripetizioni (ci vogliono 125 per il voto negativo ..)
JamesTheAwesomeDude

3
Il prefisso Gentoo può anche essere installato su SUSE.
zjhui,

3
Sebbene questa non sia una risposta specifica per SuSE, non esiste una risposta specifica per SuSE , quindi qualcuno che deve assolutamente avere un sistema Linux in grado di farlo potrebbe essere interessato a sapere cosa è effettivamente disponibile. Le "alternative" sono quasi irrilevanti o tangenziali se sono, in realtà, l'unica possibilità . + 1
goldilocks

0

Utilizza un gestore utenti privilegiato [concesso in licenza :(] e potresti eseguire comandi che richiedono un accesso superutente come utente normale. Tutto viene monitorato e verificato


2
Ciao! Qualcuno può approfondire un po 'di più ...? Un utente può lavorare normalmente con Linux (ottenere pacchetti, installare, compilare, ecc.) In un ambiente di rete limitato (cioè senza avere accesso a giocare con le impostazioni proxy locale / remoto, ecc.)?
Nikos Alexandris,

0

Puoi consentire tutto zypper family commandal tuo utente /etc/sudoers file.


Potresti essere un po 'più preciso? Come si fa, quali precauzioni devono essere prese, eventuali rischi?
vonbrand

zyppercomando come apt-get in debian o yumin redhat-base distro. Quindi puoi:, youruser ALL = NOPASSWD: /usr/sbin/zypperquindi non è necessario eseguire il root dei privilegi e della password.
Golfo Persico

Quando si specificano i comandi, non si corre alcun rischio.
Golfo Persico

1
Certo, nessun rischio. Nessun utente casuale che può installare / rimuovere pacchetti può mai rovinare il sistema in modo regale.
vonbrand

no, poiché il sistema stesso utilizza un sistema di blocco.
Golfo Persico
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.