Se hai creato l'account utente con useradd, devi impostare tutto manualmente per esso. Questo è il motivo per cui, quando si creano account utente dalla riga di comando, si consiglia di utilizzare invece adduserUbuntu (e Debian e altri sistemi basati su Debian). Potresti semplicemente voler rimuovere l'utente con userdelo deluserricrearlo con adduser. Altrimenti...
Correzione della posizione della directory principale
Se si desidera mantenere l'account utente e risolvere il problema, è necessario esaminare:
- il nome della home directory per cui l'account utente è effettivamente configurato
- il nome della directory che hai effettivamente creato
Questi devono essere esattamente gli stessi. Il messaggio di errore che ricevi su -l pennerindica che non sono uguali.
Per controllare la home directory per cui l'account utente è effettivamente configurato, eseguire questo comando (vedere man 5 passwde man grepper ulteriori informazioni):
grep penner /etc/passwd
Dovresti vedere una linea come questa:
penner:x:1000:1000:Eliah Kagan,,,:/home/penner:/bin/bash
Cioè, il sesto :campo separato (dopo il quinto :) contiene la home directory. Se non lo è /home/penner, dovrebbe essere. Se la directory che hai creato per l'utente non lo è /home/penner, dovrebbe esserlo anche. Se le due directory sono uguali ma nessuna delle due /home/penner, teoricamente potrebbe funzionare, ma dovresti realizzarle entrambe /home/penner, poiché molti software presuppongono che tutte rootle home directory degli utenti non lo siano ./home/username
È possibile modificare pennerla home directory in /home/pennereseguendo questo comando:
sudo usermod -d /home/penner penner
Assicurarsi che sia una directory e che l'utente abbia accesso
Se (o una volta) i nomi sono entrambi /home/penner, è necessario assicurarsi che l'utente abbia accesso alla propria home directory. Correre:
ls -ld /home/penner
Dovresti vedere qualcosa che assomiglia a questo (anche se la data e l'ora saranno diverse):
drwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner
Se invece di drwxr-xr-x, hai qualcosa che inizia con -piuttosto che con d, allora hai creato un file anziché una directory. Elimina il file e crea una directory lì.
Se invece del primo pennerhai qualcos'altro, l'utente non possiede la propria directory home, quindi falla possedere:
sudo chown penner /home/penner
Se al posto di drwxr-xr-xci sono trattini nei tre caratteri successivi dopo il d, l'utente non ha pieno accesso lì. Risolvilo come segue:
sudo chmod u+rwx /home/penner
( pennerè in grado di eseguire questo comando se possiede la propria directory home, quindi se preferisci, puoi eseguirlo come sudo -u penner u+rwx /home/penner:)
Garantire che altri utenti non abbiano accesso in scrittura in coperta
Se invece di drwxr-xr-x, ci sono ws invece di -s nelle ultime sei lettere, allora gli utenti pennerpotrebbero avere accesso in scrittura alla pennerhome directory. Questo è pericoloso (a meno che tu non sappia davvero cosa stai facendo e lo desideri in questo modo e abbia impostato le cose in modo che non sia un problema). Per risolverlo:
sudo chmod -R go-w /home/penner
Altri valori predefiniti
Ci sono alcune altre modifiche che potresti voler apportare. Di default in Ubuntu (cioè se si crea un account utente con addusero con uno strumento grafico, cosa che non si è fatto):
Le home directory hanno autorizzazioni di lettura e scrittura per tutti, non solo per l'utente che li possiede. Gli utenti possono cambiarlo, sia per l'intera home directory o per qualsiasi file e sottodirectory al suo interno. Ma se vuoi questo valore predefinito e non hai il secondo e il terzo re xdentro drwxr-xr-x, esegui:
sudo chmod 755 /home/penner
( pennerè in grado di eseguire questo comando se possiede la propria directory home, quindi se preferisci, puoi eseguirlo come sudo -u penner chmod 755 /home/penner:)
Ogni utente ha il proprio gruppo, con lo stesso nome dell'utente, e questo è il gruppo principale dell'utente. La loro home directory è di proprietà di questo gruppo. Questo è il significato del secondo pennerin drwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner. Va bene interrompere questa impostazione predefinita, se sai cosa stai facendo . Ma se non è tua intenzione fare le cose in modo diverso, dovresti assicurarti che pennersia impostato in questo modo, poiché alcune possibili identità di gruppi primari per un utente o proprietari di gruppi nella home directory dell'utente potrebbero causare problemi di sicurezza.
Corri groups penner. (Vedi man groupsper maggiori informazioni.) Dovresti vedere qualcosa del genere:
penner : penner adm dialout cdrom plugdev lpadmin sambashare
Non preoccuparti se non è proprio così. Ci arrivo presto. Invece, guarda la prima parola dopo il :. Questo è il nome del gruppo principale dell'utente. Supponendo che tu lo voglia essere penner, assicurati che lo sia. In caso contrario, cambiarlo:
sudo usermod -g penner penner
Se ricevi un errore che dice che il gruppo pennernon esiste, dovrai crearlo con questo comando (e quindi eseguire nuovamente il comando sopra):
sudo addgroup penner
- Vedi
man addgroupper maggiori informazioni. (Se preferisci, puoi in alternativa usare il groupaddcomando per creare gruppi.)
Quando hai corso groups penner, potresti aver ottenuto un elenco di gruppi considerevolmente più breve del mio penner : penner adm dialout cdrom plugdev lpadmin sambashare. Per gli utenti desktop, il adm, dialout, cdrom, plugdev, lpadmin, e sambashareforniscono le capacità che gli utenti desktop dovrebbero generalmente avere. Pertanto, a meno che tu non abbia un motivo per fare diversamente, pennerdovrebbe essere in questi gruppi. Questi non sono gruppi primari, tuttavia, quindi sono impostati in modo diverso. Supponendo che pennernon sia presente in nessuno di questi gruppi e che si desidera pennerfar parte di tutti questi, eseguire questo comando:
sudo usermod -a -G adm,dialout,plugdev,lpadmin,sambashare penner
Se sei interessato, ecco cosa significano tutti quei gruppi:
(Fonte: Privilegi , nel wiki della documentazione di Ubuntu.)
Trasformare l'utente in amministratore
Se non vuoi penneressere un amministratore, probabilmente non devi fare altro. Puoi verificare se pennerè un amministratore con groups penner. Se nessuno dei due adminné sudoè elencato, pennernon è un amministratore.
Se vuoi penneressere un amministratore, aggiungi pennera qualunque di questi gruppi esiste. (Puoi anche aggiungere pennerad entrambi, se esistono entrambi.) Puoi farlo eseguendo questi due comandi separatamente - se uno dei due riesce, hai creato pennerun amministratore:
sudo usermod -a -G admin penner
sudo usermod -a -G sudo penner
- La ragione per cui ci sono due gruppi è che, prima di Ubuntu 12.04 LTS, gli amministratori erano nel
admingruppo. A partire da Ubuntu 12.04 LTS, gli amministratori fanno parte del sudogruppo. Ma se il tuo sistema LTS 12.04 è aggiornato da una versione precedente (e questo dovrebbe applicarsi alle versioni successive di Ubuntu, come 12.10 quando esce, che sono aggiornate da Ubuntu 11.10 o precedente), quindi per compatibilità con le versioni precedenti, gli amministratori sono membri di entrambi sudoe admin. Generalmente, se uno di questi gruppi non conferisce capacità amministrative, semplicemente non esiste, quindi eseguire entrambi i due comandi sopra (separatamente, non come sudo usermod -a -G admin,sudo penner) è generalmente un modo sicuro ed efficace per creare pennerun amministratore.