Recientemente instalé Samba y estropeé el /etc/samba/smb.confarchivo. ¿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.confRespuestas:
Editado :
Descubrí esto en una pregunta por defecto del servidor . Si el
dpkg-reconfigure foono funciona, use esto:Elimine o cambie el nombre del archivo de configuración roto.
Solicitar reemplazos de
dpkg.Esto le indica
dpkgque reemplace los archivos de configuración que faltan con los del .deb. Puede encontrar el paquete original .deb/var/cache/apt/archiveso puede usar una copia nueva de la misma versión de los repositorios de su distribución.Esto le indicadpkgque sobrescriba los archivos de configuración existentes con los de .deb. Puede encontrar el paquete original .deb/var/cache/apt/archiveso puede usar una copia nueva de la misma versión de los repositorios de su distribución.fuente
dpkga 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-confmissen su lugar. en este caso particular, por ejemplo, samba, creo--force-confnewque 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.confes 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 packagenameseguido 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.confsobrescribir 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 ingreseNen cada solicitud. dpkg instalará la versión del paquete del archivo conf.dpkg-distal final del nombre del archivo. Luego puede usarvimdiffo 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-sourcees más fácil y usarapt-get source PACKAGEes mucho más fácil.packagename.postinstscript.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.confarchivo 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