Me he encontrado varias veces configurando todos mis pi con raspbian de la misma manera usando raspi-config.
¿Hay alguna forma de extraer todas las configuraciones que hice usando raspi-config en un script ejecutable que podría descargar con wget en cada nueva pi que configuré?
También se agradecería una solución similar con el mismo efecto. Supongo que podría probar una de las implementaciones de rpi docker, pero no estoy tan ansioso por descubrir qué tan innovador es ese material.
setup
raspi-config
8DH
fuente
fuente
/usr/bin
, si eso ayuda. Si desea deshabilitarlo comenzando con imágenes nuevas, elimine/etc/init.d/apply_noobs_os_config
y el enlace en/etc/rc2.d
.Respuestas:
Al menos hoy en día,
raspi-config
parece admitir el modo no interactivo:con esto, puede escribir scripts de configuración que pueden hacer cualquier cosa que pueda hacer a través del comando interactivo, y hará exactamente lo mismo. Sin embargo, deberá encontrar los comandos relevantes y su uso desde la fuente del script.
fuente
Esto todavía no está documentado en ninguna parte, pero la herramienta rc_gui (supongo que sería una interfaz gráfica de usuario para la configuración de raspi si alguna vez instalo el escritorio completo) utiliza opciones de línea de comandos para el script baspi de configuración de raspi. Puede ver la lista completa de opciones en el
código fuente C. ACTUALIZACIÓN: El repositorio oficial ha desaparecido por alguna razón. Esta es la bifurcación más activa que pude encontrar.ACTUALIZACIÓN: Noto que no hay nada allí acerca de la configuración regional o del teclado. Entonces, eso me sugiere que debemos examinar la fuente de
raspi-config
. Afortunadamente, tenemos muchos ejemplos anteriores para tener una idea de cómo usar ese script de formanonint
activa. Entonces, lo que necesito hacer para resolver este problema sin cabeza es:Las variables son los valores que habría seleccionado de la interfaz de usuario de curses. Las opciones de configuración regional son el primer campo del archivo
/usr/share/i18n/SUPPORTED
. Las opciones de distribución del teclado son los nombres de directorio en/usr/share/X11/xkb/symbols/
. Al estar en los Estados Unidos, usoen_US.UTF-8
yus
. YMMVfuente
sudo raspi-config nonint do_audio %d
para elegir la salida de audio (0 = auto, 1 = jack, 2 = HDMI)do_audio
. Pero esa es de hecho una función que se encuentra encurl -sL https://github.com/RPi-Distro/raspi-config/raw/master/raspi-config | grep -E '(do|get)_[a-zA-Z0-9_ ]+\(' | sort | uniq
Todo lo que
raspi-config
hace es editar algunos archivos de configuración, que también puede editar con un script. Consulte elsed
manual para ver cómo se pueden realizar de manera eficiente tales ediciones.Si tiene que aplicar muchos cambios de esta manera, consideraría configurar una imagen RPi limpia de la manera que desee,
diff
su sistema de archivos completo * contra una imagen vainilla, y luego aplicar los cambiospatch
cuando necesite configurar una nueva instalación.Finalmente, eche un vistazo a herramientas tales como
etckeeper
: están diseñadas específicamente para manipular los cambios de configuración y son capaces de rastrear cambios sutiles que un simplediff
pasaría por alto, como los permisos. Tenga en cuenta que, al contrario de su nombre,etckeeper
no se limita a/etc
, por ejemplo, la ejecuciónetckeeper -d /boot init; etckeeper -d /boot commit
hará una copia de seguridad de los archivos en/boot
.(*) Aparentemente no es obvio , así que para aclarar todos los malentendidos, quiero decir que debes ejecutar algo así
diff -r /etc /mnt/vanilla_root/etc > etc.diff
ydiff -r /boot /mnt/vanilla_boot > boot.diff
nodiff my.img vanilla.img
.fuente
Use dd (o similar) para copiar la imagen de trabajo de Pi a su PC.
Use dd (o similar) para copiar la imagen copiada de su PC a su Pi.
hombre dd
fuente
Tengo 1 tarjeta SD 100% configurada según mis deseos que mantengo como base para todas las nuevas instalaciones.
Al configurar una nueva Pi, simplemente clono esa tarjeta SD en lugar de comenzar desde cero.
fuente