domingo, mayo 31, 2009

Como reportar un ID de USB que no aparece al hacer "lsusb" o aparece pero dice muy poco... por ejemplo si haces "lsusb -v"
debería mostrar algo así como esto...

Bus 002 Device 003: ID 15d9:0a33 Dexon Mouse
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x15d9 Dexon
idProduct 0x0a33 Mouse
bcdDevice 1.00
iManufacturer 0
iProduct 1 USB Mouse
iSerial 0
bNumConfigurations 1
Configuration Descriptor:

continúa, pero saqué lo más importante:
idVendor 0x15d9 Dexon
idProduct 0x0a33 Mouse

Que es lo que hace, idvendor es el chip, este identifica que es en sí, y idproduct es lo que es, osea que es lo que hace, un chip puede tener múltiples usos, de ahí las diferencias, todo esto lo puedes reportar directamente a:
http://www.linux-usb.org/
si tienes Debian, puedes revisar el contenido de tu dispositivo en:
gedit /var/lib/usbutils/usb.ids

y buscar el que sea el tuyo claro, si no está, entonces reportalo directamente al bugtrack de tu distribución, o mejor aún, directamente al proyecto usbutils.
http://www.linux-usb.org/

viernes, mayo 29, 2009

Hola, más de alguna vez se deben haber topado con que querías cambiar tu dirección mac por algún problema... pero te topaste con que creías que no se podía...
Es muy fácil, debes bajar la interfaz de red:
sudo ifconfig eth0 down
luego:
ifconfig eth0 hw ether 00:00:00:00:00:01
Luego se revisa y levantas si se cambió:
sudo ifconfig eth0
sudo ifconfig eth0 up

Puede ser wifi o ethernet, depende como se llame tu interfaz, en mi caso me lanzaba un error al hacer el cambio, pero logré que cambiara sin dramas... tuve que hacer la misma operación unas 8 veces cambiando la mac de mi tarjeta, y al final funcionó sin mayores problemas...


acerca del error:
http://www.linuxforums.org/forum/linux-applications/20846-error-changing-mac-address-ifconfig-ethx-hw-ether-xx-xx-xx.html

recomendado para automático...
http://www.howtogeek.com/howto/ubuntu/change-your-network-card-mac-address-on-ubuntu/

Ejemplo práctico:

maximi89@Maximiliano:~$ sudo ifconfig eth0 down
maximi89@Maximiliano:~$ sudo ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:09:a1:82:42:33
inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:2969599 errors:0 dropped:0 overruns:0 frame:0
TX packets:1965913 errors:42 dropped:0 overruns:0 carrier:0
collisions:15 txqueuelen:1000
RX bytes:3592112228 (3.3 GiB) TX bytes:221453006 (211.1 MiB)
Interrupt:18 Base address:0xac00

maximi89@Maximiliano:~$ sudo ifconfig eth0 hw ether 00:09:a1:82:42:32
maximi89@Maximiliano:~$ sudo ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:09:a1:82:42:32
inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:2969599 errors:0 dropped:0 overruns:0 frame:0
TX packets:1965913 errors:42 dropped:0 overruns:0 carrier:0
collisions:15 txqueuelen:1000
RX bytes:3592112228 (3.3 GiB) TX bytes:221453006 (211.1 MiB)
Interrupt:18 Base address:0xac00

maximi89@Maximiliano:~$ sudo ifconfig eth0 up


Buena suerte!

sábado, mayo 23, 2009

Bluetooth Dongle ISSC http://www.issc.com.tw/bt_dongle.htm

El error:
Bluetooth doesn't work (hci_cmd_task: hci0 command tx timeout)

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/268502?comments=all

Fue solucionado en el kernel 2.6.30-rc6, pero además según un desarrollador de Bluez, Holtmann el usar "hcitool cc" (hcitool cc sirve para establecer una conexión al cliente) no sirve porque es para los desarrolladores, entonces utiliza:

gnome-obex-send -d XX:XX:XX:XX:XX:XX '/home/maximi89/Foto curriculo.png'


