Artículos de la categoría Sistemas Operativos

[Linux] Corrigiendo el error de inicio de ALSA (alsactl)

Este detalle lo detecté instalando Debian GNU/Linux y Linux Mint en un equipo Lenovo E420 con tarjeta de sonido Intel HD, el error era el siguiente:

(visible en el arranque y en dmesg):

Found hardware: “HDA-Intel” “VIA VT1705″ “HDA:11064397,18490397,00100000″  “0×1849″ “0×0397″
Hardware is initialized using a generic method
/usr/sbin/alsactl: set_control:1328: failed to obtain info for control #1 (No such file or directory)

Este detalle causaba muchísimo ruido en la reproducción de flujos de audio y algunos otros detalles, se corrige muy fácilmente, primero, ejecutamos un test de las cornetas:
speaker-test -c 2
speaker-test 1.0.23

Playback device is default
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 2048 to 8192
Period size range from 1024 to 1024
Using max buffer size 8192
Periods = 4
was set period_size = 1024
was set buffer_size = 8192
0 – Front Left
1 – Front Right
Time per period = 5,822838
0 – Front Left
1 – Front Right
Cuando ALSA ha podido determinar la reproducción de sonido por las cornetas, ejecutamos:

Debian:
alsactl store
Mint:
alsactl -f /var/lib/alsa/asound.state store
Y listo!, al reiniciar, ya no aparecerá más el error.

Nota: Mejorando la latencia del ALSA

Los ruidos son  a veces por una latencia demasiado elevada en la respuesta del kernel, como contamos con un equipo bastante robusto, podemos reducir la latencia a un milisegundo agregando este archivo:
file: /etc/modprobe.d/modprobe.conf :
options snd-usb-audio nrpacks=1
Y reiniciamos el equipo.

Publicación original de Phenobarbital.

Habilitar – Deshabilitar el touchpad en GNU/Linux

Me compré una nueva portátil, luego de 4 años utilizando la misma tablet, la he comprado más que todo por su procesador iCore quad-core que me permite virtualizar de muchísimas maneras (además que mi pobre Tablet ya merece un descanso).

En fin, una de las cosas que más me estresa, es haber perdido el uso de los touchpads, cuando se tiene una tablet, se olvida como funcionan los ratones y los touchpads xD.

Pero no conforme con eso, este touchpad es ultra-sensible y multitouch, toda una pesadilla a la hora de escribir y que accidentalmente caen tus dedos sobre él.

Entonces, he querido documentar varias formas de habilitar y deshabilitar el touchpad …

Manos a la obra! …
Herramienta Gráfica : Gsynaptics
Simplemente instalamos el paquete gsynaptics (por Gestor de paquetes o por cónsola) y nos aparecerá una opción en el menú “Sistema > Preferencias > Pointing Devices” que nos permitirá activar y desactivar el touchpad.
Script: Toggle Touchpad
Como uno nunca sabe cuándo va a escribir, un botón rápido en la barra de herramientas que permita el “toggle” o cambio rápido entre habilitado y deshabilitado, lo cual es bastante útil.

El script es bastante sencillo, hace uso del programa “synclient” que viene en el paquete xorg-xserver-input-synaptic, el cual permite configurar todas las opciones del synaptic.
El script:

#!/bin/bash

# Authors:
# Jesus Lara <jesuslara@devel.com.ve>
# version: 0.1
# Copyright (C) 2010 Jesus Lara
# Toggle between disable and enable Touchpad

SYNCLIENT=`type synclient | awk ‘{print $3}’`
SYNCLIENT=/usr/bin/synclient
if [ ! -f "$SYNCLIENT" ] ; then
echo “No se ha encontrado synclient”
exit 1
fi

ENABLE=$(synclient -l | grep TouchpadOff | awk ‘{print $3}’)

if [ "$ENABLE" != "1" ]; then
$SYNCLIENT TouchpadOff=1
else
$SYNCLIENT TouchpadOff=0
fi

exit 0

Copien el texto en un archivo, conviértanlo en ejecutable:

