viernes, 9 de mayo de 2014

Windows: BOOTMGR is missing, Press CTRL + ALT + SUPR to reboot...

BOOTMGR is missing
Press CTRL + ALT + SUPR to reboot... 

Vaig tenir aquest problema al clonar una partició d'un disc dur a un altre amb el Norton Ghost. Aquest missatge apareix a l'inici, a l'intentar "bootejar" Windows. La solució la vaig trobar en la següent URL, seguint tots aquests passos. Per si de cas algun dia es borra el post, tinc una còpia local al meu PC, per si algú llegeix això i ho pugués necessitar, es posi en contacte amb mi:

jueves, 20 de marzo de 2014

Linux: Fixar la hora a KDE.

Força útil per evitar que si reiniciem a Windows i tornem, tinguem la hora canviada. Passos:
    1. Cliquem botó dret del ratolí al rellotge de la barra d'eines / "Preferències de rellotge digital" / "Zones horàries / marquem només la opció UTC
    2. On posa "Configuració predeterminada", també marcarem la opció UTC.
    3. Tornem a clicar botó dret al rellotge / "Zona horaria" / marquem de nou UTC.
    4. A la pestanya "Data i hora" posem bé la hora.
    5. Ara anem a la consola, ens identifiquem com a superusuari i escrivim: root@debian:~# hwclock -w
    POSSIBLES problemes que poden sorgir a l'hora de canviar l'hora 

    Linux

    Els problemes que vaig tenir em van dur de corcoll tota una tarda. El problema a Linux va ser que tenia instal·lat el servidor NTP pel que cada vegada que canviava l'hora, al reiniciar, Linux em canviava l'hora a UTC real, és a dir 2 hores abans (horari d'estiu). Ara algú em dirà: Coi, si el problema era el servidor NTP perquè no l'eliminaves ? Cert, però és que jo pensava que el servidor NTP venia instal·lat pel paquet NTPdate o bé pel paquet rdate, no pel paquet NTP que és el que vaig haver d'esborrar. Així doncs la sol·lució va ser tan simple com:

    root@debian:~# apt-get remove --purge ntp

    [ ok ] Stopping NTP server: ntpd.

    Suposo que també deu haver-hi més sol·lucions abans de carregar-nos el paquet, com per exemple treure el possible executable de Ntp que deu carregar-se a l'inici (deu trobar-se a /etc/init.d/ntp).

    Windows

    Per si no fos suficient, Windows també va posar una pega, a l'hora de modificar la hora del rellotge. A part de desmarcar la sincronització automàtica:


    També cal vigilar que no tinguem (ejem.) l'activador KMSPico instal·lat, doncs fa quelcom similar a sincronitzar el rellotge amb un servidor d'Internet (la prova es que sense Internet la hora no varia al reiniciar).

    Per si no funcionen les solucions anteriors:

    xddxdd@debian:~$ rm /etc/localtime 
    xddxdd@debian:~$ date
    dom abr  5 00:00:47 UTC 2015

    xddxdd@debian:~$ ln -sf /usr/share/zoneinfo/Europe/Madrid /etc/localtime
    xddxdd@debian:~$ date
    dom abr  5 02:00:51 CEST 2015

    xddxdd@debian:~$ date -u
    sáb abr  4 22:00:10 UTC 2015

    xddxdd@debian:~$ date
    dom abr  5 00:00:16 CEST 2015

    xddxdd@debian:~$ hwclock -w

    Linux: Moure tot el contingut d'una partició a una altra

    Evidentment com farem una copia, les dades de creació/modificació dels arxius seran nous. Passos:
    1. Iniciar amb un LiveCD que disposi de consola. Identificar-nos com a ROOT.
    2. Crear directoris per les particions:
      1. root@debian:~# mkdir /mnt/old
      2. root@debian:~# mkdir /mnt/new
    3. Montar les 2 particions (les hem d'haver creat previament), la "old" on tenim les dades i la "new" on volem copiar les dades.
      1. root@debian:~#  mount /dev/sdaX /mnt/old (sdaX és la partició root original).
      2. root@debian:~#  mount /dev/sdaX /mnt/new (sdaX és la partició root nova).
    4. Copiem les dades (el segon paràmetre crec que és opcional, ja que jo ho vaig fer i no el vaig necessitar però el deixo per si no es copien els arxius ocults):
      1. root@debian:~# cp -rav /mnt/old/* /mnt/new
      2. root@debian:~# cp -rav /mnt/old/.* /mnt/new
    5. Desmontem la partició antiga i executem un parell de comandes més
      1. root@debian:~# umount /mnt/old
      2. root@debian:~# mount -o bind /dev /mnt/new/dev
      3. root@debian:~# mount -t proc none /mnt/new/proc
    6. Ara cal fer chroot a la nova partició per instal·lar GRUB2:
      1. root@debian:~# chroot /mnt/new /bin/bash
      2. root@debian:~# grub-install /dev/sdz (ULL, vigilar amb amb la unitat, sdz és la que he posat per exemple. Notis que hem de posar el disc sencer és a dir sdz en comptes de lar partició, sdz1).
    7. Finalment només ens queda editar /etc/fstab i /boot/grub/grub.cfg i posar la nova partició tant al fstab (veure secció UUID d'aquest blog) i una nova entrada al grub de la partició (UUID i dispositiu de la partició, el sdX corresponent).

    Linux: Desxifrar converses del Whatsapp a HTML

    1. Treure arxius *.crypt del smartphone que estan a WhatsApp/Databases.
    2. Descarregar ActivePython de http://www.activestate.com/activepython/ (ara tinc la versió 2.7.6.9).
    3. Descomprimir i instal·lar amb (com a root): sh install.sh
    4. Instal·lar (via APT) Python si no el tenia.
    5. Descarregar Whatsapp Xtract (ara per ara tinc la versió 2.1) i descomprimir.
    6. Finalment executar: python whatsapp_xtract.py msgstore.db.crypt 

    I generarà un arxiu msgstore.db.html que es pot obrir amb qualsevol navegador i finalment podrem veure les converses.

    Blogs: Guardar TOT el contingut d'un blogger a un arxiu

    Com per perdre-ho ....

    Anem a Diseño (a dalt a la dreta de la pàgina principal del blog) / Configuración / Otros / Exportar blog / Descargar blog

    Ara ja tenim el nostre arxiu *.xml amb el nostre blog sencer. Ara obrim l'arxiu XML amb una extensió del Firefox que es diu XML Viewer i copiem els trossos d'article que vulguem en un arxiu en format HTML i llavors es podrà llegir bé, excepte algun problema amb els locales.

    Una altra opció per llegir-ho bé es convertir-ho a PDF en aquesta direcció http://blogbooker.com/
    Un cop a BlogBrooker, cliquem a "Blogger" i alla hi posem l'arxiu XML que ha generat l'exportació previament al blog, i posem la direcció del nostre blog. Després cliquem a "Create your BlogBook" i en qüestió d'alguns segons o minuts tindrem un arxiu PDF amb el nostre blog perfectament visualitzable.

    miércoles, 19 de marzo de 2014

    Linux: Comprovar velocitat de transferència del disc dur

    Tan senzill com fer:

    root@debian:~# for i in 1 2 3; do hdparm -tT /dev/sda; done


    canviant sda per la unitat que vulguem



    Amb aquest bucle de 3 repeticions podrem fer-nos la idea de la velocitat del nostre disc dur.


    Android: Com activar el mode "USB Debugging" a Android 4.3


    Step 1: Go to the setting in your Android Smart phone running Android 4.3. You will find the icon in your App Drawer.
    Step 2: Under Settings, look at the last option, it would be ‘About Phone’. Click that.
    Step 3: Under About Phone, you will see ‘Build Number’. Click that about seven times. this will enable Developer Options on your device.
    Step 4: Once you have developer options, come back to Settings and you will find Developer options just about ‘About Phone’.
    Step 5: Select Developer options and you will see the option to ‘USB Debugging’. Simply check that and you are have enabled USB Debugging on your device.

    Linux: Convertir arxius de vídeo de la càmara Sony Cybershot DSC-W550 a AVI per ser editable amb Avidemux

    Convertir utilitzant aquestes 2 úniques comandes i amb els mateixos paràmetres que s'indiquen en cada comanda:

    mencoder video.avi -oac lavc -lavcopts acodec=ac3 -ovc xvid -xvidencopts pass=1:chroma_opt:vhq=4:max_bframes=1:quant_type=mpeg:threads=5 -o /dev/null


    mencoder video.avi -oac lavc -lavcopts acodec=ac3 -ovc xvid -xvidencopts pass=2:chroma_opt:vhq=4:max_bframes=1:quant_type=mpeg:bitrate=3000:threads=5 -o video_sortida.avi


    Linux: Accedir a memòria interna d'un dispositiu amb Android amb ADB

    Passos:

    1. Connectem el telèfon al PC amb el cable que va a la corrent però la part que va a la corrent, ha d'anar a un port USB del PC.
    2. Cal tenir el mode "Depuració USB" activat. Veure ..................
    3. root@debian:~# adb shell
    4. Ara estem dins la memòria interna del smartphone. Podem fer diverses coses, inclos identificar-nos com a superusuari (su) dins d'ell.
    5. Si el que volem és COPIAR/extreure de fitxers del/al smartphone, hem de saber les rutes i tenir permisos. Per exemple si volem copiar algun fitxer a la ruta /storage/sdcard0/Download (ens assegurem que tenim permisos d'escriptura a Download), SORTIM de adb shell amb exit (si estavem identificats com a root, tornem a escriure exit) i: root@debian:~# adb push arxiu_que_volem_copiar /storage/sdcard0/Download 
    6. Si el que volem es COPIAR molts arxius, anem a una carpeta on estiguin TOTS els arxius que volem copiar i:  root@debian:~# adb push . /storage/sdcard0/Download/
    7. Si el que volem és EXTREURE arxius: root@debian:~# adb pull /storage/sdcard0/Download/arxiu_que_volem_copiar /ruta/on/volem/copiar/del/nostre/disc/dur
    8. Per EXTREURE molts arxius: root@debian:~# adb pull /storage/sdcard0/Download/. /ruta/on/volem/copiar/del/nostre/disc/dur

    Linux: Problemes amb so amb la tarjeta integrada SBx00 Azalia

    Sembla que tot està bén instal·lat i configurat però no hi ha so. El mòdul corresponent és el snd-hda-intel. En el meu cas va ser posar aquesta línia:

    options snd-hda-intel model=generic

    /etc/modprobe.d/alsa-base.conf i voilà ! Ja tinc audio.

    Linux: Creació molesta de la carpeta aptana_rubles a l'iniciar Aptana Studio 3

    Al iniciar Aptana Studio 3, el programa ens crea una carpeta molesta on ell vol (crec recordar que es a home però no n'estic segur). El cas es que per fer-la desapareixer primer n'haurem de crear una on vulguem (ha de ser llegible i escrivible) i després editar l'arxiu AptanaStudio3.ini que està dins la carpeta del Aptana Studio 3 afegir-hi la línia:
    -Dstudio.rubleUserLocation=/ruta/fins/on/tinguem/la/carpeta/aptana_rubles

    Linux: Afegir arquitectura a Dpkg

    Útil si volem instal·lar algun paquet que només està en una arquitectura que no és la nostra. Per exemple si tenim arquitectura amd64 però el paquet només està en i386. Fem simplement:

    root@debian:~# dpkg --add-architecture i386

    I després ja podrem instal·lar paquets d'arquitectura i386 a la nostra Debian d'arch. amd64.

    root@debian:~# apt-get update
    root@debian:~# dpkg arxiu_i386.deb

    Quan ens digui que falten paquets executem:

    root@debian:~# apt-get -f install

    Nota: Algunes opcions addicionals respecte arquitectures a Dpkg:

      --add-architecture <arch>        Add <arch> to the list of architectures.
      --remove-architecture <arch>     Remove <arch> from the list of architectures.
      --print-architecture             Print dpkg architecture.
      --print-foreign-architectures    Print allowed foreign architectures.

    Linux: Convertir fitxers M4a a Mp3

    Tan simple com fer un script (i donar-li permisos d'execució) que contingui el següent:
    #!/bin/bash
    for i in *.m4A
    do
    ffmpeg -i "$i" -ab 256k "${i%m4a}mp3"
    done


    Un altre mètode:
    apt-get install faad lame
    faad myfile.m4a
    lame myfile.wav myfile.mp3

    Linux: Flashejar BIOS

    Passos:
    1. Descarregar Flashrom està als repositoris de Debian (apt-get install flashrom).
    2. Per fer una copia de seguretat de la BIOS: root@debian:~# flashrom -r oldbios.bin
    3. Per flashejar la nova bios: root@debian:~# flashrom -w newbios.bin  (prèviament ens l'haurem d'haver descarregat).
    Nota: Si la BIOS està en format *.exe, la descomprimim amb qualsevol aplicació per descomprimir executables de Windows (cabextract, unshield, 7za).

    Linux: Canviar dependències d'un paquet DEB

    Passos:
    1. xddxdd@debian:~$ mkdir temp; dpkg-deb --extract paquet.deb temp
    2. xddxdd@debian:~$ dpkg-deb --control paquet.deb temp/DEBIAN
    3. Ara canviem les dependències que vulguem editant el fitxer temp/DEBIAN/control
    4. xddxdd@debian:~$ dpkg --build temp; mv temp.deb paquet.deb
    5. Ara ja tenim el nou arxiu DEB amb les dependències canviades.

    Linux: Algunes consideracions alhora d'imprimir a Linux

    • Per administrar CUPS: http://localhost:631/ 
    • Si Acroread no permet imprimir, instal·lar el paquet cups-bsd que està als repos de Debian.
    • Per configurar el tema de 2 cares (o 4) per full, executem system-config-printer (que es troba al paquet system-config-printer que està a les repos de la Debian també), sel·leccionar l'impressora / Impresora / Propiedades de la impresora (fins aquí a vegades surt automàticament només sel·leccionant l'impressora) / Opciones de trabajo / Paginas por cara. Pensem que quan anem a imprimir des de qualsevol programa, des d'allà també es podran modificar aquestes opcions.
    • Segons el controlador (es pot canviar a la pagina d'administració de CUPS) que utilitzem l'impressora actua d'una manera o altre. Hi ha 2 tipus de controladors que jo utilitzo:
      • CUPS+GUTENPRINT
      • FOOMATIC+GUTENPRINT-IJS
    • Joc de proves:
      • Utilitzant Okular:
        • 1. Si no toco res 'imprimeix 2 fulls per cara però sense ordenar (imprimeix 2 fulls perque a system-config-printer hi tinc 2 fulls per pàgina).
        • 2. Si imprimeix dient-li "Invertir páginas" m'imprimeix invertint (primer comença imprimint pel final).
      • Utilitzant Acroread:
        • 1. Sense tocar res. Amb Foomatic no imprimeix. Amb CUPS+Gutenprint si. I imprimeix 2 fulls per cara d'acord amb el que hi ha posat al system-config-printer a l'apartat  "Opciones de trabajo" i "Paginas por cara".
        • 2. Poso "Reverse Pages" i va igual que amb Okular i Foomatic.

    Linux: Compartir impressora

    Primer obrim /etc/cups/cupsd.conf amb qualsevol editor i afegim una línia Allow per als sistemes que vulguem que puguin accedir a la impressora. En aquest exemple donem accés a tots els sistemes que comencin per 192.168.1.

    # Only listen for connections from the local machine.
    #Listen localhost:631  
    Listen *:631
    Listen /var/run/cups/cups.sock
    <Location />
    Order Deny,Allow
    Deny From All
    Allow From 127.0.0.1
    Allow From 192.168.1.*
    </Location>

    I ara reiniciem CUPS:

    root@debian:~# /etc/init.d/cups restart

    Per agregar la impressora des d'una maquina amb Windows XP per exemple (Jo ho vaig fer desde un Windows XP que tinc en un VMware dins la mateixa màquina):

    -- IMPRESORA POR RED O CONECTADA A OTRO EQUIPO
       - RED DE MICROSOFT WINDOWS
          - BUSCAR UNA IMPRESORA
                - WORKGROUP/DEBIAN
                      - EPSON STYLUS DX3800

    Si no la troba pero arribem a WORKGROUP/DEBIAN llavors l'afegim manualment:

    http://192.168.1.195:631/printers/EPSON_Stylus_DX3800

    (canviant les IP si s'escau i l'impressora, per descomptat).

    Linux: Comandes útils per controlar impressora amb Escputil i dades útils

    NIVELLS TINTA -> root@debian:~# escputil -i -u -r /dev/usb/lp0 

    Nota: Si falta tinta a algun dels cartutxos, ja no es pot consultar els altres a Linux.

    IMPRIMIR PATRÓ DE PROVA -> root@debian:~# sudo escputil -n -u -r /dev/usblp0

    NETEJAR CAPÇALS -> root@debian:~# sudo escputil -c -u -r /dev/usblp0

    Nota: Si imprimeix fulls en blanc i en teoria tot està bé, el més probable és que els capçals estiguin bruts i s'hagi de netejar els capçals.

    Linux: Kill màxima prioritat

    Simplement

    xddxdd@debian:~$ kill -9 pid_del_procés

    Linux: Scripts d'inici de VMware

    Per si el sistema no ens arranca els mòduls de VMware per defecte, posar en un script d'arranc les següents comandes (per exemple podríem crear un script a /etc/init.d/ que es digués vmware-scripts, que es com ho tinc jo):

    #!/bin/bash
    modprobe vmmon
    modprobe vmnet
    modprobe vmblock
    modprobe vmci
    modprobe vsock
    vmware-networks --start


    I després donar-li permisos d'execució (chmod +x vmware-scripts).


    Nota: Potser després cal fer el següent:

    root@debian:~# update-rc.d script.sh defaults 99 
    Tal com suggereixo en aquest post:

    Linux: Problema a l'instal·lar qualsevol paquet amb APT.

    Si ens trobem el següent missatge de sortida a la consola:

    insserv:  loop involving service mountnfs-bootclean at depth 12
    insserv: There is a loop between service minissdpd and mountkernfs if started
    insserv:  loop involving service mountkernfs at depth 1
    insserv:  loop involving service vmware-USBArbitrator at depth 1
    insserv:  loop involving service kbd at depth 13
    insserv: exiting now without changing boot order!
    update-rc.d: error: insserv rejected the script header
    dpkg: error processing initscripts (--configure):
     subprocess installed post-installation script returned error exit status 1

    Per sol·lucionar-ho:

    root@debian:~# sudo mv /etc/init.d/vmware* ~/init.vmware/

    Linux: Formatar una partició a Linux

    Una vegada haguem creat una particio amb qualsevol gestor (gràfic per exemple gparted o mode consola tipus fdisk, cfdisk, etc.) cal donar format a la partició. A una partició de tipus ext3 o ext4
    es faria així:

    root@debian:~# /sbin/mkfs.ext4  /dev/sda3

    (o mkfs.ext3) en el cas de ext3.

    Linux: Problemes amb el driver del Kernel de la tarjeta Ethernet integrada RTL8111/8168B

    El driver que ve per defecte amb el Kernel 3.2.0-4-amd64 (no sé si amb d'altres també) no detecta la tarjeta Ethernet integrada següent:

    03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)

    Per fer la instal·lació de Debian (Vaig fer una netinst, baixar una imatge ISO mínima amb els paquets essencials i després descarregar a través d'Internet) vaig utilitzar una tarjeta Ethernet externa. Un cop feta la instal·lació, per configurar la tarjeta integrada en qüestió que el Kernel no detecta, vaig haver de descarregar el següent arxiu:

    ftp://WebUser:n8W9ErCy@209.222.7.36/cn/nic/r8168-8.035.00.tar.bz2

    descomprimir-lo (tar jxfv arxiu.tar.bz2), i després compilar el nou mòdul, ja que el problema és que el mòdul (corresponent a la tarjeta) que ens ve amb el Kernel, no ens serveix per detectar-la:

    root@debian:~# sh autorun.sh
    root@debian:~# modprobe r8168

    i després editar /etc/network/interfaces amb (ULL, per saber l'identificador de la tarjeta cal executar primer com a ROOT un ifconfig. En el meu cas, el meu id és eth1:

    allow-hotplug eth1
    iface eth1 inet dhcp

    i tot seguit:

    root@debian:~# /etc/init.d/networking restart

    Nota: Primer cal descarregar el mòdul del Kernel que hi havia abans per la Ethernet (el r8169), això no se si ho fa el autorun.sh o ho vaig fer manualment amb rmmod.

    Linux: Problemes d'audio amb una tarjeta Radeon HD 3000-3300 integrada

    Tenint la següent tarjeta d'audio (integrada a la mobo, com la de vídeo):

    01:05.1 Audio device: Advanced Micro Devices [AMD] nee ATI RS780 HDMI Audio [Radeon HD 3000-3300 Series]

    Després d'una instal·lació de Debian ens trobem que malgrat tenir instalats els moduls de SO (ALSA i/o PulseAudio), no tenim so (a qualsevol mesclador no veiem els canals). Això es soluciona afegint la següent linea a /etc/modprobe.d/alsa-base.conf:

    options snd-hda-intel index=0 model=auto

    A més a més, és probable que l'audio de la sortida HDMI no funcioni. Sol·lució: Editar aquest arxiu /etc/default/grub i canviar la següent linea:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    per
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.audio=1"

    i tot seguit actualitzem el grub.

    root@debian:~# update-grub

    Linux: Problema resolució 1360x768

    Tenint la següent tarjeta de vídeo (integrada a la mobo):

    01:05.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RS780L [Radeon HD 3000]

    Tenia el problema que a l'iniciar el KDM la pantalla feia pampallugues.
    Solució: Deixar l'arxiu /etc/kde4/kdm/Xsetup així:

    #! /bin/sh
    # Xsetup - run as root before the login dialog appears


    #xconsole -geometry 480x130-0-0 -notify -verbose -fn fixed -exitOnFail -file /dev/xconsole &

    xrandr --newmode "1360x768_60.00" 84.75 1360 1432 1568 1776 768 771 781 798 -hsync +vsync
    xrandr --addmode HDMI-0 1360x768_60.00                                                                                                                                 
    xrandr --output HDMI-0 --mode 1360x768_60.00                                                                                                                           
    xrandr --addmode DVI-0 1360x768_60.00                                                                                                                                  
    xrandr --output DVI-0 --mode 1360x768_60.00

    NOTA: Ara no sé perque quan miro com tinc editat aquest fitxer ho tinc a l'inrevès: la única línia no comentada és la que comença per "xconsole" i les 5 de "xrandr" les tinc comentades.