Deprecated: Function automatic_feed_links is deprecated since version 3.0.0! Use add_theme_support( 'automatic-feed-links' ) instead. in /www/htdocs/wordpress/wp-includes/functions.php on line 6121
Opensource « Blog personal de Damià

Archive for the ‘Opensource’ Category

Lego Wedo en Debian con scratch

Sunday, September 7th, 2014

Recientemente le he comprado a mi hijo el juego Lego Wedo, se compone de diversas piezas de Lego technic y un Hub USB al que le puedes conectar un motor y dos sensores, uno de distancia y otro de inclinación. Todo funciona con el software de Lego de manera nativa en Windows y Osx pero no con Linux. El software incluido proporcionado incluye un herramienta gráfica educativa basada en scratch.

lego wedo debian

Scratch es una herramienta de programación educativa diseñada por el MIT, puedes encontras mas info de ella en el website de scratch.

El software que proporciona Lego es una versión simplificada y sencilla de scratch, tiene menos opciones, botones mas grandes, y sonidos que que encajan con los diseños propuestos en las instrucciones. El software no es gratuito, cuesta 85€ y se vende a parte de la caja de iniciación (!??). Por suerte es posible utilizar el software original scratch del MIT con Lego Wedo y Linux.
Hay dos versiones de scratch, la 2.0 es online basada en web y que no funciona con Lego y Linux, sin embargo la versión antigua 1.4 funciona con Lego y viene incluida en Debian Wheezy.

Solo hace falta instalar el paquete con:

apt-get install scratch squeak-plugins-scratch

Ahora puede conectar el Hub de Lego al puerto USB, y compobar si es detectado:

[31412.408152] usb 3-3: new low-speed USB device number 2 using ohci_hcd
[31412.575322] usb 3-3: New USB device found, idVendor=0694, idProduct=0003
[31412.575333] usb 3-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[31412.575339] usb 3-3: Product: LEGO USB Hub V1.00
[31412.895290] generic-usb 0003:0694:0003.0001: hiddev0,hidraw0: USB HID v1.10 Device [LEGO USB Hub V1.00] on usb-0000:00:12.0-3/input0
[31412.895346] usbcore: registered new interface driver usbhid
[31412.895350] usbhid: USB HID core driver

Vemos que no funciona, por lo que hay que añadir un regla en el udev, para hacerlo hay que crear este fichero:

/etc/udev/rules.d/99-wedo.rules con este contenido
ATTRS{idVendor}=="0694", ATTRS{idProduct}=="0003", SUBSYSTEMS=="usb", ACTION=="add", MODE="0666", GROUP="plugdev"

Reiniciamos udev con
/etc/init.d/udev restart

Ahora todo esta listo, iniciamos scracth desde Aplicaciones -> Educación -> Scracth

Mostramos las opciones de Lego Wedo que estaban ocultas desde menu Editar

lego wedo debian

Ahí encontraremos las nuevas opciones del motor

lego wedo debian

Y en la seccion de sensores encontramos los sensores de Lego Wedo de inclinación y distancia.

lego wedo debian

Para esperar hasta que uno de los sensores detecte uns condición, podemos usar esta estructura, una condición de espera, un operador y una caja de sensor como esta:

lego wedo debian

Esto esto, ya esta Lego Wedo funcionando con scratch. ¡A disfrutar!

Netgear Stora con Linux

Sunday, February 21st, 2010

En mi reciente cumpleaños mi querida esposa me ha regalado una pequeña NAS domestica, una Netgear Stora, el aparato en si es muy competitivo en cuanto a precio, y en cuanto a hardware está bastante bien, tiene una tarjeta Gigabit, dos bahías para discos SATA para hacer RAID1, y un conector USB externo.

netgear stora hacked with linux

En cuanto al software que viene de serie, podemos decir varias cosas de él, tiene limitaciones arbitrarias, tiene cosas muy potentes y otras que acojonan en cuanto a perdida de control del aparato.

Las limitaciones arbitrarias que tiene son entre muchas otras el limitar el numero de usuarios, el no poder mas que configurar el RAID1, si tienes dos discos obligatoriamente los tienes que poner en mirror no puedes configurarlos como dos discos, además algunas funciones se pueden activar , mediante ¡¡El pago de una subscripción!! Tampoco tiene algunos servicios que por su sencillez y disponibilidad me parecen arbitraria su ausencia, como puede ser un servicio de rsync o nfs.

