Category Archives: Fedora

Cómo reducir el tamaño de una imagen tomada de un sd

A veces tienes instalado en una SD o microSD un Linux.

Por ejemplo raspbian o raspberry os, o armbian. Y quieres guardar una imagen de esa instalación.

La insertamos en nuestra laptop con Linux y, supongamos que ve a la microSD de 16GB de almacenamiento, con tu raspbian instalado como /dev/sda

Procedemos a desmontar las particiones que seguramente nuestro Linux montó automáticamente:

umount /dev/sda1 (y ejecutamos lo mismo para sda2, sda3, etc)

Entonces haces:

dd if=/dev/sda of=raspbian.img bs=4M

y te queda una bella imagen “raspbian.img” del tamaño de la SD (16GB en mi caso hipotético).

Lo más seguro es que de esos 16GB, al menos 12 o 13 estén vacíos. Por gusto tenemos horrendo archivote!. Si pudiéramos recortar ese espacio que está de más.

Porque además, supón que mañana quieres copiar la misma imagen a una SD más pequeña, de 4GB… 16GB no caben en una SD de 4GB. Pero si tuviéramos una imagen de, digamos 3GB, esta cabría en una SD de 4GB, de 8GB, etc.

Lo que podemos hacer es un peque proceso, a mi forma, para cortar, quitar, todo ese pedazo que nos sobra.

Para ello, con la SD desmontada ejecuto:

sudo udisksctl loop-setup -f raspbian.img

Este paso anterior nos crea un loop0 al que podremos manipular:

sudo gparted /dev/loop0

Me mostrará algo así:

Como vemos, el espacio usado en la última partición (que es la única en mi caso) es el de amarillo, el resto, 12.37GiB están vacíos.

Procedo a redimensionar

Como puedes ver, escojo dejar un poco de espacio libre (en blanco), el tamaño nuevo de la partición me queda en mi caso en 2978MiB. Me quedará un gran pedazo de espacio al final libre (12212 en mi caso):

Y ahora aplico los cambios, este proceso demorará un poquito, de acuerdo a cuán rápida sea la SD:

Ahora, a este mismo loop (/dev/loop0 en mi caso) procedo a validar cuál es el último sector usado:

Ok, en mi caso, la SD tiene 31116288 sectores en total (ver arriba a la derecha) y la última partición va hasta el sector debajo de “Final”: 6107135

Puedo entonces truncar desde el 6107136 en adelante. Se suma 1 a 6107135 porque el conteo de sectores comienza en 0.

Primero borro el loop:

sudo losetup -d /dev/loop0

Y ahora trunco la imagen:

truncate --size=$[(6107135+1)*512] armbian-radio.img

La imagen resultante va a ser de aproximadamente el valor al que redimensionaste en gparted. En mi caso me quedó de 3GB.

Verificando el proceso

Ahora puedo escribir la imagen hacia otra flash. Y hasta será muy rápido el proceso pues en mi caso son 3GB a escribir y no 16!

sudo dd if=raspbian.img of=/dev/sda bs=4M
745+1 registros leídos
745+1 registros escritos
3126853632 bytes (3,1 GB, 2,9 GiB) copied, 230,285 s, 13,6 MB/s

Voló!

Y saco y vuelvo a insertar mi SD y mira:

Efectivamente reporta unos 3GB! Con un poquito de espacio libre.

Si quisiera, puedo redimensionar la partición a los 16GB de mi SD:

sudo umount /dev/sda1

sudo gparted /dev/sda

A veces mejor dejarle libre unos 8MB al final.

How to upload to e-qsl from Linux shell

So, for example: you are using WSJT-X and would like to automatically upload your new contacts from your Linux to EQSL.

WSJT-X store its logs in ~/.local/share/WSJT-X/wsjtx_log.adi

I have created a small script to check if wsjtx_log.adi has been modified, extract the last 2 QSO from the file to a temporary file and upload that file to eQSL, here is how:

git clone https://github.com/hc6pe/adifupload.git
cd adifupload
chmod +x adifupload.sh

Edif adifupload.sh and change ADIFILE, EQSLUSER and EQSLPASS to suit your needs:

vi ~/adifupload/adifupload.sh
....
#Where is your .adi file located? 
#Specify the full path (change YOURUSERNAME):
ADIFILE="/home/YOURUSERNAME/.local/share/WSJT-X/wsjtx_log.adi"
#your eQSL username. Use CAPS altough I think
# lowercase will work as well
EQSLUSER="N0CALL"
#your EQSL password.
EQSLPASS="not-my-pass"
...

