J'ai récemment installé Samba et j'ai foiré le /etc/samba/smb.conf
fichier. Comment récupérer la configuration d'origine?
ubuntu
debian
samba
package-management
config-files
Frew Schmidt
la source
la source
sudo cp /usr/share/samba/smb.conf /etc/samba/smb.conf
Réponses:
Modifié :
Repéré cela sur une question de défaillance du serveur . Si
dpkg-reconfigure foo
cela ne fonctionne pas, utilisez ceci:Supprimez ou renommez le fichier de configuration rompu.
Demandez des remplacements à
dpkg
.Cela indique
dpkg
de remplacer les fichiers de configuration manquants par ceux du .deb. Vous pouvez trouver le package d'origine .deb dans/var/cache/apt/archives
, ou vous pouvez utiliser une nouvelle copie de la même version à partir des référentiels de votre distribution.Cela indiquedpkg
de remplacer les fichiers de configuration existants par ceux du fichier .deb. Vous pouvez trouver le package d'origine .deb dans/var/cache/apt/archives
, ou vous pouvez utiliser une nouvelle copie de la même version à partir des référentiels de votre distribution.la source
dpkg
à écraser le fichier de configuration que s'il aurait autrement demandé la permission de le faire . Cela ne permet pas de recréer comme par magie des fichiers de configuration intacts à partir du package.--force-confmiss
plutôt. dans ce cas particulier, par exemple samba, je pense que--force-confnew
cela effectuerait l'écrasement, mais vous avez raison, cela dépend des détails des scripts de configuration du package.Réponse courte:
/usr/share/samba/smb.conf
c'est la version originale du fichier smb.conf.Face à cette situation pour n'importe quel paquet, ce que je fais est l'un des suivants:
Recherchez les fichiers de sauvegarde de la version d'origine dans votre éditeur. J'utilise Emacs, qui laisse normalement des
foo~
fichiers, et j'ai défini l'option de contrôle de version numérique pour que la version d'origine soit toujoursfoo.~1~
. Mais peut-être que vous l'avez fait d'une autre manière ou que vous avez utilisé un autre éditeur. Pensez à vérifier la configuration de votre éditeur pour activer cette fonctionnalité si vous ne l'avez pas déjà fait; c'est une bonne habitude à prendre.Reconfigurez le package avec
dpkg-reconfigure PACKAGENAME
. Parfois, cela fait l'affaire. D'après mon expérience, cela fonctionne rarement; cela dépend de la façon dont le package crée ses fichiers de configuration.Purgez et réinstallez le package (
apt-get purge packagename
suivi deapt-get install packagename
). Cela devrait toujours fonctionner.Dans les cas extrêmes, vous devez, après la purge, rechercher et supprimer manuellement les fichiers de configuration avant de réinstaller le package, mais cela est rare. Cependant, cela éliminera tout autre fichier de données et / ou de configuration pour le package, ce qui n'est pas toujours acceptable.
Téléchargez le code source du package (
apt-get source foo
) et voyez si le fichier de configuration d'origine existe en tant que fichier. Cependant, il se peut que le fichier de configuration n'existe pas auparavant, mais qu'il soit créé lors de l'installation par le script de post-installation du package.Vérifiez le script postinst du package (
/var/lib/dpkg/info/foo.postinst
) pour savoir où il crée le fichier de configuration et comment il le fait. Essayez ensuite de répéter le processus manuellement. C'est un peu de travail et pas toujours facile.la source
sudo cp /usr/share/samba/smb.conf /etc/samba/smb.conf
pour remplacer mon fichier de conf à la corbeille par l'original.dpkg-reconfigure <package>
ne modifiera pas les fichiers de conf modifiés par défaut.Probablement la façon la plus simple de le faire, si vous avez encore le paquet dans le cache apt, c'est d'exécuter
où le nom du fichier de package est généralement quelque chose comme
<package name>_<version>.deb
(utilisez simplement la complétion de tabulation). Cela passera par le même processus qu'une mise à niveau d'apt et vous demandera ce que vous voulez faire chaque fois qu'il trouvera un fichier conf modifié. Entrez simplementN
à chaque invite. dpkg installera la version du package du fichier conf avec.dpkg-dist
à la fin du nom de fichier. Vous pouvez ensuite utiliservimdiff
ou un autre outil de fusion pour comparer les différences et modifier le fichier conf de lecture.la source
Vous pouvez extraire le deb et récupérer le fichier d'origine:
la source
dpkg-source
est plus facile et l'utilisationapt-get source PACKAGE
est beaucoup plus facile.packagename.postinst
script.Vous pouvez retélécharger et extraire le contenu du paquet deb
la source
La meilleure façon (obtenue de #ubuntu) est de faire ceci:
Dans ce cas, cela signifie
la source
Vous pouvez restaurer le
smb.conf
fichier de configuration d' origine comme ceci:C'est essentiellement ce que fait le processus d'installation du paquet d'origine (sur Debian Squeeze).
Cela vous remplacera actuellement
smb.conf
, alors faites d'abord une sauvegarde si vous ne voulez pas la perdre.la source
et
fera le travail.
la source