chmod +x toggletouchpad.sh

Y prueben ejecutándolo en la cónsola, luego, coloquenlo como botón en la barra de herramientas:

Y tendrán un botón que permite activar y desactivar el Touchpad a voluntad en la barra de herramientas.
Detectando automáticamente la palma de la mano
También podemos, si tienes una portátil que no tiene segunda opción de ratón (como el trackpoint IBM de las Lenovo), es mejorar la sensibilidad de detección de la palma de la mano, esto es, que a una presencia de algo “más grande y con más presión” que un dedo, entonces obviarlo, para ello debemos configurar nuestro synaptic en el Xorg y agregar las siguientes opciones:

file: /usr/share/X11/xorg.conf.d/55-touchpad.conf
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
Option "MinSpeed" "0.5"
Option "MaxSpeed" "1.0"
Option "AccelFactor" "0.075"
Option "TapButton1" "1"
Option "TapButton2" "2" # multitouch
Option "TapButton3" "3" # multitouch
Option "VertTwoFingerScroll" "1" # multitouch
Option "HorizTwoFingerScroll" "1" # multitouch
Option "HorizEdgeScroll" "on"
Option "VertEdgeScroll" "on"
Option "CoastingSpeed" "8"
Option "CornerCoasting" "1"
Option "CircularScrolling" "1"
Option "CircScrollTrigger" "7"
Option "EdgeMotionUseAlways" "1"
Option "LBCornerButton" "8" # browser "back" btn
Option "RBCornerButton" "9" # browser "forward" btn
Option "SHMConfig" "on"
# deteccion de palma
Option "PalmDetect" "1"
Option "PalmMinWidth" "10"
Option "PalmMinZ" "200"
EndSection

La última opción “Palm Detect”, es un booleano (cero, uno) que permite habilitar y deshabilitar la detección de que accidentalmente caiga nuestra palma (u otra parte de la mano) sobre el Touchpad, también incluye el ancho mínimo de la zona (es un valor del 1 al 15), para personas con dedos pequeños, valores bajos permite detectar cualquier objeto más grande que un dedo sobre el touchpad, además, PalmMinZ permite determinar el nivel de presión que por lo general ejercemos con la palma (de 1 a 255); con un valor 200, puedo reposar completamente la palma sobre la parte inferior del Touchpad y aún así, poder usarlo sin que se vuelva loco el cursor.
Desactivar el touchpad si se conecta un ratón
Como el Touchpad me estresa, terminé comprandome un ratón, entonces me gustaría que al conectar el ratón, este se desactivara automáticamente, para ello, tendremos que instalar:

aptitude install xinput

Y modificar algunas cosillas en las reglas UDEV.

xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=10 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=11 [slave pointer (2)]

xinput –list retorna la lista de dispositivos de entrada, verificamos si hay una propiedad que nos permita desactivar el equipo:

xinput list-props "SynPS/2 Synaptics TouchPad" | grep Enable
Device Enabled (129): 1

Y como existe, la probamos:

Habilitar: xinput –set-prop “SynPS/2 Synaptics TouchPad” “Device Enabled” 1
Deshabilitar: xinput –set-prop “SynPS/2 Synaptics TouchPad” “Device Enabled” 0

Listo!, podemos crear una regla UDEV para desactivar este dispositivo si un ratón USB es conectado:
script: /etc/udev/rules.d/61-touchpad.rules

# 61-touchpad.rules
#
# this rules file must be named 61* or later because it won't work
# unless it runs after '/lib/udev/rules.d/60-persistent-input.rules'
#
# NOTE: will only affect DISPLAY :0
#
# run:
# udevadm test --action=add /sys/devices/platform/i8042/serio1/input/input4/mouse0
# or similar to test the following rules
#
# disable synaptic touchpad on DISPLAY :0 if a mouse is added to the system
ACTION=="add", SUBSYSTEM=="input", ENV{ID_INPUT_MOUSE}=="1", RUN+="/bin/sh -c 'DISPLAY=:0 /usr/bin/xinput --set-prop SynPS/2\ Synaptics\ TouchPad\ Device\ Enabled 0'"

