Pagina 1 di 1

come ripristinare i permessi alla home?

Inviato: dom 25 nov 2007, 18:17
da slucky
Allora ragazzi, chiedo consiglio a voi che siete gente in gamba :D , perchè nei forum debian molti ci capiscono poco secondo me il fatto è che avevo un problema al login della Debian che ho installato su un'altra piccola partizione, da tempo quando facevo il login mi usciva un messaggio che mi diceva che la $HOME deve essere di proprietà dell'utente e non scrivibile da altri utenti, poi che il file .dmrc dovrebbe essere di proprietà dell'utente e avere i permessi 644..........ora è successo che seguendo il consiglio sbagliato di un utente ho dato questo comando:

chmod -R 644 /home/<utente>/.*

ed ora nella home non funziona più nulla :( e quando provo a loggarmi mi dice che non esiste :evil:
Logicamente è tutto un problema di permessi ai files, come posso ripristinare la situazione precedente?
o almeno come posso fare per provare a ripristinare la situazione?
Lo so che si tratta di un'altra distro, ma ho pensato solo gli amici slackweristi hanno la competenza e possono aiutarmi a risolvere il problema ;)

Ciao a tutti :D

Inviato: dom 25 nov 2007, 18:35
da gallows
Beh, intanto sistema i permessi della ~ :

Codice: Seleziona tutto

# chown <tuonick>:<tuogruppo> /home/<tuonick>
# chmod 0750 /home/<tuonick>
Prima di usare chmod -R pensaci bene...

Inviato: dom 25 nov 2007, 18:47
da slucky
Okay grazie per il consiglio gallows :D
solo una cosa con chmod 0750 ripristino tutti i files della home così come erano in origine?
ho dato un'occhiata a amministrazione >utenti e gruppi e risulta così in gruppi:

<darkstar> 1000

quindi devo scrivere:

chown darkstar:darkstar /home/darkstar
chmod 0750 /home/darkstar

giusto per essere sicuro di non fare altri errori

ciao e grazie per l'aiuto

:D

Inviato: dom 25 nov 2007, 23:24
da urka58
I permessi di /home/utente sono impostati a 0711 di default e di proprietà utente:users.
I file all'interno della directory possono avere i permessi impostati in svariati modi, dipende dal file e dalll'uso del file.
A meno che tu non abbia cambiato alcune impostazioni il primo utende creato, in genere te stesso, ha un UID=1000. Il gruppo users a cui vengono associati di default tutti gli utenti ha GID=100.
Attenzione ad impostare i permessi di /home/urente a 0750.. alcuni programmi che utilizzano speciali utenti e/o gruppi hanno alcuni file di configurazione in tale directory. Con i permesssi impostati a 0750 non riescono a leggere questi files se la directory non può essere attraversata da tutti.
Ciao

Inviato: dom 25 nov 2007, 23:40
da slucky
Nel frattempo ,ho sistemato così :

chmod -R 777 /home/<nomeutente>
chmod -R 777 /home/<nomeutente>/.*

tutto ha ripreso ha funzionare, certo se c'erano dei files con permessi particolari non lo saprò mai e ora la /home è accessibile a tutti,la cosa non è che mi vada a genio del tutto comunque almeno tutti i programmi e le impostazioni funzionano, però pensavo che ci fosse un comando neutro diciamo che ripristinasse automaticamente i permessi originari dei files cambiati.
comunque quel problema del messaggio al login di debian etch mi è rimasto, mi hanno consigliato poichè ho varie partizioni con vari sistemi installati di modificare /etc/fstab da defaults, auto in noauto.........mahhh non so perchè già seguendo alcuni consigli sbagliati di utenti Debian mi sono trovato nei pasticci :lol: :lol:
preferisco più i consigli di voi amici Slackweristi che del pinguino siete dei maestri.........

Ciao a tutti!!! :D

Inviato: lun 26 nov 2007, 16:47
da conraid
Per impedire di entrare nella tua dir, come ti hanno già suggerito sopra, dai qualcosa come

Codice: Seleziona tutto

#chown user:group /home/user
#chmod 0711 /home/user
Il comando che ti hanno suggerito in altro forum toglie il flag di esecuzione per le directory, che equivale a non potervi accedere.

La prossima volta, oa desso se vuoi togliere quei flag, se fossi in te cercherei prima di cambiare i permessi in toto, e dopo solo alla directory.
Una cosa simile a questa

Codice: Seleziona tutto

#chown user:group /home/user
#chmod 0711 /home/user
#chmod 0644 /home/user/* -R
#chmod 0644 /home/user/.* -R
#find /home/user \( ! -name . ! -name .. \) -type d -exec chmod 755 -- '{}' \; 
In questo modo dopo aver cambiato i permessi di "tutti" i file, dai il permesso di esecuzione solamente alle directory

Provalo prima in una sottodirectory che non l'ho testato.
Naturalmente ogni file o directory ha permessi specifici, ma in casi eccezionali si cerca di rimediare.

Il comando find a volte è molto utile :-)

Inviato: lun 26 nov 2007, 16:51
da gallows
777? Uhm, almeno dai questo:

$ find ~ -type d -exec chmod 755 {} \;
$ find ~ -type f -exec chmod 644 {} \;

EDIT: mi ha anticipato conraid.