El aparato es capaz de servir por Samba (servidor de fichero Windows) ficheros en la red. Además de ello también los sirve por web, desde la misma red local y ¡desde Internet!. Desde cualquier punto del mundo puedes acceder a tu cabina de disco, ver tus fotos, ficheros, videos, el aparato ya se las apaña para que junto con un portal externo abrir los puertos necesarios en tu router (con Upnp) para permitir el acceso. Algunas de estas funciones solo funcionan ademas si pagas una subscripción. La web de acceso, te permite ver álbumes de fotos, oir tus MP3, todo de una manera muy sencilla para usuarios finales, no dudo que para usuarios no expertos esta muy conseguido.

El problema viene en que para realizar esas funciones, incluso para acceder como administrador a tu propia cabina tienes que hacerlo a través del propio portal de Netgear, con lo que necesitas de acceso a Internet (y que funcionen los servidores de Netgear) para administrar la cabina, una vez configurada para servir ficheros no necesita Internet pero si quieres administrar necesitas Internet ¡Esto es inaceptable! ¿Que garantiza que Netgear no tenga problemas de disponibilidad? ¿Y si los problemas de conectividad los tienes tu? ¿Que pasa si tienen un problema de seguridad? ¿Pueden acceder a mis ficheros?

En fin, con todo lo comentado, me encontré con la disyuntiva, de devolver o no devolver….. pero claro y si….. ¿Y si a este hardware le pudiéramos meter un Linux normal en el que le pudieramos instalar todas la funcionalidades que quisiéramos, “menos bonitas” pero con pleno control? Esto es lo que se ha hecho con numerosos aparatos de los que ya dispongo como el linksys, el siemens gigaset, etc….

Dado que el aparato es de reciente aparición, aun no existen firmwares o sistemas alternativos completos, al comunidad desarrolladora (hacker en el buen termino), aun no ha tenido tiempo, pero ya ha hecho suficiente avances como para saber que si que van a poder hacerlo, así pues no la voy a devolver y espero en breve poder empezar a instalar todo lo que quiera, trataré además en ver si se le puede meter un Debian 🙂

Si estaís interesados en los progresos para liberar completamente el aparato, visitar la web http://hardwarehackersunite.com/ donde activamente está trabajanod para liberarla.

Como muestra algunos volcados del aparato:

Podemos ver un dmesg