# enable synaptic touchpad on DISPLAY :0 if a mouse is removed from the system
ACTION==”remove”, SUBSYSTEM==”input”, ENV{ID_INPUT_MOUSE}==”1″, RUN+=”/bin/sh -c ‘DISPLAY=:0 /usr/bin/xinput –set-prop SynPS/2\ Synaptics\ TouchPad\ Device\ Enabled 1′”

Este script habilita y deshabilita el touchpad apenas conectemos un dispositivo Mouse en el subsistema de entrada.

Para probar “cual” dispositivo es nuestro touchpad ejecutamos:

cat /proc/bus/input/devices
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input4
U: Uniq=
H: Handlers=mouse0 event4
B: PROP=9
B: EV=b
B: KEY=6420 30000 0 0 0 0
B: ABS=260800011000003

Y veremos que nuestro dispositivo es: /sys/devices/platform/i8042/serio1/input/input4, para probar si la regla está bien escrita ejecutamos:

udevadm test --action=remove /sys/devices/platform/i8042/serio1/input/input4 2>&1 | grep "run:"
udevadm_test: run: 'socket:@/org/freedesktop/hal/udev_event'

Nota: También podíamos (si no queremos instalar xinput) es utilizar el mismo comando “disable Touchpad” del synclient, modificando las reglas de UDEV de esta manera:

ACTION=="add", SUBSYSTEM=="input", KERNEL=="mouse[1-9]", ENV{ID_CLASS}="mouse", RUN+="/usr/bin/synclient TouchpadOff=1"
ACTION=="remove", SUBSYSTEM=="input", KERNEL=="mouse[1-9]", ENV{ID_CLASS}="mouse", RUN+="/usr/bin/synclient TouchpadOff=0"

Y así, no apagamos el dispositivo, simplemente “desactivamos” el touchpad y lo podremos recuperar con el script de arriba.
Desactivando el Touchpad mientras se escribe
Para que esta directiva funcione, deberán tener habilitado “SHMConfig” en la configuración del Touchpad en Xorg (como aparece comentado en las reglas del Xorg, colocadas más arriba), al habilitar SHMConfig, podemos cambiar opciones del Synaptic Touchpad en ejecución utilizando la herramienta “syndaemon”, en mi caso, he utilizado el archivo “.xinitrc” para colocar el siguiente comando:
file: /home/jesuslara/.xinitrc

syndaemon -t -k -i 2 -d &

syndaemon indica que desactivará el touchpad en presencia de actividad del teclado (solo desactivará los taps y el scrolling, se podrá seguir moviendo el cursor) y lo reactivará luego de 2 segundos de detectado que el teclado ya no se está usando.

Si no lo poseen, creen el archivo, pónganle opción ejecutable y reinicien su sesión.

Nota: para los usuarios de Gnome, pueden colocar el comando en “Aplicaciones al inicio” para que el demonio syndaemon quede configurado al iniciar el sistema.

También pueden ir al menú “Sistema > Preferencias > Ratón” y en la pestaña “Touchpad” hacen click en la opción “desactivar Touchpad mientras se escribe”.

¿Vieron cuántas opciones hay? … espero les ayude como me ayudaron a mí estos tips …

Happy Hacking!

Publicación original de Phenobarbital.

Una de las cosas más importantes con las que uno se encuentra en ambientes de trabajo heterogéneos, con diversos sistemas operativos, cuando hay redes y máquinas que instalar, es contar con una herramienta que nos permita iniciar (boot) desde USB.

Ultimate Boot CD
Es un proyecto gratuito (y open source en algunos casos), para integrar una serie de herramientas de diagnóstico, reparación y análisis de equipos, discos duros y hardware.

