Come posso cambiare le autorizzazioni su Ubuntu Server?


1

Ho installato Ubuntu Server e Ubuntu Desktop 12.04.3 LTS e ho installato il pannello di gestione del server Froxlor . Alla fine dell'installazione di Froxlor, ha creato un file userdata.inc.phpnella /tmpcartella.

Ora devo spostarlo nella /libcartella, ma non posso. Non posso modificarlo, copiarlo, visualizzarlo o spostarlo perché dice che non ho il permesso.

Ho provato di tutto, anche aprendo Filezilla e cercando di FTP il file su un altro host per il trasferimento nella cartella giusta. Continua a dire che non ho il permesso.

Che cosa sono queste autorizzazioni e come posso ottenerle?


Come è stato accennato nei commenti alla risposta di Fiasco Labs : perché dovresti inserire un file di codice sorgente PHP in / lib? / lib è per i file della libreria binaria, non per il codice sorgente o la configurazione dell'applicazione web. La mia ipotesi sarebbe che tu stia cercando un posto sotto / var / www o / srv, o / etc nel peggiore dei casi.
un CVn

Risposte:


5

Questa è una di quelle domande che è un po 'multilivello. Alcuni di questi sono i problemi di base dell'operatore Linux 101 di cui devi familiarizzare per gestire questo sistema.

Il primo problema è che è necessario comprendere le autorizzazioni applicate nel file system Linux.

Esistono cinque attributi pertinenti applicabili sia ai file che alle directory.

  • Il primo è il proprietario dell'articolo
  • Il secondo è la proprietà del gruppo dell'articolo
  • Il terzo è il tipo di accesso che il proprietario ha al file / directory
  • Il quarto è il tipo di accesso che il gruppo ha al file / directory
  • Il quinto è il tipo di accesso consentito a tutti gli altri al file / directory

Puoi vederli quando elenchi i file usando ls -l

drwxr-xr-x  3 bondobob apache2  4096 Apr 13  2011 public_ftp/

Il prossimo problema è che per spostare un file, devi possedere il file, appartenere a un gruppo che ha i diritti necessari o essere l'utente root. Sarà inoltre necessario disporre dei diritti e della proprietà applicabili sulla directory in cui si sta spostando il file.

Di solito sui moderni sistemi Linux, non è consentito accedere come root, quindi è necessario utilizzare un comando chiamato sudo(super user do) per inoltrare l'accesso del sistema al livello di root.

sudo mv somefile /path/to/somefileti chiederà la tua password e se il tuo nome di accesso è elencato in /etc/sudoers, ti verrà richiesta la tua password e il comando verrà eseguito.

Il problema finale è che lo spostamento del file potrebbe non essere sufficiente per quello che vuoi veramente realizzare poiché il problema delle autorizzazioni è dovuto al fatto che stai provando a trasferire un file da qualche parte nel sistema /tmpa qualche parte in /libe probabilmente dovrai usare il chowncomando per impostare il proprietario e il gruppo corretti e utilizzare chmodper impostare le autorizzazioni di lettura / scrittura / esecuzione del proprietario / gruppo / globale sul file in modo che il sistema possa accedervi correttamente. Ancora una volta, sudosarà necessario intensificare i tuoi privilegi per utilizzare questi comandi.

I file contenuti nella /libdirectory saranno probabilmente di proprietà di root.root e avranno le autorizzazioni rw-r - r-- (leggi / scrivi dal proprietario, leggi solo per tutti gli altri). Per modificarlo, dovrai utilizzare l' sudoescalation dei privilegi per caricare il file nel tuo editor preferito. È una cattiva idea avere questi file modificabili da chiunque sia l'utente root o l'utente demone.

Questo è una specie di fine in tldr; territorio quindi se ci sono domande di follow-up specifiche ...


Comunque, aggiungerei usando 'sudo' è generalmente il modo Ubuntu, e su non funzionerebbe in una tradizionale configurazione Ubuntu, poiché root non ha password. Per ottenere l'equivalente di su, devi usare sudo su
Journeyman Geek

Grrr ... Significa SUDO, modificherà. Almeno ho i sudoers giusti ... drrr ...
Fiasco Labs

1
È un errore abbastanza naturale da fare - diavolo, il mio vps usa sudo, piuttosto che sudoers. Immagino che mi manchi qualcosa in questa domanda - perché uno script PHP dovrebbe essere spostato manualmente in / lib?
Journeyman Geek

Dovrei preoccuparmi di Froxlor abbastanza per andare a scavare. Sembra un file di creazione con un senso di direzione fuori luogo o il creatore del pacchetto è stato espulso.
Fiasco Labs,

2
Sì, o c'è un malinteso da qualche parte. Probabilmente è il motivo per cui nessuno ha risposto prima e questa domanda è stata chiusa, con grande fastidio del PO.
Journeyman Geek
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.