# dmesg
Linux version 2.6.22.18-Netgear (tgk@fc10-64bit) (gcc version 4.2.1) #4 Thu Sep 3 13:29:25 EDT 2009
CPU: ARM926EJ-S [56251311] revision 1 (ARMv5TE), cr=00053977
Machine: Feroceon-KW
Using UBoot passing parameters structure
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 32768
DMA zone: 256 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 32512 pages, LIFO batch:7
Normal zone: 0 pages used for memmap
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists. Total pages: 32512
Kernel command line: console=ttyS0,115200 ubi.mtd=2,2048 root=ubi0:rootfs rootfstype=ubifs init=/linuxrc
PID hash table entries: 512 (order: 9, 2048 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 64MB 64MB 0MB 0MB = 128MB total
Memory: 125312KB available (4204K code, 272K data, 112K init)
Calibrating delay loop... 992.87 BogoMIPS (lpj=4964352)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16

CPU Interface
-------------
SDRAM_CS0 ....base 00000000, size 64MB
SDRAM_CS1 ....base 04000000, size 64MB
SDRAM_CS2 ....disable
SDRAM_CS3 ....disable
PEX0_MEM ....base e8000000, size 128MB
PEX0_IO ....base f2000000, size 1MB
INTER_REGS ....base f1000000, size 1MB
NFLASH_CS ....base fa000000, size 2MB
SPI_CS ....base f4000000, size 16MB
BOOT_ROM_CS ....no such
DEV_BOOTCS ....no such
CRYPT_ENG ....base f0000000, size 2MB

Marvell Development Board (LSP Version KW_LSP_4.2.7_patch21)-- RD-88F6281A Soc: 88F6281 A0 LE

Detected Tclk 200000000 and SysClk 333333333
MV Buttons Device Load
Marvell USB EHCI Host controller #0: c05d4600
PEX0 interface detected no Link.
PCI: bus0: Fast back to back transfers enabled
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
Time: kw_clocksource clocksource has been installed.
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
RTC has been updated!!!
RTC registered
Use the XOR engines (acceleration) for enhancing the following functions:
o RAID 5 Xor calculation
o kernel memcpy
o kenrel memzero
Number of XOR engines to use: 4
cesadev_init(c000c8e4)
mvCesaInit: sessions=640, queue=64, pSram=f0000000
MV Buttons Driver Load
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler anticipatory registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
serial8250.0: ttyS1 at MMIO 0xf1012100 (irq = 34) is a 16550A
loop: module loaded
Loading Marvell Ethernet Driver:
o Cached descriptors in DRAM
o DRAM SW cache-coherency
o Multi RX Queue support - 4 RX queues
o Multi TX Queue support - 2 TX Queues
o TCP segmentation offload enabled
o Receive checksum offload enabled
o Transmit checksum offload enabled
o Network Fast Processing (Routing) supported
o Network Fast Processing (NAT) supported
o Driver ERROR statistics enabled
o Driver INFO statistics enabled
o Proc tool API enabled
o Gateway support enabled
o Using Marvell Header Mode
o L2 IGMP support
o Rx descripors: q0=128 q1=128 q2=128 q3=128
o Tx descripors: q0=532 q1=532
o Loading network interface(s):
o eth0, ifindex = 1, GbE port = 0
o eth1, ifindex = 2, GbE port = 1

mvFpRuleDb (c7fd0000): 1024 entries, 4096 bytes
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation
Integrated Sata device found
scsi0 : Marvell SCSI to SATA adapter
scsi1 : Marvell SCSI to SATA adapter
scsi 0:0:0:0: Direct-Access Seagate ST31000528AS CC38 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 1953525168 512-byte hardware sectors (1000205 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 23 00 10 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, supports DPO and FUA
sd 0:0:0:0: [sda] 1953525168 512-byte hardware sectors (1000205 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 23 00 10 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, supports DPO and FUA
sda: sda1
sd 0:0:0:0: [sda] Attached SCSI disk
sd 0:0:0:0: Attached scsi generic sg0 type 0
NFTL driver: nftlcore.c $Revision: 1.98 $, nftlmount.c $Revision: 1.41 $
NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 166 at 0x014c0000
Bad eraseblock 807 at 0x064e0000
Bad eraseblock 1190 at 0x094c0000
Using static partition definition
Creating 3 MTD partitions on "nand_mtd":
0x00000000-0x00100000 : "u-boot"
0x00100000-0x00700000 : "uImage"
0x00700000-0x10000000 : "root"
UBI: attaching mtd2 to ubi0
UBI: physical eraseblock size: 131072 bytes (128 KiB)
UBI: logical eraseblock size: 126976 bytes
UBI: smallest flash I/O unit: 2048
UBI: sub-page size: 512
UBI: VID header offset: 2048 (aligned 2048)
UBI: data offset: 4096
UBI: attached mtd2 to ubi0
UBI: MTD device name: "root"
UBI: MTD device size: 249 MiB
UBI: number of good PEBs: 1989
UBI: number of bad PEBs: 3
UBI: max. allowed volumes: 128
UBI: wear-leveling threshold: 4096
UBI: number of internal volumes: 1
UBI: number of user volumes: 1
UBI: available PEBs: 0
UBI: total number of reserved PEBs: 1989
UBI: number of PEBs reserved for bad PEB handling: 19
UBI: max/mean erase counter: 1/0
UBI: background thread "ubi_bgt0d" started, PID 295
ehci_marvell ehci_marvell.70059: Marvell Orion EHCI
ehci_marvell ehci_marvell.70059: new USB bus registered, assigned bus number 1
ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver
USB Universal Host Controller Interface driver v3.0
usbcore: registered new interface driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
Linux telephony interface: v1.00
md: linear personality registered for level -1
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
raid6: int32x1 81 MB/s
raid6: int32x2 95 MB/s
raid6: int32x4 102 MB/s
raid6: int32x8 92 MB/s
raid6: using algorithm int32x4 (102 MB/s)
md: raid6 personality registered for level 6
md: raid5 personality registered for level 5
md: raid4 personality registered for level 4
raid5: measuring checksumming speed
arm4regs : 903.600 MB/sec
8regs : 629.200 MB/sec
32regs : 750.000 MB/sec
raid5: using function: arm4regs (903.600 MB/sec)
device-mapper: ioctl: 4.11.0-ioctl (2006-10-12) initialised: dm-devel@redhat.com
dm_crypt using the OCF package.
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.14 (Thu May 31 09:03:25 2007 UTC).
ALSA device list:
#0: Marvell mv88fx_snd ALSA driver
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (1024 buckets, 8192 max)
mvFpNatDb (c7e72000): 1024 entries, 4096 bytes
ip_tables: (C) 2000-2006 Netfilter Core Team
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
NFP (fdb) init 256 entries, 1024 bytes
Bridge firewalling registered
802.1Q VLAN Support v1.8 Ben Greear
All bugs added by David S. Miller
md: Autodetecting RAID arrays.
md: autorun ...
md: considering sda1 ...
md: adding sda1 ...
md: created md0
md: bind
md: running:
raid1: raid set md0 active with 1 out of 2 mirrors
md: ... autorun DONE.
UBIFS: mounted UBI device 0, volume 0, name "rootfs"
UBIFS: file system size: 239857664 bytes (234236 KiB, 228 MiB, 1889 LEBs)
UBIFS: journal size: 9023488 bytes (8812 KiB, 8 MiB, 72 LEBs)
UBIFS: media format: 4 (latest is 4)
UBIFS: default compressor: zlib
UBIFS: reserved for root: 0 bytes (0 KiB)
VFS: Mounted root (ubifs filesystem).
Freeing init memory: 112K
Failed to execute /linuxrc. Attempting defaults...
mvsdmmc: irq =28 start f1090000
mvsdmmc: irq_detect=92
SGI XFS with ACLs, large block numbers, no debug enabled
XFS mounting filesystem md0
Starting XFS recovery on filesystem: md0 (logdev: internal)
Ending XFS recovery on filesystem: md0 (logdev: internal)
eth0: link down
eth0: started
eth0: link up, full duplex, speed 100 Mbps
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky
Adding 511992k swap on /home/.swapfile. Priority:-1 extents:1 across:511992k

Y ver la cpuinfo


# cat /proc/cpuinfo
Processor : ARM926EJ-S rev 1 (v5l)
BogoMIPS : 992.87
Features : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant : 0x2
CPU part : 0x131
CPU revision : 1
Cache type : write-back
Cache clean : cp15 c7 ops
Cache lockdown : format C
Cache format : Harvard
I size : 16384
I assoc : 4
I line length : 32
I sets : 128
D size : 16384
D assoc : 4
D line length : 32
D sets : 128

Hardware : Feroceon-KW
Revision : 0000
Serial : 0000000000000000

El meminfo


# cat meminfo
MemTotal: 125428 kB
MemFree: 2268 kB
Buffers: 0 kB
Cached: 79388 kB
SwapCached: 16 kB
Active: 61464 kB
Inactive: 35612 kB
SwapTotal: 511992 kB
SwapFree: 510876 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 17688 kB
Mapped: 15872 kB
Slab: 20140 kB
SReclaimable: 1244 kB
SUnreclaim: 18896 kB
PageTables: 1004 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
CommitLimit: 574704 kB
Committed_AS: 180544 kB
VmallocTotal: 516096 kB
VmallocUsed: 2036 kB
VmallocChunk: 514052 kB

Happy coding!!

Reproductor multimedia con Linux: emtec n200

Wednesday, July 22nd, 2009

Recientemente he adquirido un reproductor multimedia para ver todo tipo de ficheros en la Television, el cacharro ha sido un Emtec n200, el cacharro es como un disaco duro multimedia, pero sin tener disco duro incorporado, por lo que puede leer discos usb conectados, o lo que es mas interesante montado recursos compartidos de otro ordenador. Pues bien urgando un poco mas resulta que esta montado con Linux y Emtec ha liberado la modificaciones opensource que han realizado MovieCube_SourceCode. Por ahora no se han desarrollado firmware alternativos, pero todo hace pensar que iran apareciendo cosas, mientras tanto le he pasado un nmap al cacharro y me he encontrado con el puerto 80 y el 23 abiertos:

n200


nmap 192.168.1.100

Starting Nmap 4.62 ( http://nmap.org ) at 2009-07-22 17:09 CEST
Interesting ports on 192.168.1.100:
Not shown: 1713 closed ports
PORT STATE SERVICE
23/tcp open telnet
80/tcp open http

Nmap done: 1 IP address (1 host up) scanned in 8.995 seconds

Accediendo por web aparece un cgi que suma de ejemplo, ¡Que cutre! Como sacan eso en el producto definitivo, pero esperen no se vayan todavia, si hacemos un telnet….


telnet 192.168.1.100
Trying 192.168.1.100...
Connected to 192.168.1.100.
Escape character is '^]'.
Venus login: root
warning: cannot change to home directory

BusyBox v1.1.3 (2009.05.11-02:44+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

/ #

Si ponemos root, y no ponemos password, estamos dentro…. y podemos ver un poco las cosas por dentro


# uname -a
Linux Venus 2.6.12.6-VENUS #1 Mon May 11 10:42:33 CST 2009 mips unknown

# ps ax
PID Uid VmSize Stat Command
1 root 364 S init
2 root SWN [ksoftirqd/0]
3 root SW< [events/0] 4 root SW< [khelper] 5 root SW< [kthread] 6 root SW< [kblockd/0] 7 root SW [khubd] 8 root SW [pdflush] 9 root SW [pdflush] 11 root SW< [aio/0] 12 root SW< [cifsoplockd] 13 root SW< [cifsdnotifyd] 10 root SW [kswapd0] 14 root SW [eth0] 15 root SW [mtdblockd] 27 root 368 S init 28 root 368 S init 31 root 368 S init 34 root 368 S init 55 root SW< [sata_eh/0] 60 root 404 S inetd 65 root SW [scsi_eh_0] 66 root SW [scsi_eh_1] 82 root 168 S ./RootApp DvdPlayer 83 root 168 S ./RootApp DvdPlayer 86 root 8764 S < DvdPlayer 87 root 168 S ./RootApp DvdPlayer 94 root 8764 S DvdPlayer [...] 146 root 8764 S DvdPlayer 147 root 8764 S DvdPlayer 148 root 8764 S DvdPlayer 149 root 8764 S DvdPlayer 156 root SW [scsi_eh_2] 157 root SW [usb-storage] 173 root 360 S /sbin/udhcpc -p /var/lock/udhcpc_eth0.pid -t 15 -b -s 1197 root SW [cifsd] 1207 root 8764 S DvdPlayer 1208 root 8764 S DvdPlayer 1211 root 8764 S DvdPlayer 1259 root 8764 S DvdPlayer 1285 root 308 S telnetd 1286 root 488 S -sh 1301 root 352 R ps ax # mount
/dev/root on / type yaffs2 (ro,noatime)
none on /dev type devfs (rw)
none on /proc type proc (rw,nodiratime)
devpts on /dev/pts type devpts (rw)
none on /sys type sysfs (rw)
/dev/mtdblock/2 on /usr/local/etc type yaffs2 (rw,noatime)
none on /tmp type ramfs (rw)
/dev/rd/0 on /mnt/rd type vfat (rw,nodiratime,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1)
//192.168.1.22/OPT2 on /tmp/netb/mnt/My_Shortcuts/SAMPLESERVER:damia/OPT2 type cifs (rw,nodiratime,recovery,unc=\\192.168.1.22\OPT2,username=sample,domain=SAMPLE.NET,rsize=32768,wsize=57344)

# cat /proc/cpuinfo
system type : Realtek Venus
processor : 0
cpu model : MIPS 24K V7.8
BogoMIPS : 269.51
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes
ASEs implemented : mips16
VCED exceptions : not available
VCEI exceptions : not available

# cat /proc/meminfo
MemTotal: 121856 kB
MemFree: 29672 kB
Buffers: 60 kB
Cached: 6800 kB
SwapCached: 0 kB
Active: 10788 kB
Inactive: 1448 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 121856 kB
LowFree: 29672 kB
SwapTotal: 32 kB
SwapFree: 32 kB
Dirty: 0 kB
Writeback: 0 kB
Mapped: 10028 kB
Slab: 4392 kB
CommitLimit: 60960 kB
Committed_AS: 10640 kB
PageTables: 388 kB
VmallocTotal: 1048548 kB
VmallocUsed: 1012 kB
VmallocChunk: 1047176 kB

Mirando el /etc


# ls -l /etc
-rw-r--r-- 1 1010 1013 341 May 11 2009 fstab
lrwxrwxrwx 1 1010 1013 22 Jun 4 2009 group -> ../usr/local/etc/group
-rw-r--r-- 1 1010 1013 6 May 11 2009 hostname
-rw-r--r-- 1 1010 1013 20 May 11 2009 hosts
-rw-r--r-- 1 1010 1013 385 May 11 2009 httpd.conf
-rw-r--r-- 1 1010 1013 460 May 11 2009 inetd.conf
drwxr-xr-x 1 1010 1013 2048 May 11 2009 init.d
lrwxrwxrwx 1 1010 1013 28 Jun 4 2009 ld.so.cache -> ../usr/local/etc/ld.so.cache
lrwxrwxrwx 1 1010 1013 27 Jun 4 2009 ld.so.conf -> ../usr/local/etc/ld.so.conf
lrwxrwxrwx 1 1010 1013 14 Jun 4 2009 mtab -> ../proc/mounts
lrwxrwxrwx 1 1010 1013 23 Jun 4 2009 passwd -> ../usr/local/etc/passwd
lrwxrwxrwx 1 1010 1013 24 Jun 4 2009 passwd- -> ../usr/local/etc/passwd-
lrwxrwxrwx 1 1010 1013 24 Jun 4 2009 profile -> ../usr/local/etc/profile
drwxr-xr-x 1 1010 1013 2048 May 11 2009 reexec_init
lrwxrwxrwx 1 1010 1013 26 Jun 4 2009 resolv.conf -> /usr/local/etc/resolv.conf
-rw-r--r-- 1 1010 1013 20373 May 11 2009 services
-rw-r--r-- 1 1010 1013 7 May 11 2009 system_svn_version
-rwxr-xr-x 1 1010 1013 1893 May 11 2009 udhcpc.script

Seguro que alguien mas como yo ya lo esta mirando para hackearlo, y hacer cosas nuevas con el.

PD: Por lo visto no es tan facil meterle mano, ya que lo que es el core que reproducr, accede al video, etc.. esta metido en un binario que no es GPL. Mas info aqui

¿Cuantas licencias OpenSource diferentes son necesarias?

Saturday, March 14th, 2009

La verdad es que escribo realmente poco en mi blog, y me propuse que mis entradas fueran siempre creación propia y no meras referencias a otras noticias o contenidos, pues bien esta entrada es precisamente lo que no queria hacer realidad una referencia a otra noticia/articulo, pero en fin me ha parecido que es uno de esos articulos clarificadores que hay que referenciar.

Como sabeis desde el punto de vista de negocio/legal, existe una definición que define si una licencia es Opensource o no es opensource, dicha definición fue creada por Bruce Perens, y es la misma que utilizaba Debian para decidir si acepta o no un determinado software en la definición, no me voy a extender mas en esto podeis consultarlo en www.opensource.org.

Aunque ya mas o menos era de uso comun decir que una licencia era “parecida” a BSD, o parecid a GPL, etc.. Bruce Perens en un recienter articulo ha definido que son realmente cuatro las licencias que en realidad son diferentes y las cuales deberiamos considerar/utilizar, si bien comenta amargamente como cada empresa tiene sus propios abogados y van a seguir haciendo cada uno sus licencias particuales.

Resumiendo las cuatro licencias consideradas son:

-Licencia regalo: Lo menos restrictiva posible, te permite utilizar el código con otro software opensource o con software propietario. (Estilo BSD o Apache).
-Licencia compartir con reglas: Esta la que obliga a compartir de manera que si la empresa de la competencia usa tu código y lo modifica/mejora, entonces lo tendrá que compartir. (licencia GPL 3 p.e.).
-Licencia intermedia: Intermedia a las otras dos licencias, basicamente destinada a que el producto de alguna manera si que se pueda integrar con software propietario, esto es muy utilizado para librerias compartidas (licencia LGPL 3).
-Licencia que considera el saas (software as a service): Esta licencia protege el código Opensource de ser utilizado para obtener beneficio pero no vendiendo productos software sino ofreciendolos como servicio. Esta licencia segun comenta Bruce Perens esta diseñada para evitar que Google utilice software OpenSource lo modifique/mejore y lo use para dar sus servicios, sin aportar estas modificaciones a la comunidad. (El ejemplo de licencia es Affero GPL3).

El articulo original lo podeis ver en:

Slashdot
itmanagement

Linux en sistema empotrado

Saturday, March 15th, 2008

Recientemente he adquirido una placa ALIX de Pc Engines, un pequeño ordenador con arquitectura i386, funcionando con una AMD Geode. La idea es tener un pequeño servidor que me pueda hacer de router, de firewall de servidor de ficheros conectandole un disco externo USB, incluso de maquina de P2P.
El aparato en si, no tiene disco duro, sino que funciona mediante una tarjeta Compact Flash, y tiene un consumo bajisimo solo 4W.

alix

En cuanto al sistema que se le puede instalar, pues hay varios, pasando por BSD, openBSD y Linux. La que estoy probando es un linux basado en debian (acepta repositorio de etch), que se llama VOYAGE LINUX.