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.