Consta de una serie de herramientas bajo DOS (freeDOS) como Disk Manager, etc y además con una completa versión live USB de la distribución partedMagic, partedMagic es una distribución (basada en Gentoo y XLDE) que corre desde RAM, trae:

  • gparted
  • testdisk
  • smart-mon tools (herramientas de diagnóstico de S.M.A.R.T)
  • Hardware info
  • Herramienta para reset de contraseñas Windows.

Y toda la serie de cosas que encontrarás en una distribución Linux (music player, navegador Internet, etc)

Hiren Boot CD
Con Hiren Boot CD contamos con herramientas “comerciales” de diagnóstico, reparación y chequeo basadas en DOS y hasta un “mini-Windows XP” iniciable.
HOWTO: Crear un Pen-Drive boot (grub4Dos)

Alerta!: Alto contenido técnico, no me hago responsable si por error, destruyes tu disco duro!.

Modo Gparted:

  1. Conectar el USB stick (tengo una memoria micro-SD viejita de 512 MB) al equipo
  2. abrir gparted
  3. Particionar el pendrive (menú Dispositivo > Crear tabla de particiones)
  4. Presionar CTRL+N (nueva partición) > tipo: primaria, sistema de archivos: fat32
  5. Al terminar de formatear, menú partición > Gestionar Flags > Seleccionar BOOT

Modo Fdisk

  1. Conectar el pendrive, si este se monta, desmontarlo (umount /dev/sdxx) donde xx representa el disco y el número de la partición, ejemplo:
    umount /dev/sdb1
  2. ejecutar fdisk sobre el pendrive:
    fdisk /dev/sdb1
  3. En el prompt, solicitas la opción de “new DOS partition table” = letra O
  4. Creamos una nueva partición: opción N, luego tipo primaria, la totalidad del pendrive
  5. Opción A (letra A), le darán la opción “boot” al pendrive.
  6. Presionen “P” para ver si la partición está bien creada:
    Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1   ?      200646      216001   123339962   78  Unknown
  7. Presionar “W” para escribir los cambios, es probable que se requiera retirar y volver a colocar el pendrive.
  8. Formatear el pendrive:
    mkfs.vfat -n bootusb -f1 -F 32 /dev/sdb1

Ya contamos con un pendrive formateado, ahora, procedemos a “agregarle” el sistema de arranque.

NOTA: si no posee gparted, instálelo (nombre: gparted), si no encuentra mkfs.vfat, instale el paquete requerido (dosfstools)

Syslinux y arranque
Se requiere hacer 2 cosas sobre un pendrive FAT32 para hacerlo arrancable, siempre y cuando se instalen los paquetes requeridos:

aptitude install syslinux syslinux-common

Luego, debemos “transferir” el Master Boot Record (MBR), que representan 404 bytes del sector “iniciable” del pendrive; ejecutamos:

dd if=/usr/lib/syslinux/mbr.bin of=/dev/sdX

Donde X representa la letra del dispositivo (nota: SIN EL número de la partición)

Esperamos a que el comando DD “suelte” el pendrive, ejecutando:

sync

el comando syslinux requiere la presencia de los siguientes archivos y directorios (en la raíz del pendrive):

/boot (directorio)
/boot/syslinux (directorio)
/boot/grub (directorio)
/boot/grub/menu.lst (menu list del grub)
/boot/syslinux/syslinux.cfg (configuración de arranque de syslinux)

Y la presencia, “obviamente” de un kernel Linux.

Cuando todo eso esté ahí, transferimos el “sistema de arranque” con:

syslinux /dev/sdXn

Donde X representa la letra del pendrive y N la partición (en mi caso 1).

Transfiriendo los archivos necesarios
Tanto Ultimate Boot CD como Hiren Boot CD puedes encontrarlos en forma de archivos .ISO, simplemente los “montamos” en un directorio y copiamos todo el contenido a nuestro “pendrive”:

mount -t iso9660 -o loop ubcd501.iso /mnt

Y copiamos todo:

cp -a /mnt/* /media/bootusb

Personalizando …
Luego de copiar todo el contenido de Ultimate Boot CD al pendrive, personalizaremos un poco.

He copiado las carpetas HBCD (Hiren Boot CD) y UBCD (Ultimate Boot CD) desde sus respectivos ISO a mi pendrive, luego, edité el archivo isolinux.cfg que encontraremos en /boot/isolinux/ y agregué las entradas para hiren boot CD:

DEFAULT main

LABEL main
COM32 /boot/syslinux/menu.c32
APPEND /ubcd/menus/isolinux/main.cfg

label bc
COM32 /HBCD/menu.c32
menu label Start BootCD
kernel /HBCD/memdisk
append initrd=/HBCD/boot.gz

label xp
COM32 /HBCD/menu.c32
menu label Start Mini Windows Xp
kernel /HBCD/XP.BIN

Guardé y reinicié el equipo para probar que puedo entrar tanto a Hiren Boot CD, al Mini-Windows XP de Hiren Boot como al PartedMagic de UBCD.

TODO (por hacer):
Hay 3 herramientas populares:

  • Hiren Boot CD : herramientas comerciales para Windows
  • System Rescue CD: herramientas libres y GPL para Linux
  • Ultimate Boot CD: herramientas libres o gratuitas para Linux y Windows

Las 3 usan grub4Dos y syslinux para arrancar sus servicios, sería “interesante” crear un único “menú” (menu.lst y syslinux.cfg) que integre los menús de las 3 herramientas, cada una en su propia carpeta (HBCD: Hiren Boot CD, pmagic: systemRescueCD, UBCD: Ultimate Boot CD).

Como último, agregar en un sector “aparte” el arranque de instalación de algunas distros populares (Debian netinstall, Canaima DVD y Ubuntu Live DVD) y sería el pendrive “perfecto”.

Conclusiones
No saben con la proliferación de “netbooks” lo necesario que es tener una herramienta de este tipo para re-particionar, formatear, instalar y revisar (sin tener que cargar una unidad DVD portable), además estas herramientas son tan “pequeñas” que en conjunto no superan los 500 MB de espacio, posibilitando recuperar esos “viejos pendrives” y memorias para algo útil.

Espero les sirva como a mí …

Publicación original de Phenobarbital.

Anoche hice algo que te arrepientes por mucho tiempo, tomé un disco de la mesa y “mentalmente” seguro era el correcto lo puse en el portátil y reinicié, salí a tomarme un café para encontrarme con que tomé el disco de recuperación de la portátil (ni idea de por qué estaba allí sobre la mesa), borrando todo y apareciendo un gracioso logo de Windows Vista donde antes había Linux Debian.

¿Horror?, si, hubo mucho pavor en ese momento (era mi instalación Linux de trabajo), así que me tocó echar mano de las herramientas de recuperación para poder ganarle una al Windows.

Estado Inicial
Luego de la instalación automática y desasistida del equipo, terminé con dos particiones NTFS que ocupaban la totalidad del disco, como la primera había ocupado más de 10Gb, asumí que los datos de las primeras particiones (/boot, /root) estaría sumamente corrompidos, pero me preocupaba /HOME, que estaba en un volumen LVM, así tomé mis herramientas:

  • gpart
  • testdisk
  • lvm-tools

Y manos a la obra!.

Inicio: obteniendo información de las particiones perdidas
Lo más importante, es saber toda la información de las particiones perdidas, entre esa información hay una muy importante, TESTDISK requiere saber con exactitud la geometría correcta del disco; sino, se las verá muy mal a la hora de recuperar el disco.

Para esta información viene al rescate gpart (que no gparted, gpart!).

cuando ejecutamos:

gpart /dev/sdb

Donde /dev/sdb es el disco duro que deseamos escanear, este devolverá información acerca de todas las particiones presentes en el disco.

Primary partition(1)
   type: 131(0x83)(Linux ext2 filesystem)
   size: 507mb #s(1038976) s(144224640-145263615)
   chs:  (1023/254/63)-(1023/254/63)d (8977/145/1)-(9042/61/43)r

Como ven, el disco fué formateado con una geometría de 254 heads (cabezales) y 63 sectores (números resaltados), anoten esto para utilizarlo con parted (modo rescue) o en mi caso, testdisk.

Segunda parte: ejecutando testdisk
Lo segundo que deben hacer es ejecutar testdisk, si no lo tienen pueden instalarlo (se llama: testdisk y está en los repositorios de Debian, Ubuntu y Fedora).

al ejecutar testdisk aparece esta ventana:

Nos pregunta si deseamos crear un log (llamado testdisk.log) de todas nuestras actividades, por seguridad, indiquen que sí.

De segundo, nos mostrará los discos a revisar, en mi caso:

Select a media (use Arrow keys, then press Enter):
Disk /dev/sda - 160 GB / 149 GiB - ATA SAMSUNG HM160HI
Disk /dev/sdb - 160 GB / 149 GiB - Generic External

Ya que el disco de 160Gb es un ATA Seagate que lo conecté por USB storage.

Seleccionamos el disco (flecha abajo), presionamos la tecla ENTER (INTRO, ustedes entienden ;) ).

Luego pregunta el tipo de partición:

Please select the partition table type, press Enter when done.
[Intel  ]  Intel/PC partition
[EFI GPT]  EFI GPT partition map (Mac i386, some x86_64…)
[Mac    ]  Apple partition map
[None   ]  Non partitioned media
[Sun    ]  Sun Solaris partition
[XBox   ]  XBox partition
[Return ]  Return to disk selection

Escojan “Intel” (no usé GPT en este disco).

En las opciones que salen, es donde vienen los cambios, escojan “[Geometry]“.

Luego, verán una pantalla como esta:

Acá es donde en [ Heads ] colocaremos los valores que recuperamos con gpart (en mi caso: Heads: 254 y Sectors: 63).

Presionen [OK] al terminar y ahora vamos al escaneo.

Presionen “Analyze”, luego de analizar (Quick Scan) ejecuten un “Deeper Scan” para revisar toda la superficie del disco.

Al terminar verán que encontró nuestra partición:

5 L Linux LVM             1862  42 31 19291 137 19  278904832

Presionen flecha derecha para cambiar los modos:

Modo “*” = Primaria, boot

Modo “P” = partición primaria

Modo “D” = partición borrada (útil si consigue una partición nueva que solapa una vieja)

Modo “L” = partición lógica

En algunos casos, testdisk no puede entender que es un Linux LVM, para ello podemos presionar la letra T (Change Type) y escogen el modo Linux LVM.

Nota mental: una partición linux clásica tiene un modo 0×83.

Esta partición que iba a recuperar era un grupo de volúmenes LVM, era lógica, verifico los datos con gpart (heads, sectors, sector de inicio y sector final, tamaño, etc).

Si todos los datos concuerdan, presiono ENTER y luego escojo “[ WRITE ]” para escribir los cambios al disco, deberán reiniciar (si es un disco atachado al computador) o desconectarlo (si es un USB storage) para que reconozca los cambios.

ya respiramos un poco más aliviados, ahora a recuperar el grupo de volúmenes.

Paso 3: Recuperar el grupo de volúmenes
Obviamente para este paso tu computador debe reconocer grupos de volúmenes (tener instalado el paquete lvm2), al volver a conectar el disco duro, ejecutamos el comando:

pvscan

Este buscará todos los grupos de volúmenes en todos los discos, encontrando este:

pvscan
  PV /dev/sdb5   VG VgCANTV   lvm2 [132,99 GiB / 57,96 GiB free]
  Total: 1 [132,99 GiB] / in use: 1 [132,99 GiB] / in no VG: 0 [0   ]

Entonces lo chequeamos (para verificar consistencia):

pvck -a /dev/sdb5
  Found label on /dev/sdb5, sector 1, type=LVM2 001
  Found text metadata area: offset=4096, size=192512

Lo vemos con pvdisplay:

pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdb5
  VG Name               VgCANTV
  PV Size               132,99 GiB / not usable 4,00 MiB
  Allocatable           yes
  PE Size               4,00 MiB
  Total PE              34045
  Free PE               14837
  Allocated PE          19208
  PV UUID               A3m31N-wy5p-0zMl-0T3q-Nx45-jQR3-1Rjc4Q

Y lo activamos:

vgchange -a y VgCANTV
  49 logical volume(s) in volume group "VgCANTV" now active

Wow! 49 volúmenes (es donde tengo mis VMs de Xen de mi trabajo).

Luego de activado el volumen, vgdisplay nos retornará información:

vgdisplay
  --- Volume group ---
  VG Name               VgCANTV
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  83
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                49
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               132,99 GiB
  PE Size               4,00 MiB
  Total PE              34045
  Alloc PE / Size       19208 / 75,03 GiB
  Free  PE / Size       14837 / 57,96 GiB
  VG UUID               PhZqJE-44xs-F0tP-XAXr-s2jZ-LlON-5LBL0t

Al tener su propio UUID el grupo de volúmenes (y sus particiones) ya pueden ser accedidas de manera usual.

Paso 4: montando y chequeando
Uno de los peligros de usar XFS es la corrupción de los descriptores, en mi caso no hubo problemas, antes de montar ejecutamos:

xfs_check /dev/mapper/VgCANTV-volHOME

Y chequeará cualquier detalle del Filesystem, en caso de necesitar reparación, ejecutamos:

xfs_repair /dev/mapper/VgCANTV-volHOME

Si acaso hubo una pérdida de los logs de descriptores, pueden hacer que repare el sistema haciendo caso omiso de los logs y buscando los descriptores directamente del FS:

xfs_repair -L /dev/mapper/VgCANTV-volHOME

Por seguridad, le generamos un nuevo UUID a la partición XFS:

xfs_admin -U generate /dev/mapper/VgCANTV-volHOME

Y por último ya podemos montarla:

mount -t xfs /dev/mapper/VgCANTV-volHOME /media/respaldo/home

Respaldamos nuestros datos y ¡listo!, ya nos recuperamos!.

Lo bueno de herramientas como Testdisk o Gpart es que vienen incluídas en varias distribuciones LiveCD para recuperación de datos, como por ejemplo SystemRescueCD (del cual hice un artículo acá). Por desgracia no contaba ni con unidad de CD ni con mi SystemRescueUSB, pero testdisk y gpart son herramientas bastante pequeñas y se instalan en cualquier linux muy rápidamente.

Publicación original de Phenobarbital.

Desbloquear Usuario de Windows 7

Desde el día que publique el artículo: “Desbloquear Usuario de Windows XP o Vista” se ha mantenido entre los 10 artículos más leídos de este pequeño blog, así que hoy a modo de desempolvar un poco el teclado les mostrare como realizar la misma tarea valiéndonos de una herramienta aún más potente y efectiva con soporte para todas las versiones de Windows disponibles actualmente, incluidos Windows Server 2008 y Windows 7.
Lo primero que tenemos que hacer es descargar la última versión de Hiren’s BootCD  (Para la fecha de publicación de este post es la v14.1) desde el siguiente enlace:

Al descargar obtendremos un archivo de nombre Hirens.BootCD.14.1.zip el cual debemos descomprimir utilizando 7-Zip una vez descomprimido ubicamos el archivo con extensión .iso y lo grabamos a un CD o DVD valiéndonos de algún software de quemado como por ejemplo ImgBurn.

Luego de grabado el CD/DVD colócalo en la unidad lectora del PC a desbloquear, reinicia con el CD dentro e ingresa al Setup\Bios presionando “Supr”, F2 o F10; la combinación de teclas para ingresar al BIOS varía según el modelo del equipo, (sea cuidadoso al modificar algo en el Setup\Bios pues podría afectar su sistema) ubica y modifica el Boot Device (orden de arranca) colocando como primer origen  la unidad de CD/DVD, sal del Setup\Bios guardando los cambios, de este modo Hiren’s BootCD iniciara automáticamente, de no ser así, se te pedirá que presiones una tecla para iniciar desde el CD/DVD.
Una vez iniciado Hiren’s BootCD sigue los pasos del siguiente vídeo tutorial.
Nota: Recomiendo, ver el vídeo en su máxima resolución y pausar/retroceder cuando se considere necesario, pues  fue grabado a “velocidad geek”.

Y eso es todo, al finalizar el proceso mostrado en el vídeo podemos iniciar Windows normalmente y ya no se nos solicitara contraseña alguna.

Esta publicación es original de JManzur.

Resolviendo congelamiento por HPET en Debian/Ubuntu

Durante un tiempo estuvo presentando mi equipo un error que podía verse en el dmesg de la siguiente manera:

CE: hpet increasing min_delta_ns to 15000 nsec

Posterior a la aparición de esa advertencia (HPET: High Precision Event Timer), el sistema pasaba a un estado de “letargo”, aunque algunos usuarios con hardware menos potente reportaba bloqueos o congelamientos, sobre todo del sistema de video o de algún hardware, en mi caso, detectaba era que se “ponía lento” el equipo, o aleatoriamente algún hardware dejaba de funcionar “parcialmente” (en especial, la wlan0 o la interfaz de red eth0).

NOTA: si tienes un equipo con Intel Core 2 Duo y estás presentando breves congelamientos del video, de la red o de la inalámbrica, deberías revisar con el comando:

dmesg

Si estás presentando el mensaje de arriba repetidas veces o estás viendo un core dump de algún módulo en fallo.

El error

El bug, presente en Debian, Ubuntu, Fedora y otras distribuciones (http://www.linux-archive.org/debian-kernel/245380-bug-515172-system-briefly-lockup-messages-ce-hpet-increasing-min_delta_ns-15000-nsec.html) era como consecuencia de un fallo en la interpretación del reloj HPET (que requiere “interrogar” al hardware, en este caso, al CPU Intel Core 2 Duo).

Resolución

La forma mas “rápida” de resolver el problema (y evitar esos fastidiosos “bloqueos temporarios” del hardware), es desactivar el reloj HPET y agregar otro tipo de reloj también preciso: “jiffies” > http://es.wikipedia.org/wiki/Jiffies

Para hacerlo, editamos el grub:

grub1: archivo /boot/grub/menu.lst, en la línea del kernel (vmlinux).

grub2: editamos /etc/default/grub y en GRUB_CMDLINE_LINUX

En la opción que tengan, agregan:

lapic clocksource=jiffies

Actualización: no es necesario apagar el reloj HPET, con solamente poner el clocksource a jiffies es suficiente.

Luego, generan nuevamente el menú del grub:

update-grub

nota: o update-grub2 para grub2.

Luego, reinician el equipo.

Prueba

La prueba más básica es cargar una película en full-screen, tengo una en m4v (H264 con audio AC3), intentamos usar el acelerador “gl_nosw” (GLX con aceleración por hardware) de Intel:

Ejecuté:

mplayer -vo gl_nosw -fs Videos/gueto2009.m4v

El Mplayer reportó:

VIDEO: [H264] 852x480 24bpp 25.000 fps 1276.5 kbps (155.8 kbyte/s)
Clip info:
major_brand: M4VH
minor_version: 1
compatible_brands: M4VHM4A mp42isom
[gl] using extended formats. Use -vo gl:nomanyfmts if playback fails.
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
==========================================================================
Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
AUDIO: 44100 Hz, 2 ch, s16le, 119.8 kbit/8.49% (ratio: 14976->176400)
Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio))
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
Movie-Aspect is undefined - no prescaling applied.
VO: [gl_nosw] 852x480 => 852x480 Planar YV12 [fs]

Mientras tanto, el CPU reporta un uso de solamente:

Cpu(s): 5.8%us, 4.8%sy

Y en el dmesg, “se fué para siempre” el error de HPET.

Disfruten de un sistema más fluído.

Publicación original de Phenobarbital.

Categorías

Enlaces

Estadísticas


eXTReMe Tracker