[Olpc-uruguay] Consulta sobre Rambo

Pablo Moleri pmoleri en gmail.com
Mar Mar 9 14:00:23 EST 2010


Ojo, 644 se traduce como:
          6      4     4
110  100  100
rwx  rwx  rwx     (read, write, execute)
prop grp  otros
O sea que propietario es el único con acceso de escritura.

Tengo entendido que en rainbow cada ejecución se hace con un usuario
distinto, por lo tanto en la segunda ejecución ya no es el propietario y por
eso no lo puede modificar. Sin embargo rainbow asegura que para una misma
aplicación el grupo es el mismo, por lo tanto agregando permisos de
escritura al grupo estarías hecho:

os.chmod(os.path.join(directorio_base, 'Radios.db'), 664)

Espero que esto te sea de ayuda.

Saludos,
Pablo

2010/3/9 Flavio Danesse <fdanesse en gmail.com>

> No, hay un error en lo que dije en el mail anterior, no es correcto, estoy
> haciendo pruebas ya les cuento que saco en claro.
>
>
>
>
> El 9 de marzo de 2010 16:05, Flavio Danesse <fdanesse en gmail.com> escribió:
>
> Hola gabriel y pablo, gracias por responder y tan rapido.
>>
>> El tema es así:
>>
>> La idea del código es que la primera vez que se ejecute la actividad,
>> busque la base de datos y si no la encuentra la crea ya que las radios están
>> definidas en el código. Las siguientes veces que se ejecute la actividad la
>> base sólo se carga desde ese directorio.
>>
>> La primera vez que ejecuto el código, se crea la base y puedo agregar
>> elementos en ella, pero la proxima vez que ejecute el codigo, accedo a la
>> base pero si intento escribir en ella me dice que es solo lectura.
>>
>> Para probar el tema de los permisos intenté:
>> os.chmod(os.path.join(directorio_base, 'Radios.db'), 644)
>> No funcionó (probé diferentes permisos, incluso todos)
>>
>> No es lo mismo:
>> os.path.join(os.environ['SUGAR_ACTIVITY_ROOT'],'data/')
>> que:
>>
>> os.path.join(activity.get_activity_root(), 'data/')
>>
>> Son diferentes directorios, sin embargo, en la práctica no hay diferencia,
>> pasa lo mismo.
>>
>> Subí el paquete .xo que tengo hasta el momento a:
>> http://sites.google.com/site/sugaractivities/ceibalradio-1-0
>> (para agregar una radio hay que hacer click con boton derecho sobre
>> cualquier radio de las existentes)
>>
>>
>>
>>
>>
>>
>>
>> El 9 de marzo de 2010 11:41, Gabriel Eirea <geirea en gmail.com> escribió:
>>
>> Flavio:
>>>
>>> No sé si tendrá algo que ver, pero para acceder al directorio donde
>>> uno puede escribir en vez de usar activity.get_activity_root() yo uso
>>> la variable de entorno SUGAR_ACTIVITY_ROOT, así:
>>>
>>> os.path.join(os.environ['SUGAR_ACTIVITY_ROOT'],'data')
>>>
>>> También habría que ver como dice Pablo con qué permisos se crea el
>>> archivo, podés mandar el código de la clase ManejodeBasedeDatos?
>>>
>>> Saludos,
>>>
>>> Gabriel
>>>
>>>
>>>
>>>
>>> El día 8 de marzo de 2010 23:57, Pablo Moleri <pmoleri en gmail.com>
>>> escribió:
>>> > Flavio, no me queda claro si no podés "acceder" o "modificar" la base
>>> de
>>> > datos. En cualquiera de los casos sería bueno que miraras con que
>>> permisos
>>> > queda creado el archivo "Radios.db" (ls -l), es necesario que los
>>> permisos
>>> > del grupo permitan lectura y escritura.
>>> >
>>> > Saludos,
>>> > Pablo
>>> >
>>> > 2010/3/8 Flavio Danesse <fdanesse en gmail.com>
>>> >>
>>> >> Tengo una base de datos que la actividad crea así:
>>> >>
>>> >> # Directorio para crear la base de datos
>>> >> directorio_base = os.path.join(activity.get_activity_root(), 'data/')
>>> >> mi_base = os.path.join(directorio_base + "Radios.db")
>>> >>
>>> >> # Si el directorio no existe, crearlo
>>> >> if not os.path.exists(directorio_base):
>>> >>     os.mkdir(directorio_base)
>>> >>
>>> >> # Si la base de datos no existe, crearla
>>> >> if not os.path.exists(mi_base):
>>> >>     BasedeDatos = ManejodeBasedeDatos(mi_base)
>>> >>     BasedeDatos.CrearBasededatos()
>>> >>     BasedeDatos.Llenar_Base()
>>> >>
>>> >> Luego, en la actividad tengo código que permite agregar datos a la
>>> base y
>>> >> actualizarla, sin embargo solo funciona la primera vez que ejecuto la
>>> >> actividad.
>>> >>
>>> >> Es decir:
>>> >>
>>> >> Instalo la actividad.
>>> >> La ejecuto por primera vez, con lo cual se crea la base.
>>> >> Agrego 1 registro y todo funciona perfecto, los datos se almacenan y
>>> se
>>> >> conservan luego de reiniciar.
>>> >>
>>> >> Sin embargo, en instancias sucesivas de la actividad no puedo
>>> modificar la
>>> >> base de datos.
>>> >>
>>> >> _______________________________________________
>>> >> Olpc-uruguay mailing list
>>> >> Olpc-uruguay en lists.laptop.org
>>> >> http://lists.laptop.org/listinfo/olpc-uruguay
>>> >>
>>> >
>>> >
>>> > _______________________________________________
>>> > Olpc-uruguay mailing list
>>> > Olpc-uruguay en lists.laptop.org
>>> > http://lists.laptop.org/listinfo/olpc-uruguay
>>> >
>>> >
>>> _______________________________________________
>>> Olpc-uruguay mailing list
>>> Olpc-uruguay en lists.laptop.org
>>> http://lists.laptop.org/listinfo/olpc-uruguay
>>>
>>
>>
>
> _______________________________________________
> Olpc-uruguay mailing list
> Olpc-uruguay en lists.laptop.org
> http://lists.laptop.org/listinfo/olpc-uruguay
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://lists.laptop.org/pipermail/olpc-uruguay/attachments/20100309/8647e3a0/attachment.htm 


More information about the Olpc-uruguay mailing list