Recientemente instalé Samba y estropeé el /etc/samba/smb.conf
archivo. ¿Cómo recupero la configuración original?
ubuntu
debian
samba
package-management
config-files
Frew Schmidt
fuente
fuente
sudo cp /usr/share/samba/smb.conf /etc/samba/smb.conf
Respuestas:
Editado :
Descubrí esto en una pregunta por defecto del servidor . Si el
dpkg-reconfigure foo
no funciona, use esto:Elimine o cambie el nombre del archivo de configuración roto.
Solicitar reemplazos de
dpkg
.Esto le indica
dpkg
que reemplace los archivos de configuración que faltan con los del .deb. Puede encontrar el paquete original .deb/var/cache/apt/archives
o puede usar una copia nueva de la misma versión de los repositorios de su distribución.Esto le indicadpkg
que sobrescriba los archivos de configuración existentes con los de .deb. Puede encontrar el paquete original .deb/var/cache/apt/archives
o puede usar una copia nueva de la misma versión de los repositorios de su distribución.fuente
dpkg
a sobrescribir el archivo de configuración si de lo contrario hubiera pedido permiso para hacerlo . No , no lo hacen mágicamente recrear archivos de configuración prístinos del paquete.--force-confmiss
en su lugar. en este caso particular, por ejemplo, samba, creo--force-confnew
que realizaría la sobrescritura, pero tienes razón en que depende de los detalles de los scripts de configuración del paquete.Respuesta corta:
/usr/share/samba/smb.conf
es la versión original del archivo smb.conf.Cuando me enfrento a esta situación para cualquier paquete, lo que hago es uno de los siguientes:
Verifique los archivos de respaldo de la versión original desde su editor. Uso Emacs, que normalmente deja
foo~
archivos, y configuré la opción numérica de control de versiones para que la versión original sea siemprefoo.~1~
. Pero tal vez lo hiciste de otra manera, o usaste algún otro editor. Considere verificar la configuración de su editor para activar esta función si aún no lo ha hecho; Es un buen hábito entrar.Reconfigure el paquete con
dpkg-reconfigure PACKAGENAME
. A veces esto hace el truco. En mi experiencia, rara vez funciona; depende de cómo el paquete está creando sus archivos de configuración.Purgue y reinstale el paquete (
apt-get purge packagename
seguido deapt-get install packagename
). Esto siempre debería funcionar.En casos extremos, debe, después de la purga, buscar y eliminar manualmente los archivos de configuración antes de reinstalar el paquete, pero esto es raro. Sin embargo, esto eliminará cualquier otro dato y / o archivo de configuración para el paquete, y eso no siempre es aceptable.
Descargue el código fuente del paquete (
apt-get source foo
) y vea si el archivo de configuración original existe como un archivo allí. Sin embargo, puede ser que el archivo de configuración no exista de antemano, sino que se crea en la instalación mediante el script posterior a la instalación del paquete.Verifique el script postinst para el paquete (
/var/lib/dpkg/info/foo.postinst
) para averiguar dónde crea el archivo de configuración y cómo lo hace. Luego intente repetir el proceso manualmente. Esto es un poco de trabajo, y no siempre es fácil.fuente
sudo cp /usr/share/samba/smb.conf /etc/samba/smb.conf
sobrescribir mi archivo de basura con el original.dpkg-reconfigure <package>
no modificará los archivos conf modificados de forma predeterminada.Probablemente la forma más fácil de hacer esto, si todavía tiene el paquete en el caché apto es ejecutar
donde el nombre del archivo del paquete suele ser algo así
<package name>_<version>.deb
(solo use la finalización de tabulación). Esto se ejecutará a través del mismo proceso que una actualización de apt y le preguntará qué desea hacer cuando encuentre un archivo de configuración modificado. Simplemente ingreseN
en cada solicitud. dpkg instalará la versión del paquete del archivo conf.dpkg-dist
al final del nombre del archivo. Luego puede usarvimdiff
o alguna otra herramienta de combinación para comparar diferencias y modificar el archivo conf de lectura.fuente
Puede extraer el deb y tomar el archivo original:
fuente
dpkg-source
es más fácil y usarapt-get source PACKAGE
es mucho más fácil.packagename.postinst
script.Puede volver a descargar y extraer el contenido del paquete deb
fuente
La mejor manera (obtenida de #ubuntu) es hacer esto:
En este caso eso significa
fuente
Puede restaurar el
smb.conf
archivo de configuración original de esta manera:Esto es básicamente lo que hace el proceso de instalación del paquete original (en Debian Squeeze).
Esto sobrescribirá su actual
smb.conf
, así que haga una copia de seguridad primero si no desea perderla.fuente
y
Hará el trabajo.
fuente