Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Mensaje iniciado por: GeorgArming en 18 Enero 2012, 16:39 PM

Título: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 18 Enero 2012, 16:39 PM
Queremos que el kernel Linux inicie el intérprete Python. Para eso, tenemos que:

1-Poner el source del intérprete dentro de la carpeta Linux
2-Cambiar el makefile para que se compile correctamente.
3-Cambiar los scripts de arranque para que cuando se cargue el kernel se inicie el intérprete.

Para hacer esto último, supongo que lo que tenemos que editar está en la carpeta "init" de source de Linux. ¿Qué tengo que editar en esta carpeta? El archivo main.c, ¿verdad? ¿Qué tengo que poner para que se inicie el intérprete?

Muchas gracias.
Título: Re: Cómo crear un módulo para Linux (Proyecto PyOS)
Publicado por: Akai en 18 Enero 2012, 16:48 PM
Cita de: GeorgArming en 18 Enero 2012, 16:39 PM
qué debemos hacer para que el intérprete se inicie cuando se haya cargado el kernel?

Haciendo que tus scripts de arranque lancen el intérprete de python, vaya.

No tiene nada que ver con el kernel
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 11:16 AM
nadie sabe?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: fallout20xx en 19 Enero 2012, 13:22 PM
Cita de: Akai en 18 Enero 2012, 16:48 PM
Haciendo que tus scripts de arranque lancen el intérprete de python, vaya.

No tiene nada que ver con el kernel

Parece que no xD

Cita de: GeorgArming en 19 Enero 2012, 11:16 AM
nadie sabe?

a ver, primero de todo... ¿que quieres hacer? por que el kernel es basicamente el fondo del sistema operativo, y nada tiene que ver con el interprete de python.

Explicanos que es, en concreto, lo que quieres hacer, porque puede que te estes haciendote la picha un lio, por lo que puedo sobreentender quieres que un script arranque con el sistema, para eso hay otros metodos, si es que es eso lo que quieres...
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 14:33 PM
Cita de: fallout20xx en 19 Enero 2012, 13:22 PM
Parece que no xD

a ver, primero de todo... ¿que quieres hacer? por que el kernel es basicamente el fondo del sistema operativo, y nada tiene que ver con el interprete de python.

Explicanos que es, en concreto, lo que quieres hacer, porque puede que te estes haciendote la picha un lio, por lo que puedo sobreentender quieres que un script arranque con el sistema, para eso hay otros metodos, si es que es eso lo que quieres...

quiero implementar el intérprete python sobre el kernel linux y que el intérprete python se inicie cuando cargue el kernel.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 14:36 PM
entonces, supongo que en la carpeta "init" debo cambiar el archivo main.c, de manera que en algún lugar ponga que se inicie el intérprete.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: fallout20xx en 19 Enero 2012, 16:03 PM
Kernel = paquete mega gigante de drivers y rutinas basicas para el funcionamiento de SO

asi que... ¿que pinta el interprete de python ahi?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 19 Enero 2012, 20:01 PM
Lo que el hombre quiere es simplemente saber como se hace, o con que metodos se puede iniciar el interprete de python para poder ejecutar sus propias rutinas con scripts de python. Por cierto Arming: no te desanimes, suerte con tu proyecto y si necesitas de mi ayuda solo pide ;D
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 20:35 PM
Cita de: fallout20xx en 19 Enero 2012, 16:03 PM
Kernel = paquete mega gigante de drivers y rutinas basicas para el funcionamiento de SO

asi que... ¿que pinta el interprete de python ahi?

ok, ahora me explico mejor para que me podáis ayudar.

Cita de: armizh en 19 Enero 2012, 20:01 PM
Lo que el hombre quiere es simplemente saber como se hace, o con que metodos se puede iniciar el interprete de python para poder ejecutar sus propias rutinas con scripts de python. Por cierto Arming: no te desanimes, suerte con tu proyecto y si necesitas de mi ayuda solo pide ;D

gracias.

Allá va mi explicación: quiero crear un sistema operativo que tenga toda la interfaz y aplicaciones en Python, pero el kernel en C (Linux). Vamos, que sería como Android pero cambiando Java por Python, para que nos entendamos (Ya sé que a parte de Java hay otras cosas, es para poner un ejemplo).