Inviato: lun 26 nov 2007, 23:36
da slucky
Grazie ragazzi dei consigli utilissimi!!! ;)
D'altronde non tutti i mali vengono per nuocere, sto imparando qualcosa di nuovo grazie ai vostri suggerimenti, solo vorrei capire l'ultimo comando scritto da conraid:
#find /home/user \( ! -name . ! -name .. \) -type d -exec chmod 755 -- '{}' \;
la sintassi in pratica cosa significa?
inoltre dopo questa procedura praticamente tutti i files avranno i loro permessi originari?

un'ultima cosa, devo prima cambiare i permessi in toto e poi alle directory okay..........però devo scrivere group e sostituire user con il mio nomeutente? parlo di questo comando:

#chown user:group /home/user
Grazie dell'aiuto a tutti!!! :D

Inviato: mar 27 nov 2007, 13:44
da sir_alex
conraid ha scritto:Per impedire di entrare nella tua dir, come ti hanno già suggerito sopra, dai qualcosa come

Codice: Seleziona tutto

#chown user:group /home/user
#chmod 0711 /home/user
Il comando che ti hanno suggerito in altro forum toglie il flag di esecuzione per le directory, che equivale a non potervi accedere.

La prossima volta, oa desso se vuoi togliere quei flag, se fossi in te cercherei prima di cambiare i permessi in toto, e dopo solo alla directory.
Una cosa simile a questa

Codice: Seleziona tutto

#chown user:group /home/user
#chmod 0711 /home/user
#chmod 0644 /home/user/* -R
#chmod 0644 /home/user/.* -R
#find /home/user \( ! -name . ! -name .. \) -type d -exec chmod 755 -- '{}' \; 
In questo modo dopo aver cambiato i permessi di "tutti" i file, dai il permesso di esecuzione solamente alle directory

Provalo prima in una sottodirectory che non l'ho testato.
Naturalmente ogni file o directory ha permessi specifici, ma in casi eccezionali si cerca di rimediare.

Il comando find a volte è molto utile :-)
Bè io ad esempio sono in chmod 700, così sono sicuro che nessuno degli altri utenti può leggere il contenuto in nessun modo... ma è in realtà abbastanza inutile, secondo me, dare i permessi diversi alla directory ed ai contenuti, perchè poi succede che i files creati in una directory prendono i permessi della directory in cui si trovano, quindi se crei altre cose all'interno di una directory 711 quelle cose avranno 711!

Inviato: mar 27 nov 2007, 14:11
da conraid
slucky ha scritto:Grazie ragazzi dei consigli utilissimi!!! ;)
D'altronde non tutti i mali vengono per nuocere, sto imparando qualcosa di nuovo grazie ai vostri suggerimenti, solo vorrei capire l'ultimo comando scritto da conraid:
#find /home/user \( ! -name . ! -name .. \) -type d -exec chmod 755 -- '{}' \;
la sintassi in pratica cosa significa?
Trova dentro la directory di quell'utente tutti i file di tipo directory tranne . e .. e gli assegna i permessi 755

Puoi anche farlo per i file normali come ti ha detto gallows, io avevo fatto chmod perché volevo separare i file nascosti dagli altri, cosa che con find non mi veniva subito. Ma poi ho cambiato e messo ad entrambi 644

Come ti dice sir_alex può non avere senso, ma di default i file e le directory vengono creati così.
slucky ha scritto: inoltre dopo questa procedura praticamente tutti i files avranno i loro permessi originari?

un'ultima cosa, devo prima cambiare i permessi in toto e poi alle directory okay..........però devo scrivere group e sostituire user con il mio nomeutente? parlo di questo comando:

#chown user:group /home/user

No. dipende.
Devi sostituire a user il nome utente, a group il nome del gruppo.
Su slackware è per esempio conraid:users, ma su altre distribuzioni si usa dare un gruppo diverso ad ogni utente e quindi diventerà conraid:conraid

Non so Debian come agisce

Inviato: mar 27 nov 2007, 19:35
da sir_alex
Bè, debian penso funzioni come ubuntu (e peraltro come tutte le distribuzioni tranne slack ;-) ), ovvero crea un utente ed un gruppo con lo stesso nome...

Inviato: mar 27 nov 2007, 23:45
da slucky
Sì infatti ho controllato, in Debian e suoi derivati come Ubuntu viene creato l'utente ed il gruppo con lo stesso nome, come diceva giustamente sir Alex ;)
comunque ragazzi, vi ringrazio tutti ed in particolar modo conraid che mi ha fatto imparare cose sui permessi dei files che non conoscevo :D
a dimostrazione, come dicevo, che i veri maestri del pinguino usano Slackware e sono qui su slacky.eu.................


Ciao a tutti!!! :occasion5:

Inviato: ven 30 nov 2007, 0:09
da slucky
Solo per segnalarvi che per risolvere il problema del messaggio di errore al login dell'utente è bastato dare solo i primi 2 comandi di quelli consigliati da conraid:
#chown user:group /home/user
#chmod 0711 /home/user

Ciao a tutti :D

Inviato: ven 30 nov 2007, 0:14
da samiel
Io ho Slack in una partizione e Debian in un'altra.
Per evitare guai qualora passi da una distro all'altra,
ho seguito dappertutto il criterio Debian.
Anche in Slack, ho creato un gruppo per ogni utente
e la sua home e derivati sono di utente:utente.

M.

Inviato: ven 30 nov 2007, 1:20
da slucky
Grazie del consiglio Samiel, sì avevo notato che sei presente anche sul forum di Debian e anche di quel sistema sei un grande esperto!!!


Ciao stammi bene :D