He estado construyendo una distribución de Linux, y he eliminado los archivos binarios, etc. El sistema no usará GCC ni herramientas de desarrollo, ya que será un quiosco de Chrome, por lo que sería de gran ayuda si pudiera eliminar el sistema. ...
Me preguntaba, ¿hay alguna manera de que pueda eliminar todos los archivos del sistema no utilizados (como binarios, etc.) observando qué archivos / bibliotecas se usan durante el tiempo de ejecución? Quizás se prefiera otro método, pero ¿hay alguna manera de lograr algo como esto?
linux
disk-usage
small-distribution
strip
kiosk
Licuadora
fuente
fuente
Respuestas:
Hay programas como Bootchart que se pueden usar para mostrar qué programas ejecutó durante el inicio; probablemente pueda continuar después del inicio para ver qué se ha invocado durante una sesión.
Una mejor solución puede ser usar herramientas de remasterización.
Hay herramientas de remasterización para Fedora , Ubuntu y otros; puede usarlos para personalizar una distribución.
Es posible que desee ver Tiny Core Linux . Hay un chico trabajando en un guión remaster para eso también.
fuente
Entre otras cosas, desea eliminar todo lo que no necesita. Asegúrese de que el sistema de archivos
atime
esté totalmente habilitado; puedes configurar esto/etc/fstab
. El valor predeterminado actual esrelatime
pero desea usar soloatime
. Cada vez que se accede a un archivo, la marca de tiempo se actualizará. Luego, utilice algunos días para ver qué archivos nunca han actualizado su atime. Haría todo esto en una VM, y con mucho cuidado, porque imagino que hay algunos archivos que se leen cuando el sistema está en modo de solo lectura. Nota: configúrelonoatime
una vez que esté listo para la producción; de lo contrario, hará una escritura cada vez que lea; Esto es ineficiente.Aunque para ser honesto, miraría Damn Small Linux ; ¿realmente necesitas ser más pequeño que eso? Cree el suyo en función de su distribución y simplemente elimine el administrador de ventanas y algunos programas adicionales. Deje todas las herramientas de línea de comandos, de esa manera si alguna vez necesita reparar o recargar, tiene el shell.
fuente
asumiendo que está utilizando Debian o sus derivados
Después de algunos días de uso (pesado), ejecute
popularity-contest
. Mostrará los paquetes no utilizados más antiguos en la parte inferior. Desinstala esos, pero vigilando si hay o no cosas dependiendo de ellos instalados.Aquí hay un fragmento de la salida:
Las columnas significan atime , ctime , nombre del paquete y archivo al que se accede .
fuente
Use activamente su sistema por un tiempo con los tiempos de acceso a archivos habilitados. Vea qué archivos nunca tienen su tiempo de acceso modificado. Estos son candidatos para la eliminación (pero asegúrese de que no haya una razón para conservarlos, por ejemplo, porque son controladores de hardware para hardware que no tiene, o son necesarios al principio del proceso de arranque cuando la partición raíz aún está montado solo lectura).
Como tendrá pocas aplicaciones grandes, verifique qué bibliotecas utiliza un solo ejecutable. Considere vincularlos estáticamente.
fuente
¿De dónde exactamente estás empezando? ¿Estás quitando una distribución existente? ¿Hay alguna razón por la que deba comenzar con alguna distribución?
Es posible que desee considerar la construcción de un sistema integrado desde cero y cargar solo lo que sabe que necesita.
fuente