Para eso, tenemos el source del Linux y el source del intérprete Python (también en C). Quiero incluir el intérprete dentro del kernel. Entonces, para que el intérprete se inicie cuando se cargue el kernel creo que tengo cambiar el main.c de la carpeta init. ¿Es así? ¿Cómo lo hago?

Gracias. Espero haberme explicado mejor.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 19 Enero 2012, 21:14 PM
Si no me equivoco el source del interprete tiene un main no? puedes tratar de acoplar el main con el kernel para llamar desde el kernel el main del interprete, se entiende? luego al compilar queda todo junto, tanto kernel como interprete y puedes ejecutar los scripts. Si hay algo en que me equivoque por favor corrijanme, saludos.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 21:19 PM
provaré. y una cosa muy interesante que me has dicho por privado es probar con una versión anterior de Linux, más simple.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 19 Enero 2012, 21:34 PM
mira, en la version 1.0, en el archivo /init/main.c en la funcion 'asmlinkage void start_kernel(void)' linea 351, esta el orden de ejecucion en el inicio del sistema. Puedes probar a llamar al interprete justo despues de entrar al user mode, casi al final de la funcion.
En estos momentos no tengo el codigo del interprete y no puedo descargarlo porque al parecer se cayeron los servidores gringos, o simplemente nuetsro proveedor no esta hinchando los h***** (perdonen, no encontre otra palabra mejor para describir lo que nos hacen las compañias aca en chile) :-(
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 19 Enero 2012, 21:46 PM
perdon por el doble post, pero tambien puedes probar a que crees un segundo fork (ademas del que manda a init) hacia el interprete, o en init hagas el fork hacia el interprete. Creo que la segunda opcion es mas viable. Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 22:12 PM
gracias! voy a probar. una pregunta: si lo hago con Linux 1.0 para simplificar, si algún día el proyecto toma cierta envergadura (soñar es gratis), será muy difícil migrar a la versión Linux más actual?

Gracias.

PD: POR FAVOR, LA COSA ESTÁ DIFÍCIL, ASÍ QUE SE AGRADECERÁ CUALQUIER APORTE
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 22:22 PM
Nueva duda:

¿Qué sentencia, en C, y dentro del kernel de Linux (es decir, teniendo en cuenta las librerías disponibles, me permite iniciar el intérprete?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 19 Enero 2012, 22:38 PM
A tu primera pregunta, yo creo que no sera dificil, siempre y cuando no modifiques directamente el kernel, sera solo buscar el archivo en el que llamar al fork para ejecutar el interprete como un proceso.
A tu segunda pregunta, la funcion es fork(), que es el que se encarga de ejecutar los procesos, en realidad fork es difurcacion, es decir, copia el proceso padre y crea un proceso hijo exacto, luego ese proceso hijo ejecuta cierta instruccion y mete a la memoria el programa. Para mas informacion puedes leerte el famoso libro Sistemas operativos: diseño e implementacion de AST, ahi el explica fork(), waitpid(), malloc(), y otras funciones de los sistemas Unix.
Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 19 Enero 2012, 22:56 PM
Cita de: armizh en 19 Enero 2012, 22:38 PM
A tu primera pregunta, yo creo que no sera dificil, siempre y cuando no modifiques directamente el kernel, sera solo buscar el archivo en el que llamar al fork para ejecutar el interprete como un proceso.
A tu segunda pregunta, la funcion es fork(), que es el que se encarga de ejecutar los procesos, en realidad fork es difurcacion, es decir, copia el proceso padre y crea un proceso hijo exacto, luego ese proceso hijo ejecuta cierta instruccion y mete a la memoria el programa. Para mas informacion puedes leerte el famoso libro Sistemas operativos: diseño e implementacion de AST, ahi el explica fork(), waitpid(), malloc(), y otras funciones de los sistemas Unix.
Saludos

ok.

lo más curioso es que el libro que dices ya me lo leí, pero no lo recordaba para nada  :o. menuda memoria tengo  ;D
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 20 Enero 2012, 00:20 AM
Cita de: GeorgArming en 19 Enero 2012, 22:56 PM
ok.

lo más curioso es que el libro que dices ya me lo leí, pero no lo recordaba para nada  :o. menuda memoria tengo  ;D
jeje, yo aun recuerdo el esfuerzo mental de la cena de los filosofos, que ya lo recuerdo bastante bien, pero no lo he podido aplicar xd porque aun no he llegado a paginacion y gestion de memoria, espero que logres hacer funcionar ese interprete, que es posiblemente lo mas complicado de todo.
Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: Akai en 20 Enero 2012, 09:22 AM
Sinceramente, la estáis liando parda a un nivel monumental.

Esto no tiene NADA NADA NADA y repito, NADA que ver con el kernel.

NADA que ver con el kernel

Lo único que necesitas hacer es investigar, en la distribución que estés usando como base y que todavia no nos has dicho, de que forma arrancan demonios y demás, y de esa misma forma lanzar tus cosas.

Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 20 Enero 2012, 15:05 PM
creo que me he explicado mal, porque lo que dices en absoluto es lo que quería decir.

a ver, no estoy trabajando a partir de ninguna distribución. estoy trabajando directamente con el kernel linux,  al que quiero implementar el intéprete Python. obviamente entonces lo que salga de ahí ya no será sólo kernel.

¿Qué es lo que no se entiende o se entiende mal?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 20 Enero 2012, 15:34 PM
OJO, no quiero sonar arrogante. lo má  probable es que me esté equivocando, pero creo que simplente me he explicado mal.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: Akai en 20 Enero 2012, 17:08 PM
No se entiende el hecho de que planteáis cosas que no tienen sentido dada la arquitectura y funcionamiento de Linux (kernel) y el userland de encima. Es obvio que no lo entendéis.

El kernel se encarga de interactuar con el hardware, punto.

El kernel proporciona un API para que los desarrolladores puedan interactuar con él. De aqui surgen cosas como udev, Xorg, init, bash, etc etc etc

Dados tus conocimientos, creo que te será más aconsejable empezar con una distribución, usarla, aprender de ella, y ya luego, plantearte proyectos como una distro completamente en python.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 20 Enero 2012, 17:27 PM
Cita de: Akai en 20 Enero 2012, 17:08 PM
No se entiende el hecho de que planteáis cosas que no tienen sentido dada la arquitectura y funcionamiento de Linux (kernel) y el userland de encima. Es obvio que no lo entendéis.

El kernel se encarga de interactuar con el hardware, punto.

El kernel proporciona un API para que los desarrolladores puedan interactuar con él. De aqui surgen cosas como udev, Xorg, init, bash, etc etc etc

Dados tus conocimientos, creo que te será más aconsejable empezar con una distribución, usarla, aprender de ella, y ya luego, plantearte proyectos como una distro completamente en python.

gracias por la aclaración, pero sigo sin entender porque no puedo implementar el intérprete encima del kernel Linux.

Es decir, se carga el kernel, el "control" está en el init, en los scripts de arranque. Entonces en unas determinadas líneas de la función main.c se indica que se debe cargar el intérprete e iniciarlo.

Hasta lo poco que sé, no lo veo tan difícil. Por qué no puedo implementar el intérprete?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: Akai en 20 Enero 2012, 17:52 PM
No puedes implementar el intérprete por encima del kernel porque eso ya está hecho.

Si lo que quieres es lanzar programas escritos en python, simplemente lanzalos como todo el mundo.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: fallout20xx en 20 Enero 2012, 18:00 PM
Cita de: Akai en 20 Enero 2012, 17:08 PM
No se entiende el hecho de que planteáis cosas que no tienen sentido dada la arquitectura y funcionamiento de Linux (kernel) y el userland de encima. Es obvio que no lo entendéis.

El kernel se encarga de interactuar con el hardware, punto.

El kernel proporciona un API para que los desarrolladores puedan interactuar con él. De aqui surgen cosas como udev, Xorg, init, bash, etc etc etc

Dados tus conocimientos, creo que te será más aconsejable empezar con una distribución, usarla, aprender de ella, y ya luego, plantearte proyectos como una distro completamente en python.

Tiene razon... asi que no os riais insensatos!!! xD
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 20 Enero 2012, 19:27 PM
Cita de: Akai en 20 Enero 2012, 17:52 PM
No puedes implementar el intérprete por encima del kernel porque eso ya está hecho.

Si lo que quieres es lanzar programas escritos en python, simplemente lanzalos como todo el mundo.
Creo que tu no entiendes... sabes porque se pueden lanzar los programas en python? porque esta instalado el interprete. Pero el hombre no tiene eso, lo unico que tiene es un kernel. El kernel no posee nada, es simplemente un kernel. No tiene interprete, no tiene bash, no tiene nada. Ningun programa.
Lo que el quiere es crear una distribucion basada en python, los programas hechos en python y para eso necesita implementar el interprete en el nucleo.
Saludos.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 20 Enero 2012, 21:28 PM
Cita de: armizh en 20 Enero 2012, 19:27 PM
Creo que tu no entiendes... sabes porque se pueden lanzar los programas en python? porque esta instalado el interprete. Pero el hombre no tiene eso, lo unico que tiene es un kernel. El kernel no posee nada, es simplemente un kernel. No tiene interprete, no tiene bash, no tiene nada. Ningun programa.
Lo que el quiere es crear una distribucion basada en python, los programas hechos en python y para eso necesita implementar el interprete en el nucleo.
Saludos.

Exactamente.

Cita de: Akai en 20 Enero 2012, 17:52 PM
No puedes implementar el intérprete por encima del kernel porque eso ya está hecho.

Si lo que quieres es lanzar programas escritos en python, simplemente lanzalos como todo el mundo.

Pero para lanzaros "como todo el mundo" necesito el intérprete, y "sólo" tengo el kernel.

Resumiendo (a ver si me explico un poco mejor): quiero hacer una distribución Linux que tenga el kernel en C (obviamente si es Linux) y toda la interfaz y aplicaciones en Python.

Para eso, quiero implementar el intérprete Python encima del kernel Linux, y que cuando se cargue el kernel se cargue e inicie el intérprete.

Hardware=>Kernel=>Intérprete=>GUI: escritorio y aplicaciones.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: Akai en 20 Enero 2012, 22:29 PM
El problema con tu esquema, es que el intérprete de python no puede funcionar únicamente sobre el kernel, poruqe entre otras cosas, tiene dependencias de aplicaciones del userland.

Entiendo que quieras hacer una distro 100% en python, pero plantéate si no sería mejor una distro donde las aplicaciones que trabajan por encima del userland sean en python.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 20 Enero 2012, 22:36 PM
Cita de: Akai en 20 Enero 2012, 22:29 PM
El problema con tu esquema, es que el intérprete de python no puede funcionar únicamente sobre el kernel, poruqe entre otras cosas, tiene dependencias de aplicaciones del userland.

Entiendo que quieras hacer una distro 100% en python, pero plantéate si no sería mejor una distro donde las aplicaciones que trabajan por encima del userland sean en python.

entonces, de alguna manera, tendría que acoplar las aplicaciones de userland encima del kernel? vaya...
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 20 Enero 2012, 23:43 PM
por cierto, os pido la opinión con algo relacionado. de la misma manera que seguramente voy a trabajar con Linux 1.0 para facilitar el trabajo, tambiñen estoy pensando en utilizar una versión de intérprete Python más antiguo. Estoy en lo correcto?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 20 Enero 2012, 23:45 PM
Cita de: GeorgArming en 20 Enero 2012, 22:36 PM
entonces, de alguna manera, tendría que acoplar las aplicaciones de userland encima del kernel? vaya...
Esto se llama respuesta facil a un problema facil que lo hacen ver dificil.
Arming: sobre tu pregunta... tal vez esa sea la forma mas facil de hacer las cosas.
Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 20 Enero 2012, 23:52 PM
O simplemente haz esto: tienes el kernel, instalas bash, instalas el interprete con todas las dependencias y luego configuras bash para que ejecute un script al inicio, y ese script tendra la llamada al interprete. El script de python tiene que tener un bucle de no hacer nada para que evite cerrar el interprete y de ese punto comienzas tu aplicacion en python.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: Akai en 20 Enero 2012, 23:57 PM
No, te complicará más la vida. Sobretodo la versión antigua de Linux debido a drivers
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 21 Enero 2012, 00:13 AM
Cita de: Akai en 20 Enero 2012, 23:57 PM
No, te complicará más la vida. Sobretodo la versión antigua de Linux debido a drivers

OK, pues con la moderna entonces. pero sabes cómo puedo hacer lo que quiero hacer? es que ahora sí que estoy un poco perdido, la verdad.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 21 Enero 2012, 01:22 AM
Cita de: Akai en 20 Enero 2012, 23:57 PM
No, te complicará más la vida. Sobretodo la versión antigua de Linux debido a drivers
Drivers? Linux siempre ha sido compatible con las i386 y con los drivers minimos para funcionar.
Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: robanyh en 21 Enero 2012, 04:33 AM
Hola soy nuevo por aqui y me gustaria darte alguna informacion que quizas te vale.
montes tu sistema basado en phyton como lo montes, vas a necesitar un sistema de ficheros y una forma de gestionar el arranque de tu maquina, como ya sabreis muchos, este arranque antes se hacia mediante SystemV usando init e inittab, ahora, yo al menos, uso upstart (concepto de tareas eventos y trabajo en paralelo).
Aqui va una explicacion de como crear una tarea para que se ejecute.

necesitamos ser root y dos ficheros.
creamos por ejemplo el fichero start.conf con el contneido:

start on (local-filesystems and runlevel [0123456])

task

exec /etc/init.d/start.sh

y el fichero start.sh con el contenido:

#!/bin/sh -e

echo "eres un poco furcia" > /home/roberto/furcia


ahora vamos a cojer nuestro .sh y vamos a dare los permisos que tienen la mayoria de ficheros dentro de init,d , asi pues hacemos chmod 755 /home/roberto/start.sh

ahora con cp movemos el start.sh a /etc/init.d
y el fichero start.conf a /etc/init

reiniciamos y vamos a la carpeta /homre/roberto, y aqui tenemos el fichero creado.

Sabiendo esto, puedes hacer el script todo lo complicado que quiers, puedes definir que cargue al producirse ciertos eventos, yo por ejemplo le he puesto local-filesystems ya que como tengo que crear un fichero en mi carpeta personal he de asegurarme de que elsistema de ficheros esta mpntado, espero haber sido de ayuda, un saludo

pd: sabiendo esto ya puedes modificar los ficheros de /etc/init , puedes modificar el .conf que quieras para que ejecute lo que creas conveniente
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 21 Enero 2012, 04:46 AM
Cita de: robanyh en 21 Enero 2012, 04:33 AM
Hola soy nuevo por aqui y me gustaria darte alguna informacion que quizas te vale.
montes tu sistema basado en phyton como lo montes, vas a necesitar un sistema de ficheros y una forma de gestionar el arranque de tu maquina, como ya sabreis muchos, este arranque antes se hacia mediante SystemV usando init e inittab, ahora, yo al menos, uso upstart (concepto de tareas eventos y trabajo en paralelo).
Aqui va una explicacion de como crear una tarea para que se ejecute.

necesitamos ser root y dos ficheros.
creamos por ejemplo el fichero start.conf con el contneido:

start on (local-filesystems and runlevel [0123456])

task

exec /etc/init.d/start.sh

y el fichero start.sh con el contenido:

#!/bin/sh -e

echo "eres un poco furcia" > /home/roberto/furcia


ahora vamos a cojer nuestro .sh y vamos a dare los permisos que tienen la mayoria de ficheros dentro de init,d , asi pues hacemos chmod 755 /home/roberto/start.sh

ahora con cp movemos el start.sh a /etc/init.d
y el fichero start.conf a /etc/init

reiniciamos y vamos a la carpeta /homre/roberto, y aqui tenemos el fichero creado.

Sabiendo esto, puedes hacer el script todo lo complicado que quiers, puedes definir que cargue al producirse ciertos eventos, yo por ejemplo le he puesto local-filesystems ya que como tengo que crear un fichero en mi carpeta personal he de asegurarme de que elsistema de ficheros esta mpntado, espero haber sido de ayuda, un saludo

Hombre! que porfin Arming tiene la respuesta que tanto esperaba, solo una objecion a lo que dices... pues el filesystem esta montado por defecto... solo eso
[off-topic]
por cierto: ya que eres nuevo... bienvenido al foro! yo tambien soy mas o menos nuevo pero te juro que no me despego ni un solo dia xd
[/off-topic]
Asique arming: manos a la obra!
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: robanyh en 21 Enero 2012, 04:48 AM
arming?
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: fallout20xx en 21 Enero 2012, 09:38 AM
Cita de: robanyh en 21 Enero 2012, 04:48 AM
arming?
La droga... acaba afectando.
bueno, todo muy interesante... ¿pero exactamente que vas a montar sobre el kernel?
¿una terminal? ¿con python? donde reside la ventaja, por que para hacer un entorno grafico... fuuuuuua o coges algo de lo que ya esta hecho o estas muerto tio antes o despues iras a caer a un sistema basado en gnome... es asi...
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: robanyh en 21 Enero 2012, 12:29 PM
por lo que he leido en el tema lo que pretende nuestro amigo es construir una estructura de sistema operativo con kernel linux (en C) y "alrededor" construir un sistema construido y gestionado por el interprete de phyton.

No entiendo bien por que ya que python esta basado en C, eso si, es más facil que funcionen las cosas con python que con C, es un lenguaje muy "agradecido", lenguaje de script a lo php.

El entorno grafico... yo me animaria a usar xface, es muy liviano. Un saludo
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 21 Enero 2012, 12:42 PM
Cita de: robanyh en 21 Enero 2012, 04:33 AM
Hola soy nuevo por aqui y me gustaria darte alguna informacion que quizas te vale.
montes tu sistema basado en phyton como lo montes, vas a necesitar un sistema de ficheros y una forma de gestionar el arranque de tu maquina, como ya sabreis muchos, este arranque antes se hacia mediante SystemV usando init e inittab, ahora, yo al menos, uso upstart (concepto de tareas eventos y trabajo en paralelo).
Aqui va una explicacion de como crear una tarea para que se ejecute.

necesitamos ser root y dos ficheros.
creamos por ejemplo el fichero start.conf con el contneido:

start on (local-filesystems and runlevel [0123456])

task

exec /etc/init.d/start.sh

y el fichero start.sh con el contenido:

#!/bin/sh -e

echo "eres un poco furcia" > /home/roberto/furcia


ahora vamos a cojer nuestro .sh y vamos a dare los permisos que tienen la mayoria de ficheros dentro de init,d , asi pues hacemos chmod 755 /home/roberto/start.sh

ahora con cp movemos el start.sh a /etc/init.d
y el fichero start.conf a /etc/init

reiniciamos y vamos a la carpeta /homre/roberto, y aqui tenemos el fichero creado.

Sabiendo esto, puedes hacer el script todo lo complicado que quiers, puedes definir que cargue al producirse ciertos eventos, yo por ejemplo le he puesto local-filesystems ya que como tengo que crear un fichero en mi carpeta personal he de asegurarme de que elsistema de ficheros esta mpntado, espero haber sido de ayuda, un saludo

pd: sabiendo esto ya puedes modificar los ficheros de /etc/init , puedes modificar el .conf que quieras para que ejecute lo que creas conveniente


Muchas gracias, gran aporte. Pero yo soy o hablas como si Linux ya estuviera compilado e instalado?

Cita de: fallout20xx en 21 Enero 2012, 09:38 AM
La droga... acaba afectando.
bueno, todo muy interesante... ¿pero exactamente que vas a montar sobre el kernel?
¿una terminal? ¿con python? donde reside la ventaja, por que para hacer un entorno grafico... fuuuuuua o coges algo de lo que ya esta hecho o estas muerto tio antes o despues iras a caer a un sistema basado en gnome... es asi...

El objetivo de la versión 1.0 de PyOS es eso, una terminal que funcione con Python. En la versión 2.0, pues montaré interfaz gráfica. No veo por qué no. Tampoco lo voy a hacer "a pelo", usaré una librería.

Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 21 Enero 2012, 13:25 PM
otra opción sería coger una distribución sin interfaz gráfica, quitarle casi todo y dejarle sólo Python.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 21 Enero 2012, 16:23 PM
Cita de: GeorgArming en 21 Enero 2012, 13:25 PM
otra opción sería coger una distribución sin interfaz gráfica, quitarle casi todo y dejarle sólo Python.
Hey hombre pues busca sobre Linux From Scratch, ahi te enseñan a hacer tu propia distro desde cero con simplemente un.... kernel.... pues bueee se me habia olvidado esa pagina xd
http://www.linuxfromscratch.org/ (http://www.linuxfromscratch.org/)

Cita de: GeorgArming en 21 Enero 2012, 12:42 PM
Muchas gracias, gran aporte. Pero yo soy o hablas como si Linux ya estuviera compilado e instalado?
El hombre habla de un kernel compilado e instalado, pero tales archivos existen en el codigo fuente, por lo que igual vale.
Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: robanyh en 21 Enero 2012, 17:03 PM
Cita de: GeorgArming en 21 Enero 2012, 12:42 PM
Muchas gracias, gran aporte. Pero yo soy o hablas como si Linux ya estuviera compilado e instalado?

El objetivo de la versión 1.0 de PyOS es eso, una terminal que funcione con Python. En la versión 2.0, pues montaré interfaz gráfica. No veo por qué no. Tampoco lo voy a hacer "a pelo", usaré una librería.



Si claro, yo esto lo he hecho desde mi maravilloso debian xD, migrué de systemV a upstart. La cosa es que en vuestro sistema implementeis esta gestion de arranque, que evoluciona inittab e init introduciendo nuevos conceptos, hay informacion por ahi, no sé si se pueden poner links... pero googleando un poco...Ademas creo que  incluso hay un instalador.

Otro apunte es que al igual que se pueden inciar tareas al arranque se puede configurar todo lo relacionado con el proceso de carga, login shells, prioridades, con lo cual podrias poner a correr el interprete de phyton. En tu shell script haces la llamada a python con los parametros (ficheros, por ejemplo: python /etc/init/py.iniciarX  ). Es 100% configurable. Si quieres que te des mas info dimelo, no sé hasta que punto conoces o desconoces del tema. un saludo
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: GeorgArming en 21 Enero 2012, 20:05 PM
pero una cosa, si el kernel ya está instalado, y lo modifico para implementar lo de python, cómo se distribuye eso? porque no habrá una imagen iso que lo tenga todo cambiado.
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 21 Enero 2012, 20:34 PM
Cita de: armizh en 21 Enero 2012, 16:23 PM
Hey hombre pues busca sobre Linux From Scratch, ahi te enseñan a hacer tu propia distro desde cero con simplemente un.... kernel.... pues bueee se me habia olvidado esa pagina xd
http://www.linuxfromscratch.org/ (http://www.linuxfromscratch.org/)
El hombre habla de un kernel compilado e instalado, pero tales archivos existen en el codigo fuente, por lo que igual vale.
Saludos
En esa pagina encuentras todo para montar y distribuir tu distro desde cero. Saludos
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: robanyh en 21 Enero 2012, 21:27 PM
Cita de: GeorgArming en 21 Enero 2012, 20:05 PM
pero una cosa, si el kernel ya está instalado, y lo modifico para implementar lo de python, cómo se distribuye eso? porque no habrá una imagen iso que lo tenga todo cambiado.

Si quieres distribuir el kernel modificado las instrucciones estan arriba.
Si lo que te refieres es al proceso de instalacion,debes inclluir los ficheros y meterlos en /etc/init.d y en /etc/init respectivamente, al igual qe se instalan las que vienen por defecto en una distribucion cualquiera.
haz un: ls -l /etc/init.d y  ls -l /etc/init    eso ficheros los introducen los que crean las distros. Yo no tocaria el kernel, perderas estabilidad.

El kernel crea el proceso init que se encarga de iniciar, ahi es donde tienes qe empezar a meter mano

Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: armizh en 21 Enero 2012, 21:35 PM
Cita de: robanyh en 21 Enero 2012, 21:27 PM
Si quieres distribuir el kernel modificado las instrucciones estan arriba.
Si lo que te refieres es al proceso de instalacion,debes inclluir los ficheros y meterlos en /etc/init.d y en /etc/init respectivamente, al igual qe se instalan las que vienen por defecto en una distribucion cualquiera.
haz un: ls -l /etc/init.d y  ls -l /etc/init    eso ficheros los introducen los que crean las distros. Yo no tocaria el kernel, perderas estabilidad.

El kernel crea el proceso init que se encarga de iniciar, ahi es donde tienes qe empezar a meter mano


Generalmente el kernel compilado no se toca, el hombre va a compilar un kernel modificado... o lo que puede hacer es usar el kernel de su distro como base, le agrega bash y el interprete y desde ahi comienza con su terminal
Título: Re: Cómo cambiar scripts de arranque Linux (Proyecto PyOS)?
Publicado por: robanyh en 21 Enero 2012, 22:09 PM
Ya es he comentado como lo haria yo. kernel por defecto y aprovechar el upstart para arrancar desde alli el interprete cuando se inicie el OS.Si quereis seguir tirando por ahi por aqui estaré ;)