come copiare il vecchio account utente sul nuovo account utente?

4

il mio vecchio account utente non funziona affatto con alcuni file corrotti, suppongo ...

gli altri 2 account funzionano normalmente.

quindi creo un nuovo account amministratore e mi chiedo come posso copiare tutte le mie impostazioni, password, file dal vecchio account amministratore a un nuovo account.

Non posso usare il vecchio account di amministrazione che viene congelato molto male, quindi aiuterò molto se posso eseguire la migrazione dal nuovo account di amministrazione.

Grazie!

    
posta tinaf 18.07.2011 - 07:56

2 risposte

1

In pratica stai chiedendo: "Come copiare impostazioni e file dal mio account utente a un nuovo account utente, saltando alcune impostazioni?"

Migrazione a un nuovo account utente

Per spostare file da old a new , devi copiare i file e modificare di conseguenza la proprietà:

sudo cp -r -d --preserve=mode,timestamps -T ~old ~new
sudo chown -R new: ~new

Questo dovrebbe copiare i file senza modificare i percorsi.

Ora accedi a una shell come new . Passa a un VTY usando Ctrl + Alt + F1 e accedi come new o accedi da un terminale usando su new . Se hai scelto il primo metodo, puoi tornare indietro con Ctrl + Alt + F7 . Da questo punto, si presume che tu abbia effettuato l'accesso come new .

Se esistono collegamenti simbolici che puntano alle loro vecchie directory, trova questi collegamenti:

find ~ -lname '*/old/*' -ls

I nomi dei file dei collegamenti simbolici sono stampati, ma non è stata intrapresa alcuna azione. Per creare un nuovo link simbolico ~new/path/to/symlink che punta a ~old/point/to/target , sovrascrivendo quello vecchio, esegui:

ln -sf ~old/point/to/target ~new/path/to/symlink

Potrebbero esserci file di configurazione che si riferiscono a quelli vecchi, puoi trovare quei file con grep :

grep -HrnI 'old' ~

Se ottieni molti risultati, considera di essere più specifico, sostituendo old di /home/old . I file saranno elencati con linee che corrispondono ai criteri di ricerca, ma nessuna azione è stata intrapresa.

Debug del vecchio account

Se copi tutte le impostazioni e i file, è meglio rimuovere i file problematici. Per ottenere risultati ottimali, è consigliabile disconnettere l'utente soggetto da una sessione della GUI e accedere a una console virtuale (passare ad essa utilizzando Ctrl + Alt + F1 ).

Se ti stai disconnettendo improvvisamente, controlla ~/.xsession-errors . Puoi farlo eseguendo:

less ~/.xsession-errors

Utilizza i tasti freccia, Pagina su / giù, Home o Fine per navigare, premi Q per uscire.

A volte il file .gconfd/saved_state viene corrotto. Puoi rimuovere questo file con:

rm .gconfd/saved_state

Dopo aver fatto ciò, torna a un login della GUI premendo Ctrl + Alt + F7 . Accedi e se il problema è andato via, hai finito. Altrimenti, scollegati e torna alla console virtuale usando Ctrl + Alt + F1 .

Un'altra directory che può essere svuotata è ~/.cache :

rm -r ~/.cache/*

Invece di perdere tutti i file e le impostazioni, sposta temporaneamente alcune cartelle. Questo può essere fatto con:

mv folder{,-orig}

Se una cartella non causa problemi, rimuovi la cartella appena creata e ripristina quella precedente:

rm -r folder
mv folder{-orig,}

Alcune cartelle che potrebbero causare problemi (alcuni potrebbero non esistere, in tal caso saltare alla cartella successiva):

.gnome
.gnome2
.kde
.config
.local

Come per ogni modifica, torna a un login della GUI e testalo.

    
risposta data Lekensteyn 18.07.2011 - 09:15
0

Supponendo che tu abbia già creato newuser e che la cartella home per newuser esista:

(1/2) Copia tutti i file nel nuovo utente:

sudo rsync -ah --progress /home/olduser/. /home/newuser

Note:

  • rsync è una funzione simile ma generalmente migliore di cp . Ha più opzioni ecc.
  • Il comando -a conserva le autorizzazioni dei file originali (verranno ordinate le proprietà nel passaggio 2)
  • Il comando -h trasforma le informazioni di output in un formato leggibile dall'uomo (ad esempio dimensioni dei file ecc.)
  • --progress aggiunge una barra di avanzamento per ogni file
  • il /. alla fine della posizione olduser consente di includere i file nascosti (questo assicurerà che i tuoi file bash_aliases e bashrc siano copiati e non solo i file normali. migra le tue impostazioni.)

(2/2) Cambia il proprietario dei file copiati

Ora cambiamo tutte le proprietà dei file:

sudo chown -R --from=olduser:oldusergroup newuser:newusergroup /home/newuser

Note:

  • chown è una funzione di CHANGE-OWNership dei file
  • -R lo rende ricorsivo. (Se stai solo cambiando un file non hai bisogno di questo, ma stiamo cambiando tutti i file e le directory e tutto all'interno della tua nuova cartella utente e quindi è necessario ricorsivo)
  • --from=olduser:oldusergroup questo assicura che non cambiamo alcun file (particolarmente rilevante per i file nascosti) che sono "di proprietà" di root. Cambiare questi potrebbe rovinare parecchio. Questa opzione --from dice a chown che vogliamo solo cambiare file e cartelle che sono attualmente di proprietà di olduser .

Questo ha funzionato per me e, anche se ho spiegato molto qui, in realtà sono solo 2 comandi principali, quindi il processo è davvero semplice una volta capito come mantenere le autorizzazioni ecc.

    
risposta data mjp 30.03.2017 - 17:35

Leggi altre domande sui tag