And add a crontab task to start adifupload.sh on every reboot (change YOURUSERNAME to your user’s home dir):

crontab -e
@reboot /home/YOURUSERNAME/adifupload/adifupload.sh

Now, the script will start on your next reboot. And keep started checking if your ADIFILE has changed, if it notice it has changed, then it will upload the last 2 lines of the files (just in case it missed the previous upload).

Of course, if you have “massaged” the logfile, for example updating some QSO info (date, time, band, etc), this script will not upload the changed QSOs unless it is one of the last 2 lines.

So I suggest, from time to time, to do a full upload of your adif file by signing into eQSL.cc and do a manual upload. This way you may catch any missing to upload QSO.

Compiling and installing wsjt-x for Fedora-20 and Fedora-21

Hi, this tutorial is my first step to create an rpm package for wsjt-x for Fedora.

I started trying to understand the somehow cryptic instructions written here:

http://www.physics.princeton.edu/pulsar/K1JT/wsjtx-doc/wsjt-dev-guide.html

In fact it has a small problem: when you try to svn using berlios, it fails.

I guess somehow the script is old and the code no longer resides in berlios.

The other small issue is that the instructions in that document are for debian-like distros. I guess they actually like ubuntu and/or debian and Fedora looks unstable for them. It is their right to use any other Linux distro.. and ours to use Fedora.

For me, and for several others, Fedora has been running very very well for years (I’ve been using it since Fedora-9) so with little effort we can “port” the instructions to Fedora and enjoy wsjt-x in such a wonderful distro.

Im running Fedora-20 now, but I guess this instructions will work for Fedora-18, Fedora-19 and the future Fedoras.

and yes, I will try to create an rpm package for easier distribution.. later. as of now, you can follow the instructions in this page:

Instructions

This was the hardest part: To discover the needed packages for compiling wsjt-x. I had to go over the compile process once and again until I was able to discover the needed packages for fedora. You will install these ones:

yum install hamlib hamlib-devel cmake qt5-qtbase qt5-qtbase-devel subversion \
qt5-qtmultimedia qt5-qtmultimedia-devel gcc-gfortran gcc-c++ ftw fftw-devel glibc.i686 gcc-libgfortran.i686 libgfortran.i686

why glibc.i686 and gcc-libgfortran.i686? Well, almost everybody runs 64-bits Linux in these ages, but there is some proprietary program called kvasd that wsjtx needs. And kvasd is compiled for 32-bits arch as of now.

The other packages are needed for wsjtx to run, and the *-devel are needed for it to compile.

If you notice Im missing some other packages, it is because I compiled in a non-clean system, I mean, I ran it in a system I used to work from time to time so some packages could have been installed previously.. so let me know if you notice Im missing some packages to be installed.

Downloading the source code

this is easy, we use svn to download the code onto some dir:

cd
mkdir wsjt-env
cd wsjt-env
svn co svn://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx
export BUILD_DIR=~/wsjt-env/wsjtx
cd wsjtx
export rev_num=`egrep “Rev:” mainwindow.cpp |awk ‘{print $4}’`

We first went to our $HOME dir. Then created wsjt-env and cd to wsjt-env.

Then we downloaded, using svn, the latest source code.

We exported the variable BUILD_DIR to match the directory where the source code was downloaded.

Finally we moved to wsjtx and stored in rev_num the current revision number. (I had to change the way we obtain the revision number from the original script).

Compiling

Compiling is easy as well.. if all packages are already installed, then you should simply follow these steps:

cd lib
make -f Makefile.linux
cd ..
export QT_SELECT=qt5
qmake-qt5
j_c=$(grep -c ^processor /proc/cpuinfo)
make -j$j_c

If you had some errors, it means we are missing to install some packages.. let me know.

If everything went ok… let “install” wsjtx:

Installing wsjtx

