Come ripulisco il mio database dconf?


40

Dconf è piuttosto giovane, ma il mio database è già un disastro con molte chiavi "senza schema". C'è un modo per fare un po 'di pulizia, o dovrei ricominciare da capo (rimuovendo ~ / .config / dconf / user credo)?


qualche possibilità che tu possa aggiungere una schermata di ciò che stai vedendo? Non vedo lo stesso problema.
Fossfreedom

1
Utilizzare qualsiasi software che utilizza GSettings / dconf, modificare uno dei valori predefiniti (ad es. Gnome-nettool, eseguire un whois), rimuovere l'applicazione. Ora hai i resti nel tuo database (es. In apps.gnome-nettool). Bene se reinstalli quel software in un secondo momento, ma voglio rimuovere quelle chiavi.
htorque,

Una rapida ricerca online mi ha permesso di trovare un progetto Google Code che sembra fare qualcosa di simile per gconf ... potrebbe essere modificato per funzionare con dconf?
Christopher Kyle Horton,

Hai provato a guardare il file di testo e tentare di trovare un'operazione di sostituzione per rimuovere tutti gli elementi indesiderati dal tuo dconf?
Severo Raz,

Risposte:


34

Questo è possibile usando il dconf resetcomando, anche se non è chiaro se si tratta di un effetto collaterale di un bug.

  • Per una singola chiave:

    dconf reset "/path/to/the/key"
    

    Non deve finire con a /.

  • Per un intero percorso:

    dconf reset -f "/path/to/the/path/"
    

    Deve terminare con a /.

Se lo fai mentre hai dconf-editoraperto, probabilmente si bloccherà.


Questo funziona bene. Per i neofiti, omettere i segni di citazione quando si indicano i percorsi. Da +1 a @htorque. Tx.
Cbhihe,

Per completezza, aggiungo al mio commento di ieri che ho usato con successo quella soluzione su Trusty 14.04.2.
Cbhihe,

3

Se si desidera pulire il database dconf, è necessario prima scaricare l'intera configurazione di dconf tramite:

morfik:~$ cd ~/.config/dconf/
morfik:~/.config/dconf$ dconf dump / > user-backup
morfik:~/.config/dconf$ ls -al ./user-backup
-rw-r--r-- 1 morfik morfik 30.0K 2015-02-07 08:18:04 ./user-backup
morfik:~/.config/dconf$ rm user

Dopo questi passaggi è necessario riaprire la sessione grafica (disconnettersi / accedere). Questo creerà ~/.config/dconf/usernuovamente il file con quasi 0 contenuti - impostazioni predefinite.

Per quanto riguarda il user-backupfile che hai creato in precedenza, è solo un file di testo semplice:

...
[apps/light-locker]
late-locking=false
lock-after-screensaver=uint32 1
lock-on-suspend=true
...

Quindi puoi modificarlo e rimuovere le voci / i blocchi desiderati da quel file. In altre parole: puliscilo.

Al termine, caricalo:

morfik:~/.config/dconf$ dconf load / < ./user-backup
morfik:~/.config/dconf$ ls -al ./user-backup
-rw-r--r-- 1 morfik morfik 14.0K 2015-02-07 08:26:23 ./user-backup
morfik:~/.config/dconf$ dconf update /

Penso che dovresti riavviare nuovamente la sessione grafica.

E questo è tutto, ma devi ricordare che tutte le voci che hanno valori predefiniti non verranno salvate: verranno create di nuovo quando alcune app lo richiederanno, il che è positivo perché desideri eseguire il backup solo dei valori che hai modificato .


Questo in realtà non sembra avere alcun effetto sul sottoprocesso di dconf che viene scaricato e ricaricato. (Lavoro con Ubuntu 14.04.2 completamente aggiornato e provo a rimuovere tutte le chiavi che hanno a che fare con il pacchetto indicatore-netspeed-unity da ppa: fixnix / netspeed.) Sembra un modo pulito per farlo ma lo fa NON effettuare alcun cambiamento.
Cbhihe,

L'ho rifatto per essere sicuro, ma confermo che ciò non ha alcun effetto. Immagino di aver votato questa risposta un po 'troppo in fretta. Non posso annullarlo ora.
Cbhihe,

Ho aggiornato la risposta, controllala - funziona per me.
Mikhail Morfikov,

Sì, ora funziona bene. Rimuovere ~ / .config / dconf / user prima di terminare la sessione di unità e ricominciare da capo erano i passaggi mancanti. Il voto positivo è valido. Grazie.
Cbhihe,

Questo mi ha salvato quando ho ottenuto una schermata nera dopo aver effettuato l'accesso a Gnome. Dopo aver aperto un tty con Alt+Ctrl+F3, sono stato in grado di eseguire questi passaggi. Un comando utile aggiuntivo è stato il sudo pkill -u <username>riavvio della sessione desktop gnome attiva.
Zoltán,

1

Installa gconf-cleanerdal centro software.
sudo apt-get install gconf-cleaner

Con le loro stesse parole "GConf Cleaner è uno strumento per ripulire il database Gconf che può essere ingombro di chiavi non necessarie o non valide".


Non esiste più nel software center a partire da Ubuntu 18.04 (e forse prima)
vanadio
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.