desde la versión bluez 4.34-0exp1 funciona sin dramas, y con el kernel 2.6.30-rc6
sudo "hciconfig hci0 up" levanta la interfaz, y podrás enviar con el comando anteriormente mencionado.

kernel 2.6.30-rc6 fix the problem of "hci0 tx timeout"


ID 1131:1004 Integrated System Solution Corp. Bluetooth Device

[ 6306.340042] usb 2-2: new full speed USB device using ohci_hcd and address 4
[ 6306.564806] usb 2-2: New USB device found, idVendor=1131, idProduct=1004
[ 6306.564815] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 6306.564822] usb 2-2: Product: ISSCEDRBTA
[ 6306.564826] usb 2-2: Manufacturer: ISSC
[ 6306.564973] usb 2-2: configuration #1 chosen from 1 choice



No sirve:
sudo hciconfig hci0 up
sudo hcitool cc XX:XX:XX:XX:XX:XX (holtmann of bluez say that it's only for developers)
Sirve:
levantar la interfaz bluetooth y luego enviar archivos con un programa que haga eso, gnome-obex-send es uno y sirve muy bien, no he probado recibir ni otros medios como audifonos o mouse, sólo enviar archivos.

Más información en mi post más reciente:
http://maximi89.blogspot.com/2009/10/como-activo-el-bluetooth-en-mi.html

lunes, mayo 18, 2009

Solución al problema de hibernar sobre GNU/Linux Debian, debes tener instalado el sistema base supongo, pequeños tips, sólo instala uswsusp y nada más:
ahora entras a /etc/uswsusp.conf y cambias "platform" por "shutdown".

ahora, edita con los datos entregados en el sitio más abajo, claro que los más apropiados, el caso de ohci y ehci es porque son donde conectas el teclado y mouse usb, pero claro, por ahí decían que también había que agregar el módulo nvidia, ahora con las modificaciones de acá y de /etc/uswsusp tengo el sistema funcionando de pelos!

cat /usr/lib/pm-utils/defaults
http://wiki.archlinux.org/index.php/Pm-utils


el mio:
maximi89@Maximiliano:~$ cat /usr/lib/pm-utils/defaults
##########################################################
# DO NOT EDIT THIS FILE! #
# #
# Add files in /etc/pm/config.d/ instead! #
##########################################################

# Default method to power down the system when hibernating.
# If commented out, the system will use the kernel default as a
# default value.
#
# Check /sys/power/disk for valid values. The default value
# will be surrounded by [square brackets].
HIBERNATE_MODE="shutdown"

# Whether we need to post the video card when resuming from
# hibernate. You should not normally need to set this.
# In the future pm-utils will get this setting from HAL.
#
# Valid values are "no" and "yes"
# HIBERNATE_RESUME_POST_VIDEO="no"

# The default sleep/wake system to use. Valid values are:
# kernel The built-in kernel suspend/resume support.
# Use this if nothing else is supported on your system.
# uswsusp If your system has support for the userspace
# suspend programs (s2ram/s2disk/s2both), then use this.
# tuxonice If your system has support for tuxonice, use this.
#
# The system defaults to "kernel" if this is commented out.
SLEEP_MODULE="uswsusp"

# These variables will be handled specially when we load files in
# /etc/pm/config.d.
# Multiple declarations of these environment variables will result in
# their contents being concatenated instead of being overwritten.

# If you need to unload any modules to suspend/resume, add them here.
SUSPEND_MODULES="nvidia ehci_hcd ohci_hcd uhci_hcd iwl3945"

# If you want to keep hooks from running, add their names here.
# HOOK_BLACKLIST=""

# If you want to unconditionally add parameters to the commandline,
# add them here.
# ADD_PARAMETERS=""

# If you want to ignore commandline parameters, add them here.
# DROP_PARAMETERS=""

# If you need to synchronize the system clock across a suspend/resume or
# hibernate/thaw cycle, set this variable.
# NEED_CLOCK_SYNC="true"

http://pastebin.ca/1426132

En resumen:
http://en.opensuse.org/Pm-utils
Se debe crear un archivo en /etc/pm/config.d/config
y ahí modificar a gusto como sigue abajo... ya que este archivo no se sobreescribe al haber nuevas versiones.

HIBERNATE_MODE="shutdown" <--- porque con platform no funciona, sólo con shutdown
SLEEP_MODULE="uswsusp" <-------porque es el sistema que funciona sobre la interface del usuario sin tener que modificar el kernel como pasa con tuxonice.
SUSPEND_MODULES="ehci_hcd ohci_hcd uhci_hcd iwl3945" <--- porque esos son los hubs de usb donde conectamos el mouse, teclado, y demás dispositivos usb, además el módulo nvidia porque era recomendado, claro que la computadora ahora se apaga, porque deja la imagen en la ram, mientras tengamos corriente se mantiene la imagen, y prendes el equipo y es como si siempre hubiese estado ahí.

domingo, mayo 17, 2009

uswsusp 0.8-1.1+b1 no hiberna...

El problema al hibernar es con /etc/uswsusp.conf
si bien al poner el siguiente comando aparecen varias opciones, con sólo hacer un pequeño cambio en ese archivo como dice más abajo, podrás hibernar sin problemas...

maximi89@Maximiliano:~$ cat /sys/power/disk
[platform] test testproc shutdown reboot

maximi89@Maximiliano:~$ cat /etc/uswsusp.conf
# /etc/uswsusp.conf(8) -- Configuration file for s2disk/s2both
resume device = /dev/sda6
compress = y
early writeout = y
image size = 427135303
RSA key file = /etc/uswsusp.key
shutdown method = platform <------ mal configurado: shutdown

Debe decir:
shutdown method = shutdown

Funciona, nVidia sin problemas, si tienes problemas con nVidia, prueba a hacer esto antes de hacer cualquier cosa.

Saludos y suerte!

lunes, mayo 04, 2009

Te ha pasado que al compilar un programa bajo Linux, te lanza un mensaje como el siguiente descrito:

maximi89@Maximiliano:/mnt/wine-1.1.20$ ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... configure: error: in `/mnt/wine-1.1.20':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.


Esto se debe que al montar una partición, esta se monta con "noexec" o "users" esto evita que se ejecuten cosas en la computadora, esto es efectivo cuando se utiliza sobre una carpeta o partición de archivos temporales.
EL ERROR:
checking whether the C compiler works... configure: error: in `/mnt/wine-1.1.20':
configure: error: cannot run C compiled programs.

EL QUE LO PRODUCE:
cat /etc/fstab, a la línea
/dev/sdX1 /mnt/datoslinux ext3 rw,auto,users,noexec,dev 0 1

Solución, remover noexec, nousers y volver a montar la unidad, esto es todo para poder compilar cosas en nuestra computadora.
Les recuerdo que los cambios no se aplican inmediatamente, requiere que ustedes desmonten y monten nuevamente.



Opciones:

Esta es la parte del FSTAB mas importante y por lo tanto es muy extensible, aqui les dejo una pequeña tabla con nombre de la opcion y su explicación

rw: READ-WRITE. Con esto montamos la partición para que sea posible tanto leer como escribir en el dispositivo físico, esta opción es muy usada con dispositivos que permiten la escritura como por ejemplo los pendrive o los disquets, ya que sin esta opción, no podríamos guardar datos en dichos dispositivos.

ro: READ-ONLY. Con esta opcion hacemos que no se pueda escribir en el dispositivo, que tan solo se pueda leer.

exec: Permitir la ejecución de archivos ejecutables.

noexec: Impide la ejecución de cualquier archivo en el dispositivo en el que esta opción sea activada, esta opción suele ser muy útil cuando en una misma maquina diversos usuarios tienen acceso a un mismo dispositivo y no queremos que estos puedan ejecutar archivos en los dispositivos, con esto ganamos en seguridad, ya que impedimos que los usuarios puedan ejecutar cualquier tipo de archivo “maligno” a través del cual lo que realmente quiere conseguir es escalar privilegios en el sistema, por ejemplo.

nodev: con esto impedimos que puedan usarse nodos de dispositivo en el sistema de archivos, es decir, con esta opción impedimos que se interpreten los dispositivos especiales de bloques y de caracteres presentes en el dispositivo.

dev: Opción contraria a nodev, es decir, al activar esta opción permitimos que puedan usarse nodos de dispositivo en el sistema de archivos, o, lo que es lo mismo, que se interpreten como tal los dispositivos especiales de bloques y de caracteres presentes en el dispositivo.

auto: Con esta opción hacemos que el dispositivo que la contenga sea iniciado SIEMPRE que se inicie el sistema, es decir, cada vez que este sea encendido. Es decir que sera montado siempre.

noauto: Esta es la opción contraria a auto, con ella hacemos que el dispositivo no sea montado al iniciarse el sistema, y tan solo sera montado en el momento en el que le vayamos a dar uso, esta opción suele ser usada con dispositivos como las disqueteras, cd-roms, pendrives…, es decir, todos aquellos dispositivos que no es necesario que se monte con el arranque del sistema.

user: Permite a cualquier usuario del sistema montar o desmontar un dispositivo físico sin necesidad de ser root, esta opción es muy útil para dispositivos de uso frecuente, como cd-roms o disquetes. Pero tambien tenerse en cuenta, que el usuario que montó el dispositivo, solo el mismo usuario podrá desmontar el dispositivo.

nouser: índica que cualquier persona puede usarlo, no solo el que lo montó

users: indica que cualquier usuario puede montar y cualquiera también, puede desmontar el dispositivo.

suid: indica que el permiso tenga efecto para los ejecutables presentes en el dispositivo. La opción opuesta es nosuid.

owner: indica que el primer usuario distinto de root conectado al sistema localmente tiene derechos a montar y desmontar el dispositivo (se adueña de este).

uid=Valor: Con esta opción indicamos que tan solo el usuario que posee el Valor especificado tenga el control sobre los archivos del dispositivo.

gid=Valor: Con esta opción indicamos que tan solo el grupo que posee el Valor especificado tenga el control sobre los archivos del dispositivo.

async: Con esto hacemos que las operaciones que realicemos no se hagan de forma síncrona, es decir, en el mismo momento en que las realizamos/pedimos, si nos que pueden ser realizada mas adelante.

sync: Es la opción contraria a async, con esta opción conseguimos que todas las modificaciones que hagamos sean “in situ” es decir, realizadas en el mismo momento en que sean realizadas.

force: Con esta opción se saltan errores y fuerza el montado, usar solamente con particiones que sepas que estan en buen estado, y ovbiamente usar con cuidado

defaults:Es la unión de las siguientes opciones: suid rw dev auto exec nouser y async, con esta opcion usualmente todo funciona.

Syntaxis:

En el uso de opciones se pueden usar mas de 1 separadas por comas (,)

Ejemplo:

rw,nouser,force

dump y pass

Estos son los últimos 2 dígitos después de cada linea del FSTAB y significan lo siguiente

dump: Esta opción solo puede poseer el valor 0 o 1, en ella se guardan los errores en tiempo de sistema que ha reportado el sistema de archivos. Al activarlo (1) se hará un backup con las opciones, creando backup por si surge algún tipo de problema, lo normal es tenerlo desactivado (0), ya que rara vez se produce un error.

pass: Esta opción al igual que la anterior tan solo puede poseer el valor 0 o 1. Si la activamos (1) el sistema realizara una pasada cada X desmontadas o si el dispositivo a sido desmontado incorrectamente para comprobar su integridad. En caso de estar desactivado (0), el sistema no realizara nunca ninguna pasada para comprobar la integridad del dispositivo físico, por ello es recomendable tenerlo en activado (1).

syntaxis:

0 o 1 (desactivado o activado respectivamente)

ejemplo

0 0 (dump y pass desactivado)




Fuente:
http://www.unix.com/unix-advanced-expert-users/33227-cannot-run-c-compiled-programs.html
http://kernelerror.net/linux/fstab-a-fondo/
http://docs.hp.com/en/B2355-90696/fstab.4.html