cd ..
mv ./wsjtx-$rev_num ./wsjtx-$rev_num-$(date +%F-%H%M) &> /dev/null
mv ./wsjtx_install ./wsjtx-$rev_num
cd ./wsjtx-$rev_num
cp ../wsjtx/*.dat ../wsjtx/*.txt ./
# you can download cty.dat directly from country-files.com
# rm -f cty.dat
# wget http://www.country-files.com/cty/cty.dat
cp -R ../wsjtx/Palettes/ ../wsjtx/samples/ ./
rm ./CMake*
rm -rf ../wsjtx

And we are done.. we can start wsjtx by doing this:

./wsjtx

donw forget to remember where this binary is located so you can start it later:

pwd

 

Instalando laserjet 100 color mfp m175a en Fedora-20

Bueno, un cliente adquirió una impresora HP LaserJet 100 color MFP M175a y deseaba que yo le instalara en Fedora.

Esta es una impresora Láser a Color, con escaner y lógicamente copiadora.

Primero intenté lo más trivial fotocopiar, y sí, fotocopia, luego imprimir, me fui a agregar impresoras en Fedora y le agregó, e imprimí una paginita de prueba. Todo feliz hasta el momento.

Cuando quise escanear .. ahi fue el peque problema. Para el que no escanee, todo está bien y feliz, pero si escaneas no funciona.

Probé con un programa llamado “Simple Scan” y le ve al scanner, pero cuando intentas escanear, falla, da un error diciendo que no puede acceder al escanner.

Instalé el xsane, a la final es el programa que me gusta para escanear:

sudo yum install hplip-common xsane sane-backends*

Y al arrancar el xsane, detecta el scanner, pero igualmente falla con un error raro o básico ahi.

Entonces me fui al sitio de HP y busqué bajar el driver de esta impresora, al escoger Linux me llevó al sitio de hplip (http://hplipopensource.com/node/309) y al buscar información sobre la impresora, me da la noticiota de que esta impresora requiere un driver propietario para que funcione en Linux.

A los que son puristas y no pueden usar por cuestiones morales drivers propietarios… aqui acabaría el post. A los que compraron la impresora y no la pueden devolver ya.. pueden probar esto:

Instalas hplip-gui que es el progrma que se encarga de bajar el driver propietario de HP para esta impresora:

sudo yum install hplip-gui

Luego ejecutas:

hp-setup

ahi escoges el tipo de conexión (USB, la primera) y luego escoges la impresora en la siguiente página.. entonces le dices que baje automáticamente el driver adecuado para la impresora, luego de unos segundos lo baja y te pedirá instalar la impresora. En este paso yo eliminé la impresora que había instalado anteriormente (ver más arriba al inicio) y entonces le dije que sí, que le instalara. Y listo, le instaló la impresora.

Luego de esto el xsane funcionó de una y sin ningún inconveniente. No he probado la impresora todavía pero supongo funcione bien.

 

Primeras impresiones sobre RHEL-7-beta1

Salió hace pocos días, no había tenido tiempo de probarle, pero aquí van mis comentarios iniciales.

Le bajé el ISO que, a propósito es sólo 64bits, RHEL-7 no vendrá con soporte de 32 bits. Y la verdad es que, el que tenga 32bits, podrá seguir usando su hardware con la versión 6 de CentOS o RHEL hasta el 2020, suficiente tiempo pienso yo. No dudo tampoco que alguien se aloque y lance CentOS-7 para 32bits, pero eso habría que verle.

Por otro lado, la verdad es que ningún hardware que se vende para servidores (recordar que RHEL y CentOS son para servidores) ya viene con 32bits. No es que se ve un equipo de 32bits estos días como servidor muy fácilmente. De hecho ya CentOS-6 venía con el sistema de virtualización SOLO para 64bits, si tu instalabas CentOS-6 de 32bits, no ibas a virtualizar nada ahi.

Le instalé dentro de una máquina virtual de KVM. Este KVM está en CentOS-6.5, le puse 1GB de RAM, 2 procesadores y 30GB en disco.

La interfaz del instalador parece la de fedora-18 ó fedora-19 mejor dicho. Es de esa pantalla que te aparece todo ahi mismo, vas dando click en las entradas y escogiendo diversas cosas (disco de instalacion, tipo de instalación, etc) pero toda en la misma pantalla. Es algo que particularmente no me gustaba de fedora, pero bueno, le han adoptado y habrá que acostumbrarse.

De todas formas la idea sigue siendo la misma de toda la vida de RedHat: preguntarte todo lo que te tenga que preguntar al inicio. No hay nada más pesado que esos instaladores que instalan un buchito de cosas, y se detienen a preguntarte tu clave.. para luego seguir y luego de 2 minutos preguntarte el idioma, y luego de 2 más preguntarte el tipo de partición y así tenerte castigado durante todo el proceso de instalación pues tienes que responder preguntas.

En el idioma de instalación, está en Español, aunque cuando le escogí me falló 2 ó 3 veces luego durante la instalación, pero no sé si es que fallaba por el idioma o por el tipo de particionamiento que le escogí con LVM-thin-provisioning… en todo caso cuando instalé en Inglés y sin thin-provisioning me funcionó.

Por defecto te propone escoger instalación mínima, excelente!

Al finalizar de instalar, la consola de texto ya no viene con 80×25  el tamano, sino que viene con otro tipo de letra muy pequeño, me dió bastante dificultad leerle porque dentro de KVM aún más pequeño se veía todo.

Al entrar, lo primero que hice fue tratar de encontrar la IP para entrar inmediatamente por ssh porque el tipo de letra es bieeeen pesado de leer para mi. Así que puse ifconfig y.. pum.. no viene instalado! En serio.. quizá networkmanager tenga otra forma de ver las interfaces, pero todavía no le conozco. Oh sí.. proponen NetworkManager aún para instalaciones via línea de comando!

Bueno, mejor aún, no había red activada así que puse ifup eth0.. pero de todas formas el misterio de la IP persistía no?

yum provides */ifconfig

