Ich habe gelegentlich meine Konfigurationsdatei "/etc/mysql/my.cnf" verloren und möchte sie wiederherstellen. Die Datei gehört zu dem Paket, mysql-common
das für einige wichtige Funktionen benötigt wird. Ich kann es also nicht purge && install
: Die Abhängigkeiten werden ebenfalls deinstalliert (oder wenn ich sie vorübergehend ignorieren kann, funktionieren sie nicht).
Gibt es eine Möglichkeit, die Konfigurationsdatei aus einem Paket wiederherzustellen, ohne ar
die Paketdatei zu deinstallieren?
dpkg-reconfigure mysql-common
habe es nicht wiederhergestellt.
linux
configuration
apt
restore
dependencies
kolypto
quelle
quelle
7z x /path/to/foo.deb
, dann7z x data.tar.gz
) extrahiert ....conf.d
Ordnern und wenn der Paketbetreuer Aktualisierung es, Upgrade - Prozess wirklich von Anzeigen von Nachrichten „config - Datei geändert“ keen wird :) Der Grund dafür ist nicht so wichtig zu erwähnen, also beschloss ich, meine Frage zu vereinfachenAntworten:
dpkg -i --force-confmiss mysql-common.deb
erstellt fehlende Konfigurationsdateien neu, dh/etc/mysql/my.cnf
in Ihrem Fall.quelle
sudo dpkg --force-confmiss -i /var/cache/apt/archives/mysql-common*.deb
Zumindest in Debian Squeeze können wir das auch so machen, nachdem
su
- odersudo
für Ubuntu -Dadurch werden die Abhängigkeiten
mysql-server
aller fehlenden conf-Dateien des Loses berücksichtigt und zurückgesetzt, einschließlichmysql-common
. In Konflikt stehende (verbleibende) Dateien werden aufgefordert, beibehalten oder zurückgesetzt zu werden.Leider gibt es einen Fehler in der Begabung und
wird nicht funktionieren . Also müssen wir es eins nach dem anderen tun
Dadurch werden alle ursprünglichen oder geänderten Konfigurationsdateien entfernt , benutzerdefinierte Dateien werden jedoch mit einer Meldung auf dem Bildschirm beibehalten. Beachten Sie übrigens, dass
dpkg
auch erkennt--force-confnew
und--force-confold
Optionen.Um die
mysql-server
Liste der Abhängigkeiten auf dem Bildschirm auszudrucken:quelle
Keines der oben genannten Probleme hat bei mir funktioniert - vielleicht ist es veraltet - trotzdem habe ich diese Lösung gefunden:
quelle
Sie finden Standard-MySQL-Konfigurationsdateien in
/usr/share/doc/mysql-server-5.0/examples/
oder ähnlichem. Dies ist möglicherweise alles, was Sie benötigen, es sei denn, Sie haben einige wirklich spezielle / esoterische Konfigurationen aktiviert.quelle
In meinem
/etc/mysql/
Verzeichnis habe ich einemy.cnf.orig
Datei, die den ursprünglichen Inhalt von enthältmy.cnf
.Ich bin mir nicht sicher, woher
/etc/mysql/my.cnf.orig
das kommt - das heißt, ob ich es erstellt habe oder ob die Installation von mysql es getan hat. Ich erinnere mich , einmal prüfen, ob es war genau das gleiche wiemy.cnf
Wenn Sie so etwas haben und nein
my.cnf
, können Sie eins auf das andere kopieren.In jedem Fall handelt es sich um eine einfache Textdatei mit 3897 Bytes, die Sie aus einer generischen MySQL-Konfigurationsdatei kopieren und einfügen können.
Es wird eine gute Idee sein, wenn Sie Ihre wiederhergestellt haben
/etc/mysql/my.cnf
, um eine Kopie zu erstellen, damit Sie sie in Zukunft problemlos wiederherstellen können.quelle
/path/to/foo.conf.orig
... kopiere. Wenn diese automatisch installiert werden, werden sie erstellt, wenn apt-get eine neue Version installiert und feststellt, dass Sie die Originalkonfigurationsdatei geändert haben./etc/mysql/my.cnf.orig
als Backup , die durch eine Neuinstallation nicht überschrieben würde. Es ist jedoch eine gute Idee, es an einem ganz anderen Ort zu platzieren./etc/mysql/my.cnf.orig
. Erstellen Sie dann natürlich ein Tarball-Backup von/etc
. :)Sie müssen mysql-common mit diesem Befehl neu installieren:
apt-get install --reinstall mysql-common
quelle
Es scheint, dass einige der anderen Lösungen nicht funktionieren, wenn die Konfigurationsdateien des Pakets mit verwaltet werden
ucf
.In diesem Fall können Sie verwenden:
quelle