para averiguar dónde estaba.. me sale el yum conque el sistema no está registrado en la red de redhat.. caramba, es la falta de costumbre, con centos todo es más fácil eh?

así que ejecuté

subscription-manager register

Y usé mi cuenta, dice redhat que no es necesario haber tenido una cuenta, que con

subscription-manager register –autosubscribe

Te iba a autosuscribir de una.

De todas formas el yum ahora me decía que no había ningún canal activo. Yo entro en shock cuando no entiendo esas cosas.. qué es un canal? entrar al sitio de redhat a averiguar? En lo que lo abría tuve a bien editar /etc/yum.repos.d/rhel.repo y cambiar enabled=1 en el primer repo el de redhat.. y ahí sí! al fin así puse usar

yum provides */ifconfig

El paquete es: net-tools, entonces puse

yum install net-tools

Y ya! Al fin ifconfig!! ahi pude averiguar mi ip, 9 minutos. Bueno, tampoco es que andaba de apremio 😉

Veamos algunas características:

[root@localhost ~]# w
11:53:31 up 9 min,  1 user,  load average: 0.01, 0.08, 0.07
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0     11:53    3.00s  0.04s  0.02s w
[root@localhost ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Everything release 7.0 Beta (Maipo)

buen consumo de ram:

[root@localhost ~]# free -m
total       used       free     shared    buffers     cached
Mem:           994        429        564          1          1        285
-/+ buffers/cache:        142        851
Swap:         2079          0       2079

Lista de procesos:

[root@localhost ~]# ps axf
PID TTY      STAT   TIME COMMAND
2 ?        S      0:00 [kthreadd]
3 ?        S      0:00  \_ [ksoftirqd/0]
4 ?        S      0:00  \_ [kworker/0:0]
5 ?        S<     0:00  \_ [kworker/0:0H]
6 ?        S      0:00  \_ [kworker/u4:0]
7 ?        S      0:00  \_ [migration/0]
8 ?        S      0:00  \_ [rcu_bh]
9 ?        S      0:00  \_ [rcuob/0]
10 ?        S      0:00  \_ [rcuob/1]
11 ?        S      0:00  \_ [rcu_sched]
12 ?        S      0:00  \_ [rcuos/0]
13 ?        S      0:00  \_ [rcuos/1]
14 ?        S      0:00  \_ [watchdog/0]
15 ?        S      0:00  \_ [watchdog/1]
16 ?        S      0:00  \_ [migration/1]
17 ?        S      0:00  \_ [ksoftirqd/1]
19 ?        S<     0:00  \_ [kworker/1:0H]
20 ?        S<     0:00  \_ [khelper]
21 ?        S      0:00  \_ [kdevtmpfs]
22 ?        S<     0:00  \_ [netns]
23 ?        S<     0:00  \_ [writeback]
24 ?        S<     0:00  \_ [kintegrityd]
25 ?        S<     0:00  \_ [bioset]
26 ?        S<     0:00  \_ [kblockd]
27 ?        S      0:00  \_ [khubd]
28 ?        S<     0:00  \_ [md]
31 ?        S      0:00  \_ [kswapd0]
32 ?        SN     0:00  \_ [ksmd]
33 ?        SN     0:00  \_ [khugepaged]
34 ?        S      0:00  \_ [fsnotify_mark]
35 ?        S<     0:00  \_ [crypto]
44 ?        S<     0:00  \_ [kthrotld]
46 ?        S<     0:00  \_ [kmpath_rdacd]
47 ?        S      0:00  \_ [kworker/1:1]
48 ?        S<     0:00  \_ [kpsmoused]
49 ?        S<     0:00  \_ [deferwq]
50 ?        S      0:00  \_ [kworker/1:2]
55 ?        S      0:00  \_ [kauditd]
214 ?        S      0:00  \_ [kworker/0:2]
215 ?        S      0:00  \_ [kworker/u4:2]
217 ?        S<     0:00  \_ [ata_sff]
220 ?        S      0:00  \_ [scsi_eh_0]
221 ?        S      0:00  \_ [scsi_eh_1]
231 ?        S<     0:00  \_ [ttm_swap]
244 ?        S<     0:00  \_ [kworker/0:1H]
307 ?        S<     0:00  \_ [kdmflush]
308 ?        S<     0:00  \_ [bioset]
310 ?        S<     0:00  \_ [kdmflush]
311 ?        S<     0:00  \_ [bioset]
329 ?        S<     0:00  \_ [xfsalloc]
330 ?        S<     0:00  \_ [xfs_mru_cache]
331 ?        S<     0:00  \_ [xfslogd]
332 ?        S<     0:00  \_ [xfs-data/dm-1]
333 ?        S<     0:00  \_ [xfs-conv/dm-1]
334 ?        S<     0:00  \_ [xfs-cil/dm-1]
335 ?        S      0:00  \_ [xfsaild/dm-1]
339 ?        S<     0:00  \_ [kworker/1:1H]
443 ?        S      0:00  \_ [vballoon]
472 ?        S<     0:00  \_ [hd-audio0]
475 ?        S<     0:00  \_ [xfs-data/vda1]
476 ?        S<     0:00  \_ [xfs-conv/vda1]
477 ?        S<     0:00  \_ [xfs-cil/vda1]
478 ?        S      0:00  \_ [xfsaild/vda1]
9143 ?        S      0:00  \_ [kworker/1:0]
1 ?        Ss     0:01 /usr/lib/systemd/systemd –switched-root –system –d
394 ?        Ss     0:00 /usr/lib/systemd/systemd-journald
406 ?        Ss     0:00 /usr/sbin/lvmetad
429 ?        Ss     0:00 /usr/lib/systemd/systemd-udevd
491 ?        S<sl   0:00 /sbin/auditd -n
508 ?        Ssl    0:01 /usr/bin/python /usr/sbin/firewalld –nofork –nopid
511 ?        Ss     0:00 avahi-daemon: running [linux.local]
535 ?        S      0:00  \_ avahi-daemon: chroot helper
512 ?        Ssl    0:00 /sbin/rsyslogd -n
513 ?        Ss     0:00 /usr/sbin/irqbalance –foreground
515 ?        Ssl    0:00 /usr/bin/python -Es /usr/sbin/tuned -l -P
516 ?        Ss     0:00 /usr/lib/systemd/systemd-logind
518 ?        Ssl    0:00 /bin/dbus-daemon –system –address=systemd: –nofork
523 ?        Ss     0:00 /usr/sbin/crond -n
565 ?        Ss     0:00 /sbin/iprinit –daemon
568 ?        Ss     0:00 /sbin/iprupdate –daemon
588 ?        Ss     0:00 /sbin/iprdump –daemon
736 ?        Ssl    0:00 /usr/sbin/NetworkManager –no-daemon
9052 ?        S      0:00  \_ /sbin/dhclient -d -sf /usr/libexec/nm-dhcp-helper
776 ?        Ssl    0:00 /usr/lib/polkit-1/polkitd –no-debug
827 ?        Ss     0:00 /usr/bin/rhsmcertd
932 ?        Ss     0:00 /usr/sbin/sshd -D
9168 ?        Ss     0:00  \_ sshd: root@pts/0
9172 pts/0    Ss     0:00      \_ -bash
9194 pts/0    R+     0:00          \_ ps axf
1402 ?        Ss     0:00 /usr/libexec/postfix/master -w
1418 ?        S      0:00  \_ pickup -l -t unix -u
1419 ?        S      0:00  \_ qmgr -l -t unix -u
9189 tty1     Ss+    0:00 /sbin/agetty –noclear tty1

networkmanager! me va a dar un ataquito.. tendré que aprenderle a usar en CLI, la herramienta de CLI anterior era horrible, espero la hayan mejorado! Aunque leí en algún lado que podías seguir usando el viejo network

firewalld, es de investigar espero sea fácil, por el sitio de fedora encontré un howto

Usan postfix.. bien! Aunque si deseas, está sendmail en la lista de paquetes, tal y como estaba en CentOS-6, pero leí que en las siguientes versiones (RHEL-8?) posiblemente saquen a sendmail de la lista de paquetes

Estilo Fedora, usan cgroup, así que parece que ahora sí en serio debemos ponernos para esto.

El Filesystem que proponen usar ya no es ext4, dicen que con XFS es mejor el desempeño así que usan xfs de filesystem.

Tienen algo nuevo: LVM-thin-provisioning, quise instalar pero fallaba, como comenté anteriormente no sé si fue el idioma o esto.

ifconfig, nada nuevo, tengo ipv6

[root@localhost ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 172.30.60.146  netmask 255.255.255.0  broadcast 0.0.0.0
inet6 2800:68:a:60:5054:ff:fe7d:69fb  prefixlen 64  scopeid 0x0<global>
inet6 fe80::5054:ff:fe7d:69fb  prefixlen 64  scopeid 0x20<link>
ether 52:54:00:7d:69:fb  txqueuelen 1000  (Ethernet)
RX packets 13314  bytes 13408407 (12.7 MiB)
RX errors 0  dropped 63  overruns 0  frame 0
TX packets 3400  bytes 508908 (496.9 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
inet 127.0.0.1  netmask 255.0.0.0
inet6 ::1  prefixlen 128  scopeid 0x10<host>
loop  txqueuelen 0  (Local Loopback)
RX packets 64  bytes 5952 (5.8 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 64  bytes 5952 (5.8 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

consumo de disco:

[root@localhost ~]# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   28G  828M   27G   3% /
devtmpfs               491M     0  491M   0% /dev
tmpfs                  498M     0  498M   0% /dev/shm
tmpfs                  498M  1.7M  496M   1% /run
tmpfs                  498M     0  498M   0% /sys/fs/cgroup
/dev/vda1              484M   92M  392M  20% /boot

bueno, 828M está muy bien.

servidor web? httpd-2.4.6, nada de hiawatha, ni nginx, ni lighttpd

php? 5.4.16

Usa systemd, ya no usa chkconfig (no dudo que haga el truco que fedora hace para reconocer los antiguos comandos)

iptables, puerto 22, 546 y 631 abiertos, tanto en ipv6 como en ipv4.

kernel?

uname -rv
3.10.0-54.0.1.el7.x86_64 #1 SMP Tue Nov 26 16:51:22 EST 2013

3.10.0, qué pena que no fue el 3.11 for WorkGroups! Me hubiera divertido durante tantos años!

Qué hago si no hay mysql en CentOS-7 ??? Hace tiempo vengo usando mariadb.. así que mejor que mejor ya RHEL-7 viene con MariaDB!

[root@localhost ~]# yum list mysql*
Loaded plugins: product-id, subscription-manager
This system is registered to Red Hat Subscription Management, but is not receiving updates. You can use subscription-manager to assign subscriptions.
Available Packages
MySQL-python.x86_64                       1.2.3-8.el7                  rhel-beta
mysql-connector-java.noarch               1:5.1.25-2.el7               rhel-beta
mysql-connector-odbc.x86_64               5.2.5-2.el7                  rhel-beta
[root@localhost ~]# yum list maria*
Loaded plugins: product-id, subscription-manager
This system is registered to Red Hat Subscription Management, but is not receiving updates. You can use subscription-manager to assign subscriptions.
Installed Packages
mariadb-libs.x86_64                     1:5.5.33a-3.el7            @anaconda/7.0
Available Packages
mariadb.i686                            1:5.5.33a-3.el7            rhel-beta
mariadb.x86_64                          1:5.5.33a-3.el7            rhel-beta
mariadb-bench.x86_64                    1:5.5.33a-3.el7            rhel-beta
mariadb-devel.i686                      1:5.5.33a-3.el7            rhel-beta
mariadb-devel.x86_64                    1:5.5.33a-3.el7            rhel-beta
mariadb-embedded.i686                   1:5.5.33a-3.el7            rhel-beta
mariadb-embedded.x86_64                 1:5.5.33a-3.el7            rhel-beta
mariadb-embedded-devel.i686             1:5.5.33a-3.el7            rhel-beta
mariadb-embedded-devel.x86_64           1:5.5.33a-3.el7            rhel-beta
mariadb-libs.i686                       1:5.5.33a-3.el7            rhel-beta
mariadb-server.x86_64                   1:5.5.33a-3.el7            rhel-beta
mariadb-test.x86_64                     1:5.5.33a-3.el7            rhel-beta

Eso es todo por el momento sobre RHEL-7 , te imaginarás que en 10 minutos (de los cuales la mayoría los pasé tratando de encontrar el ifconfig) no puedo ver mucho más, pero me pinta bien y fácil, ciertos cambios que son naturales y hay que asumirlos pues parece que es el camino.

Cómo agilizar las actualizaciones de CentOS y Fedora

Si usas CentOS, RHEL o Fedora, hay un plugin de yum muy bueno llamado yum-presto que lo que hace es bajar solamente las porciones de los paquetes rpm que le tocaría actualizar.

Digamos tienes un paquete X-1, y CentOS te indica que ya está la versión X-1.1… normalmente lo que hacen las distribuciones es bajar completamente X-1.1 y actualizar verdad?

Ahora, supongamos que entre X-1 y X-1.1 sólo haya cambiado no sé, digamos 10 bytes de un archivo (es un ejemplo), qué tal que  en vez de bajar TODO X-1.1, se baje simplemente la diferencia que hay entre X-1.1 y X-1

Para esto es yum-presto. yum-presto analiza las diferencias entre las dos versiones: la instalada y la actualizada; y solamente baja lo que cambió, y aplica estos cambios al sistema.

Qué ventaja obtenemos? Que se reduce el tamaño de las actualziaciones, si antes tenías que bajar 300MB por ejemplo.. ahora quizá tengas que bajar los diff, y estos diffs sean solamente el 10% de estos 300MB.. es decir 30MB.

Realiza cualquier cálculo : supón hayan 40MB de actualizaciones, pero en diffs solamente tengas que bajar digamos 8MB..

Ventajas: baja más rápido las actualizaciones. Mucho más. Por tanto ya se acaba la queja de que actualizar es lento.

Desventajas? : hay una y es que para actualizar primero tiene que hacer cierto procesamiento en tu máquina con el delta .. es decir, toma el diff, lo incorpora dentro del paquete anterior y ese es con el que actualiza. Lo que consume un poquito de tiempo de procesador. Tampoco es una cantidad absurda o lenta, pero se demorará un poco. Es decir, cambiamos la velocidad de bajada, por un breve consumo de procesador mientras le utilizamos. Es totalmente aceptable y la experiencia termina siendo positiva en efecto.

Cómo usamos yum-presto? Muy simple, le instalamos:

yum install yum-presto

Y ya, de ahora en adelante, tus actualizaciones verás que se dividen en dos partes:

  1. se bajan los deltas. Son archivos con extensión .drpm
  2. se bajan los que no tenían deltas. Porque algunos tienen tantos cambios que no es rentable tener un delta y mejor bajarlos completo.

Pruébalo:

yum update

y analiza cómo van pasando los delta.

Reduciendo uso de recursos en raspberry pi con pidora, el Fedora para raspberry

Fedora tiene su distribución compilada para raspberry pi, que a la final es un procesador ARM.

Fedora instaló bien, bacán, pero hay ciertas cosas que una vez entrado al sistema te van sobrando. Yo le quiero usar solamente por CLI y por tanto networkmanager, gnome, ni nada de eso me interesa.

Cómo le quité? Pues aquí va un detalle:

primero le configuro la red para que no use NetworkManager, para ello activé el servicio network y desactivé el de NetworkManager:

chkconfig network on

chkconfig NetworkManager off

entonces edité el archivo /etc/sysconfig/network-scripts-ifcfg-eth0 y dentro le dejé configurado así, con la IP que le puse de mi red:

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

Fíjate que está todo bien configurado y que NM_CONTROLLED=no

Aquí tocó reiniciar pues el networkmanager apaga la red, o entrar via línea de comando y arrancar la red.

Luego de reiniciado el equipo, debes tener conectividad, procedemos a apagar servicios y paquetes innecesarios:

yum erase bluez PackageKit polkit

yum grouperase “Office/Productivity” “Sound and Video” “Electronic Lab” “Administration Tools”

Y entonces apago algunos servicios que no me hacen falta:

service sendmail stop
chkconfig sendmail off
service messagebus stop
chkconfig messagebus off

luego reinicio, y el raspberry queda usando unos 18mb de ram. Mira:

Fedora tiene su distribución compilada para raspberry pi, que a la final es un procesador ARM.

Fedora instaló bien, bacán, pero hay ciertas cosas que una vez entrado al sistema te van sobrando. Yo le quiero usar solamente por CLI y por tanto networkmanager, gnome, ni nada de eso me interesa.

Cómo le quité? Pues aquí va un detalle:

primero le configuro la red para que no use NetworkManager, para ello activé el servicio network y desactivé el de NetworkManager:

chkconfig network on

chkconfig NetworkManager off

entonces edité el archivo /etc/sysconfig/network-scripts-ifcfg-eth0 y dentro le dejé configurado así, con la IP que le puse de mi red:

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

Fíjate que está todo bien configurado y que NM_CONTROLLED=no

Aquí tocó reiniciar pues el networkmanager apaga la red, o entrar via línea de comando y arrancar la red.

Luego de reiniciado el equipo, debes tener conectividad, procedemos a apagar servicios y paquetes innecesarios:

yum erase bluez PackageKit polkit

yum grouperase “Office/Productivity” “Sound and Video” “Electronic Lab” “Administration Tools”

Y entonces apago algunos servicios que no me hacen falta:

service sendmail stop
chkconfig sendmail off
service messagebus stop
chkconfig messagebus off

luego reinicio, y el raspberry queda usando unos 18mb de ram. Mira:

 [root@raspi ~]# free -m
total       used       free     shared    buffers     cached
Mem:           436         58        377          0          8         31
-/+ buffers/cache:         18        417
Swap:            0          0          0

Resumen de redsleeve un port del PNAELV para ARM

En resumen: está prácticamente abandonado, tiene pocos rpm, el autor no indica cómo está compilando los paquetes (para seguir el formato y tratarle de ayudar). Voy a probar pidora a ver qué tal, dicen que está bastante completo.

Cómo capturar un video de tu pantalla en fedora con ffmpeg?

Bueno, necesito capturar un video de lo que hago en mi pantalla de Fedora Linux en formato mpeg4, así me lo requieren. Comprendo que, y he usado, recordmydesktop, maravilloso. Pero requieren que tome un video en mpeg4. Cómo hacer?

Antes tenía a xvidcap, pero esta aplicación parece que la han dejado abandonada hace un tiempo, desde el 2008 no sacan nada nuevo y desde fedora 16 ó 17 no compila bien.

Así que me puse a leer, buscar, copiar, probar, etc.. y logré con una línea de comando de ffmpeg que me permite capturar la pantalla como deseo:

ffmpeg -f x11grab -r 24 -s 1366×768 -i :0.0 -preset ultrafast -qp 0 -sameq video.mp4

Estoy capturando a -r 24 (24 frames por segundo), estoy capturando toda la pantalla (1366×768, podrías probar con otras resoluciones). Estoy capturando :0.0 que es mi primera pantalla y el nombre del archivo de salida es video.mp4.

con esto me es suficiente para lo que deseo. Realmente le puse en un script de bash que ejecuto desde la segunda pantalla y regreso rápidamente a la primera para grabar el video.

#!/bin/bash
[ -z “$1” ] && { echo “pasa un nombre”; exit 1; };

sleep 3

ffmpeg -f x11grab -r 24 -s 1366×768 -i :0.0 -preset ultrafast -qp 0 -sameq $1.mp4

Instalando PacketTracer 5.3.3 en Fedora-17

Hola
aquí les describo como instalar PacketTracer versión 5.3.3 para los que deseen usarle en Linux Fedora.

  1. Buscar el paquete PacketTracer533_i386_installer-rpm.bin en google y bajarlo a tu usuario
  2. Darle derechos de ejecución:
    • chmod +x PacketTracer533_i386_installer-rpm.bin
  3. Ejecutar el binario:
    • sudo ./PacketTracer533_i386_installer-rpm.bin
  4. Aceptar la licencia y el programa se instalará.
  5. Si el instalador falla indicando que le faltan otros requerimientos hacer lo siguiente:
    • Volver a ejecutar: sudo ./PacketTracer533_i386_installer-rpm.bin
    • Llegar solamente hasta la parte que te pide aceptar la licencia.
    • ejecutar en otro terminal el siguiente comando:
      • yum install /tmp/selfextract*/PacketTracer-5.3_3-u.i386.rpm
    • Esto lo que hará será resolver todos los requerimientos que tenga el programa PacketTracer-5.3.3 e instalar.