Blog Archives

Instalar y usar YouTube-DL

Youtube-dl es una herramienta de descarga de vídeo de línea de comandos gratuita y de código abierto que se puede utilizar para descargar vídeo de Youtube y otros sitios web como Facebook, Dailymotion, Google Video, Yahoo y mucho más.

Está basado en pygtk y requiere que Python ejecute este software. Soporta muchos sistemas operativos incluyendo Windows, Mac y Unix. Youtube-dl soporta la reanudación de descargas interrumpidas, descarga de canales o listas de reproducción, añadir títulos personalizados, proxy y mucho más.

En este tutorial, aprenderemos a instalar y usar Youtube-dl y Youtube-dlg en Ubuntu 16.04 / LinuxMint 19. También aprenderemos a descargar videos de Youtube en diferentes calidades y formatos.

Requerimientos

  • Un equipo con Ubuntu 16.04 / Linux Mint 19.
  • Un usuario sin privilegios.

Actualizar el sistema

Vamo’s a comenzar actualizando el sistema a la última versión con los siguientes comandos:

sudo apt-get update -y
sudo apt-get upgrade -y

Luego de actualizar, reiniciamos el sistema para aplicar todos estos cambios.

Instalar Youtube-dl

Youtube-dl no está disponible en los repositorios de Ubuntu-16.04. De modo que será necesario descargarlo desde su sitio web oficial. Para ello se puede utilizar el comando curl:

Primero, instalamos curl:

sudo apt-get install curl -y

Luego, descargamos el binario de youtube-dl:

sudo curl -L https://yt-dl.org/latest/youtube-dl -o /usr/bin/youtube-dl

Por último, cambiamos los permisos del paquete binario de youtube-dl:

sudo chmod 755 /usr/bin/youtube-dl

Una vez que youtube-dl está instalado, podemos proceder con el siguiente paso.

Usar Youtube-dl

Se pueden listar las opciones disponibles con:

youtube-dl --h

Youtube-dl soporta muchos formatos de video tales como mp4, webm, 3gp, y flv. Todos las alternativas disponibles para formatos específico se pueden listar con:

youtube-dl -F https://www.youtube.com/watch?v=zaRhSszSHCE

Deberías ver todas los formatos disponibles para este video:

[info] Available formats for zaRhSszSHCE:
format code extension resolution note
249 webm audio only DASH audio 58k , opus @ 50k, 1.14MiB
250 webm audio only DASH audio 77k , opus @ 70k, 1.52MiB
140 m4a audio only DASH audio 128k , m4a_dash container, mp4a.40.2@128k, 2.75MiB
171 webm audio only DASH audio 133k , vorbis@128k, 2.77MiB
251 webm audio only DASH audio 145k , opus @160k, 2.99MiB
278 webm 256x144 144p 102k , webm container, vp9, 24fps, video only, 2.04MiB
160 mp4 256x144 144p 113k , avc1.4d400c, 24fps, video only, 2.07MiB
242 webm 426x240 240p 225k , vp9, 24fps, video only, 4.63MiB
133 mp4 426x240 240p 246k , avc1.4d4015, 24fps, video only, 3.96MiB
243 webm 640x360 360p 414k , vp9, 24fps, video only, 8.36MiB
134 mp4 640x360 360p 636k , avc1.4d401e, 24fps, video only, 9.80MiB
244 webm 854x480 480p 754k , vp9, 24fps, video only, 14.88MiB
135 mp4 854x480 480p 1193k , avc1.4d401e, 24fps, video only, 18.59MiB
247 webm 1280x720 720p 1518k , vp9, 24fps, video only, 29.20MiB
136 mp4 1280x720 720p 2336k , avc1.4d401f, 24fps, video only, 33.45MiB
248 webm 1920x1080 1080p 2739k , vp9, 24fps, video only, 52.21MiB
137 mp4 1920x1080 1080p 4358k , avc1.640028, 24fps, video only, 57.95MiB
271 webm 2560x1440 1440p 8903k , vp9, 24fps, video only, 149.63MiB
313 webm 3840x2160 2160p 17904k , vp9, 24fps, video only, 355.15MiB
17 3gp 176x144 small , mp4v.20.3, mp4a.40.2@ 24k, 1.66MiB
36 3gp 320x180 small , mp4v.20.3, mp4a.40.2, 4.70MiB
18 mp4 640x360 medium , avc1.42001E, mp4a.40.2@ 96k, 15.73MiB
43 webm 640x360 medium , vp8.0, vorbis@128k, 19.63MiB
22 mp4 1280x720 hd720 , avc1.64001F, mp4a.40.2@192k (best)

Luego, escoge el formato que quieras descargar con el parámetro -f, como se muestra a continuación:

youtube-dl -f 18 https://www.youtube.com/watch?v=zaRhSszSHCE

Este comando descargará el video en formato mp4 con resolución 640×360:

 zaRhSszSHCE: Downloading webpage
 zaRhSszSHCE: Downloading video info webpage
 zaRhSszSHCE: Extracting video information
 zaRhSszSHCE: Downloading MPD manifest
[download] Destination: Raça Negra - Vai Curtir, Vai Dançar part. Wesley Safadão (DVD Raça Negra & Amigos 2) [Vídeo Oficial]-zaRhSszSHCE.mp4
[download] 100% of 15.73MiB in 01:13

En caso que optemos por descargar audio y video de forma separada, podemos combinarlos en un único archivo, para ello

ffmpeg -i fuente-video.mp4 -i fuente-audio.m4a -c:v copy -c:a copy video+audio.mp4

Una vez que el comando sea ejecutado, FFmpeg combinará el archivo de video con el de audio y guardará el resultado en el mismo directorio con el nombre “video+audio.mp4.”

Si querés descargar un video de Youtube en formato de audio mp3, también es posible con el siguiente comando:

youtube-dl https://www.youtube.com/watch?v=zaRhSszSHCE -x --audio-format mp3

Se pueden descargar los videos de canales específicos agregando la URL del canal como se muestra a continuación:

youtube-dl -citw https://www.youtube.com/channel/UCA6jlNnHSPwVxfZfjhkw3Og

Si tu red se encuentra detrás de un proxy, se puede descargar el video usando el parámetro –proxy:

youtube-dl --proxy http://proxy-ip:port https://www.youtube.com/watch?v=zaRhSszSHCE

Para descargar la lista de muchos videos de Youtube con un único comando, primero guardá toas las URL de Youtube en un archivo llamado youtube-list.txt y ejecutá el siguiente comando para descargar los videos:

youtube-dl -a youtube-list.txt

Instalar Youtube-dl GUI

Si estás buscando una herramienta gráfica para youtube-dl, youtube-dlg es la mejor opción. Es una herramienta libre y de código abierto para youtube-dl escrita en wxPython.

Tampoco está disponible en los repositorios de Ubuntu 16.04, de modo que es necesario agregar un PPA.

sudo add-apt-repository ppa:nilarimogard/webupd8

Actualizamos nuestro repositorio de paquetes e instalamos youtube-dlg con el siguiente comando:

sudo apt-get update -y
sudo apt-get install youtube-dlg -y

Una vez instalado, lo podemos lanzar desde:

Ahora podés descargar cualquier video de Youtube de manera sencilla con solo pegar la URL en el campo URL que se muestra en la imagen anterior. Youtube-dlg es muy útil para quienes no se llevan bien con la línea de comandos.

 

www.howtoforge.com

Publicado en Miniguías Etiquetado con:

Reinstalar GRUB en modo EFI

Iniciamos el equipo en modo EFI desde una unidad flash con, por ejemplo, Linux Mint.

Una vez en el escritorio abrimos la terminal e identificamos las particiones del disco

# fdisk -l
Disco /dev/sda: 465,8 GiB, 500107862016 bytes, 976773168 sectores
Unidades: sectores de 1 * 512 = 512 bytes
Tamaño de sector (lógico/físico): 512 bytes / 4096 bytes
Tamaño de E/S (mínimo/óptimo): 4096 bytes / 4096 bytes
Tipo de etiqueta de disco: gpt
Identificador del disco: 3DFD8199-3666-4D51-98FF-01D7E60BA0B8

Dispositivo Comienzo Final Sectores Tamaño Tipo
/dev/sda1 2048 1050623 1048576 512M Sistema EFI
/dev/sda2 1050624 9222143 8171520 3,9G Linux swap
/dev/sda3 9222144 198533119 189310976 90,3G Sistema de ficheros de Linux
/dev/sda4 198533120 976773119 778240000 371,1G Sistema de ficheros de Linux

Entonces:

  • sda1 es la partición EFI
  • sda2 es el espacio destinado a swap
  • sda3 es el / de nuestro sistema
  • sda4 es el /home

Luego ejecutamos estos comandos:

sudo mount /dev/sda3 /mnt
sudo mount /dev/sda1 /mnt/boot/efi
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo chroot /mnt
grub-install /dev/sda
update-grub

Tras reiniciar el equipo nuestro sistema ya debería arrancar normalmente.

Publicado en Miniguías Etiquetado con: ,

Multiples versiones de PHP desde un mismo servidor Apache

Podemos enfrentar muchas situaciones en donde sea necesario correr múltiples versiones de PHP en paralelo. En el caso del cual extraigo este ejemplo la necesidad pasaba por brindar soporte a una aplicación moderna con PHP 7.2 y, al mismo tiempo, a un desarrollo personalizado que no permitía dejar la rama 5.x.

Como punto de partida utilizamos Debian 9 Stretch, ya que cuenta con una nueva infraestructura para paquetes PHP que maneja el versiones de manera nativa.

Instalar PHP

PHP 7.2

Instalamos PHP 7.2 desde los repositorios de Debian.

$ apt-get install php7.2-cli php7.2-fpm

Versiones anteriores de Debian usaban simplementephp5mientras que la nueva infraestructuraphpX.Y. De esta manera podemos instalar múltiples versiones de PHP en paralelo.

PHP 5.6

Debian ofrece solamente una única versión de PHP en el repositorio oficial. Afortunadamente existe un repositorio mantenido por el encargado de los paquetes oficiales de PHP en Debian, Ondřej Surý. Visita su página acerca de paquetería para aprender más. (También existe un repositorio PPA en caso que uses Ubuntu en lugar de Debian.)

Agregamos este repositorio (al tiempo que habilitamos HTTPS para APT y registramos la clave APT):

$ apt-get install apt-transport-https
$ curl https://packages.sury.org/php/apt.gpg | apt-key add -
$ echo 'deb https://packages.sury.org/php/ stretch main' > /etc/apt/sources.list.d/deb.sury.org.list
$ apt-get update

Ahora podemos instalar los paquetes desde allí:

$ apt-get install php5.6-cli php5.6-fpm

Esto instalará PHP 5.6 en paralelo con el PHP 7.2 instalado anteriormente. Podemos verificar esto con:

$ php7.2 -v
PHP 7.2.0-1 (cli)
$ php5.6 -v
PHP 5.6.32-1 (cli)

Configurar PHP

La configuración se almacena en ubicaciones versionadas también. Además, la configuración está separada para cada SAPI. Lo mismo se aplica para los módulos PHP así que no habrá que preocuparse acerca de módulos incompatibles entre versiones.

La configuración de PHP 7.2 FPM se almacena en /etc/php/7.2/fpm y PHP 5.6 en /etc/php/5.6/fpm. Cada instancia FPM consiste de múltiples pools. Cada sitio/proyecto debería tener su pool separado así que creamos una copia de la configuración predeterminada.

$ cp /etc/php/7.2/fpm/pool.d/www.conf /etc/php/7.2/fpm/pool.d/php72.conf
$ cp /etc/php/5.6/fpm/pool.d/www.conf /etc/php/5.6/fpm/pool.d/php56.conf

Buscamos la opción listen. Tendría que ser igual a /run/php/php7.2-fpm.sock o similar. Ahora hacemos los mismo para 5.6, debería contener lo mismo pero con 5.6 en lugar de 7.2. Esto también podría ser una dirección vinculada, ej. dirección IP con puerto (lo cual es más conveniente, en términos de desempeño, que sockets para entornos de producción).

Configurar Apache

Creamos un VirtualHost para cada versión de PHP, ej. /etc/apache2/sites-available/php7.2.conf

Agregamos


<VirtualHost>
...
<FilesMatch "\.php$">
   SetHandler proxy:unix:/run/php/php7.2-fpm.sock|fcgi://localhost
</FilesMatch>
...
</VirtualHost>

Habilitamos el sitio

$ a2ensite php7.2

Y hacemos lo mismo con la configuración para PHP 5.6

Luego habilitamos los módulos necesarios

$ a2enmod proxy_fcgi

Y, por último, reiniciamos los servicios

$ systemctl restart php5.6-fpm php7.2-fpm apache2

Probando todo

Para probar que todo funcione de la manera que esperamos creamos un archivo PHP con la instrucción phpinfo, si todo está bien FPM/FastCGI aparecerá en la salida.

$ echo '<?php phpinfo(); ?>' > /var/www/sitio-php7.2/info.php

 

 

Fuentes |

Publicado en General

Convertir imagenes a PDF desde la línea de comandos

La herramienta ImageMagick nos permite llevar a cabo esta tarea de manera sencilla.

La sintáxis es la siguiente:

$ convert a.png b.png c.png (...) x.png multipagina.pdf

Ahora bien, es muy probable que el resultado no se ajuste a un tamaño de papel estándar para lo cual debemos definir de manera explícita para el destino mediante la opción ‘resize’:

$ i=150; convert a.png b.png c.png -compress jpeg -quality 70 \
 -density ${i}x${i} -units PixelsPerInch \
 -resize $((i*827/100))x$((i*1169/100)) \
 -repage $((i*827/100))x$((i*1169/100)) multipagina.pdf

El comando convert no siempre usa DPI como la unidad predeterminada para la densidad/formato de página, así pues debemos especificar de manera explicita los DPI con la opción -units (de otro modo es probable que obtengamos resultados diferentes con distintas versiones/combinaciones de formato de entrada). El nuevo tamaño (especificado vía -resize) es la dimensión de una hoja A4 en pixeles. El argumento resize especifica el tamaño máximo de página. La resolución y calidad exacta a escoger depende del uso en cada caso. En el ejemplo se seleccionó 150 DPI y calidad promedio para ahorrar algo de espacio al tiempo que no se ve tan mal una vez impreso.

Debemos notar que convert no cambia la relación de aspecto de manera predeterminada con la operación resize:

Resize encajará la imágen en el tamaño requerido. Aunque NO rellena el tamaño de caja.

Manual de ImageMagick: http://www.imagemagick.org/Usage/resize/#resize

Dependiendo de la versión de ImageMagick y el formato de entrada involucrado se podría omitir la opción -repage. Pero algunas veces se requiere y sin esa opción el encabezado del PDF podría contener dimensiones muy pequeñas. En cualquier caso, -repage no debería molestar.

El cómputo usa aritmética de enteros ya que bash soporta eso solamente. Con zsh las expresiones pueden ser simplificadas – ej. $((i*8.27))x$((i*11.69)).

 

 

unix.stackexchange.com

Publicado en General, Miniguías

Como reparar el error ‘initramfs’ en Ubuntu y derivados

En este artículo se describe como subsanar el problema que nos arroja Ubuntu cuando al arrancar vemos una pantalla negra con el prompt (initramfs).

initramfs

  1. Arrancar con un live CD o USB.
  2. Hallar el número de partición usando:
    sudo fdisk -l|grep Linux|grep -Ev 'swap'
  3. Listar todos los superbloques usando el comando:
    sudo dumpe2fs /dev/sdax | grep superblock 
    NOTA: x es el número de dispositivo hallado con el comando anterior.
  4. Ahora verificamos y reparamos el sistema de archivos de nuestro GNU/Linux usando el superbloque alternativo # 32768:
    fsck -b 32768 -y /dev/sdax
    NOTA: -y pasará “si” a todas las preguntas y realizará las correcciones automáticamente.
  5. Ahora intentaremos montar la partición:
    mount /dev/sdax /mnt
  6. Ahora, intentaremos recorrer el sistema de archivos con los siguientes comandos:
    sudo cd /mnt
    sudo ls -l
  7. En caso que hayamos podido concretar los comandos anteriores, es muy probable que hayamos corregido el error.
  8. Reiniciamos el equipo y debería poder arrancar con normalidad.

 

boot-up-fails-drops-to-initramfs-prompt-12-04 en #2

Publicado en Miniguías, Sistemas, Ubuntu Etiquetado con:

Última versión de LibreOffice en LinuxMint

En versiones de Linux Mint anteriores a la 17.3, a los repositorios propios les fue asignada una prioridad APT de 700 (a diferencia del valor estándar de 500 para Ubuntu, Debian y repositorios de terceros). A raíz de eso era necesario hacer hacer apt-pinning para poder utilizar múltiples repositorios en nuestro sistema y especificar cuando instalar un paquete de cuál repo.

LibreOffice-Mint

Esto fue modificado en Linux Mint 17.3:

  • Para el componente “upstream” de los repositorios de Linux Mint se mantuvo la prioridad 700.
  • A todos los demás componentes (“main”, “import”, “backport”, “romeo”) así como el repositorio “extra”, se bajó la prioridad a 500.

Instalar LibreOffice 5.1.0

Para instalar LibreOffice 5.1.0 en Ubuntu 15.10 Wily/14.04 Trusty abrimos una terminal y copiamos los siguientes comandos:

sudo add-apt-repository ppa:libreoffice/libreoffice-5-1
sudo apt-get update
sudo apt-get install libreoffice libreoffice-style-breeze

Instalar LibreOffice 5.0

Para instalar LibreOffice 5.0 en Ubuntu 15.10 Wily/14.04 Trusty/12.04 Precise/Linux Mint 13 abrimos una terminal y copiamos los siguientes comandos:

sudo add-apt-repository ppa:libreoffice/ppa
sudo apt-get update
sudo apt-get install libreoffice libreoffice-style-breeze

Para actualizar de LibreOffice 4.x a 5.0, ejecutar el siguiente comando:

sudo apt-get dist-upgrade

Para instalar LibreOffice en Linux Mint 17.x/17 abrir la terminal y copiar el siguiente comando en la terminal (podés reemplazar nano con el editor que prefieras):

gksu nano /etc/apt/preferences.d/libreoffice-libreoffice-5-1.pref

Ahora pegar las siguientes lineas en el archivo de texto:

Package: *
Pin: release o=LP-PPA-libreoffice-libreoffice-5-1
Pin-Priority: 701

Ahora ingresar estos comandos para instalar:

sudo add-apt-repository ppa:libreoffice/libreoffice-5-1
sudo apt-get update
sudo apt-get install libreoffice libreoffice-style-breeze

Para actualizar desde versiones previas de LibreOffice, ejecutar el siguiente comando:

sudo apt-get dist-upgrade
Publicado en LibreOffice, Ubuntu

Almanaque 2016

¿Quieren un calendario rápido?, abran una terminal y tecleen cal 2016.

calendario-cli-2016

¿Lo quieren imprimir? cal 2016 > calendario.txt, abren el archivo txt y listo 🙂

Publicado en Miniguías Etiquetado con: , ,

Simplificar la línea de comandos de administración de paquetes con apt en lugar de apt-get

APT, la herramienta de gestión de paquetes del proyecto Debian involucra el uso de una gran cantidad de herramientas independientes para llevar a cabo diversas tareas. En el pasado, los usuarios necesitaban saber múltiples sintaxis de comandos como apt-get, apt-cache, apt-config, y muchos más para utilizar todas las características de APT.

por Michael Tunnell

simplificar-apt

APT fue creado originalmente para resolver muchos de los problemas de gestión de paquetes como poner fin al infierno de dependencias que muchas personas experimentaron en los primeros días de los sistemas operativos basados ​​en Linux. Por desgracia, APT sufre de un tipo diferente de infierno, algo que yo llamo “el infierno de documentación dispersa” (DDH, por sus siglas en inglés). La documentación relacionada con APT está dispersa en varias herramientas diferentes y en algunos casos, como el comando principal apt, prácticamente imposible de encontrar.

Durante más de una década, prácticamente todos los tutoriales y guías para la instalación y eliminación de paquetes en un sistema basado en Debian / Ubuntu han sugerido apt-get a los usuarios. En el pasado, esa fue la sugerencia correcta porque “apt” como comando no habían existido en ese momento, pero debido al infierno de documentación dispersa muchas personas no son conscientes de que ahora sí existe.

Si quisiera instalar un paquete de casi todas las guías sugieren:

sudo apt-get install package

pero ahora, en cambio, se puede simplificar eso con

sudo apt install package

Algunos pueden argumentar que “apt” no es muy diferente de “apt-get” y eso es cierto, pero creo que el guión en el comando es lo que crea un cuello de botella para muchos usuarios. Usar apt les ahorrará tiempo así como la cantidad de pulsaciones de teclas necesarias para realizar la misma tarea.

Infierno de documentación dispersa

 

documentation-hell

El problema fundamental con la documentación respecto de APT es que depende donde se mire y como se busque, se puede encontrar algo o nada en absoluto. Si buscamos en Google, o DuckDuckGo, por “documentación apt” encontraremos tres tipos de resultados:

  1. Documentación relacionada con apt-get
  2. Información general básica con respecto a APT
  3. Información que no tienen relación

Si se incluye “linux”, “ubuntu”, o incluso “debian” en la búsqueda los tipos de resultados que non va a cambiar. La DDH es tan grave que podemos encontrar documentación de Debian.org marcada como Documentación Obsoleta antes de encontrar algo útil relacionada con el comando “apt”, si es que alguna vez se encuentra algo.

Páginas man

Las páginas man son las páginas de documentación que se pueden utilizar de forma local en el sistema o a través de los directorios en línea. Anotaciones locales pueden estar al día o no en función de la versión de nuestra distribución. Por ejemplo, Ubuntu 15.10 tiene la última página man, pero 14.04 no de manera predeterminada. Sin embargo, si se mantiene la versión 14.04 de Ubuntu actualizada entonces deberíamos tener la página del manual actualizada. Podemos verificar si tenemos la última versión de la página de manual con el siguiente comando.

man apt

Por otro lado, si buscamos la página del manual en línea, entonces casi siempre encontraremos información general vieja. Si seguimos buscando, sin embargo, podemos llegar a encontrar la página man de Ubuntu 15.10 que está actualizada o podemos encontrarnos con la página man de 14.04 que está desactualizada.

Simplificar la línea de comandos con APT

La siguiente lista contiene las opciones más útiles disponibles vía el comando apt y que antiguos comandos simplifican.

  • apt install paquete(s)
    • reemplaza a apt-get install paquete
  • apt remove paquete(s)
    • reemplaza a apt-get remove paquete
  • apt search query
    • reemplaza a apt-cache search query
  • apt show paquete(s)
    • reemplaza a apt-cache show paquete(s)
  • apt update
    • reemplaza a apt-get update
  • apt upgrade
    • reemplaza a apt-get upgrade
  • apt list –installed
    • reemplaza a dpkg –get-selections | grep -v deinstall
    • reemplaza a dpkg -l
  • apt list –upgradable (no se requiere sudo)
    • reemplaza a apt-get -u upgrade –assume-no” (se requiere sudo)
  • apt edit-sources
    • reemplaza a echo ‘nueva línea de texto’ | sudo tee -a /etc/apt/sources.list
    • reemplaza a sudo nano /etc/apt/sources.list

Linux Mint está mejorando la simplicidad

 

linux-mint

La mayoría de los sistemas operativos recientes basadas en Debian o Ubuntu tienen la versión actualizada de APT que permite simplificar algunas tareas, pero el equipo detrás de Linux Mint decidió que APT podría estar mucho mejor si se tratara de simplificar más tareas. Linux Mint ha creado un script python para hacer APT aún más útil al sustituir en más funciones ese comando APT estándar que aún no había sido abordado. Esta es una decisión que se espera Debian decida adoptar en el futuro para que el comando APT alcance su pleno potencial.

La siguiente lista contiene las opciones adicionales más útiles disponibles a través del comando apt de Linux Mint y qué comandos vieja simplifican. Nota:  de momento la lista siguiente sólo se aplica a los usuarios de Linux Mint.

  • apt autoclean
    • reemplaza a apt-get autoclean
  • apt autoremove
    • reemplaza a apt-get autoremove
  • apt purge paquete(s)
    • reemplaza a apt-get remove –purge paquete(s)
  • apt depends paquete(s)
    • reemplaza a apt-cache depends paquete(s)
  • apt rdepends paquete(s)
    • reemplaza a apt-rdepends paquete(s)
  • apt policy paquete(s)
    • reemplaza a apt-cache policy paquete(s)
  • apt held
    • reemplaza a dpkg –get-selections | grep hold
  • apt hold paquete

    • reemplaza a echo paquete hold | sudo dpkg –set-selections
  • apt unhold paquete

    • reemplaza a echo paquete install | sudo dpkg –set-selections
  • apt download paquete (descar el archivo deb de un paquete)
    • reemplaza a LC_ALL=C apt-cache depends paquete |grep -v “Conflicts:\|Replaces:”|awk ‘{print $NF}’|sed -e ‘s/[<>]//g’|xargs aptitude download -r

APT: Hacer más con mucho menos

El comando apt ha simplificado muchas tareas con la gestión de paquetes desde la linea de comandos en los escritorios Linux (basados en Debian) y con Linux Mint tomando la iniciativa para mejorarla aún más, espero que ayude a la transición de la comunidad para el nuevo método. El único comando cuya ausencia noté en el script apt de Linux Mint es “apt add-repository” para reemplazar el incómodo comando add-apt-repository, así que escribí un parche para agregar esta característica al script. Me complace anunciar que ese parche fue aceptado por lo cual está característica estará disponible en una futura versión de Linux Mint.

 

www.howtogeek.com

Publicado en Distros, Miniguías Etiquetado con: , , ,

Comandos Linux que los nuevos usuarios deben conocer

Una de las bellezas de los sistemas basados ​​en Linux es que se puede gestionar todo el sistema desde la línea de comandos. La ventaja de hacerlo así es que se puede emplear el mismo conocimiento y las habilidades para manejar cualquier distribución de Linux.

terminal-huayra

Esto no es posible a través de la interfaz gráfica de usuario (GUI), ya que cada distro, y entorno de escritorio (DE), ofrece a sus propias interfaces de usuario. Para ser claro, hay casos en los que necesitarás diferentes comandos para realizar ciertas tareas en diferentes distribuciones, pero más o menos el concepto y las ideas siguen siendo las mismas.

En este artículo, vamos a hablar sobre algunos de los comandos básicos que un nuevo usuario de Linux debe saber. Te mostraré cómo actualizar tu sistema, administrar software, manipular archivos y cambiar a superusuario usando la linea de comandos en tres principales distribuciones: Ubuntu (que también incluye sus sabores y sus derivados, y Debian), openSUSE y Fedora.

¡Empecemos!

Mantén tu sistema seguro y actualizado

Linux es seguro por diseño, pero el hecho es que todo software tiene errores y podría haber agujeros de seguridad. Así que es muy importante mantener tu sistema actualizado. Pensalo de esta manera: la utilización de un sistema operativo desactualizado es como estar en un tanque blindado con las puertas abiertas. ¿La armadura te protegerá? Cualquiera puede entrar a través de las puertas abiertas y causar daño. Del mismo modo que puede haber agujeros sin parches en el sistema operativo con capacidad de comprometer tus sistemas. Las comunidades de código abierto, a diferencia del mundo privativo, son extremadamente rápidas en liberar parches para los agujeros, por lo que si mantenés tu sistema actualizado que quedarás a salvo.

Mantené un ojo en los sitios de noticias para estar al tanto de las vulnerabilidades de seguridad. Si se descubre un agujero, leé sobre él y actualizá tu sistema tan pronto como un parche sea liberado. De cualquier manera tenés que adoptar la práctica de ejecutar los comandos de actualización al menos una vez a la semana en las máquinas de producción. Si tenés un servidor complicado tendrás que ser muy cuidadoso y revisar la lista de cambios para asegurar actualizaciones no rompan tu personalización.

Ubuntu: Tené en cuenta: siempre hay que actualizar los repositorios (aka repos) antes de actualizar el sistema o instalar cualquier software. En Ubuntu, puede actualizar su sistema con los siguientes comandos. El primer comando actualiza los repositorios:

sudo update apt-get

Una vez que los repositorios están actualizados se puede ejecutar el comando de actualización del sistema:

sudo apt-get upgrade

Sin embargo, este comando no actualiza el kernel y algunos otros paquetes, por lo que también tendrás que ejecutar este comando:

sudo apt-get dist-upgrade

openSUSE: Si estás en openSUSE, podés actualizar el sistema utilizando estos comandos (como de costumbre, el primer comando sirve para actualizar los repos)

sudo zypper refresh
sudo zypper up

Fedora: Si estás en Fedora, podés utilizar el comando ‘dnf’, que es algo así como un equivalente de zypper y apt-get:

sudo dnf update
sudo dnf upgrade

Instalación y eliminación de software

Podés instalar sólo los paquetes que están disponibles en los repositorios habilitados en tu sistema. Cada distro incluye algunos repos oficiales o de terceros habilitados de forma predeterminada.

Ubuntu: Para instalar cualquier paquete en Ubuntu, actualizá primero el repositorio y luego utilizá esta sintaxis:

sudo apt-get install [nombre_del_paquete]

Ejemplo:

sudo apt-get install gimp

openSUSE: Los comandos serían:

sudo zypper install [nombre_del_paquete]

Fedora: Fedora ha descartado ‘yum’ y ahora utiliza ‘dnf’ por lo que el comando sería:

sudo dnf install [nombre_del_paquete]

El procedimiento para eliminar el software es el mismo, sólo hay que cambiar ‘install’ por ‘remove’.

Ubuntu:

sudo apt-get remove [nombre_del_paquete]

openSUSE:

sudo zypper remove [nombre_del_paquete]

Fedora:

sudo dnf remove [nombre_del_paquete]

¿Cómo gestionar el software de terceros?

Hay una gran comunidad de desarrolladores que ofrecen su software a los usuarios. Diferentes distribuciones utilizan diferentes mecanismos para que el software de terceros se encuentre a disposición de sus usuarios. También depende de cómo un desarrollador ofrece su software a los usuarios; algunos ofrecen binarios y otros lo ofrecen a través de repositorios.

Ubuntu depende fuertemente de los PPA (archivos del paquete personal), pero, por desgracia, no hay ninguna herramienta integrada que puede ayudar a un usuario en la búsqueda de los PPA. Tendrás que buscar el PPA y luego añadir el repositorio manualmente antes de instalar el software. Así es como se agregaría cualquier PPA a tu sistema:

sudo add-apt-repository ppa:<nombre-del-repositorio>

Ejemplo: Digamos que quiero añadir el PPA de LibreOffice a mi sistema. Buscaría el PPA y luego conseguiría el nombre del repo de Launchpad, que en este caso es “libreoffice/ppa”. Luego, añado el PPA con el siguiente comando:

sudo add-apt-repository ppa:libreoffice/ppa

Te pedirá que presiones la <Intro> para importar las llaves. Una vez hecho esto, actualizar los repositorios con el comando ‘update’ y luego instalar el paquete.

openSUSE tiene una solución elegante para aplicaciones de terceros. Podés visitar software.opensuse.org, buscar el paquete e instalarlo con un solo clic. Se añadirá automáticamente el repositorio a tu sistema. Si querés agregar cualquier repo manualmente, utilizá este comando:

sudo zypper ar -f url_of_the_repo name_of_repo
sudo zypper ar -f http://download.opensuse.org/repositories/LibreOffice:Factory/openSUSE_13.2/LibreOffice:Factory.repo LOF

Entonces actualizá el repositorio e instalá el software:

sudo zypper refresh
sudo zypper install libreoffice

Los usuarios de Fedora pueden simplemente añadir RPMFusion (repos tanto libres como no libres) que contienen la mayoría de las aplicaciones. En caso de que necesites añadir un repo, este es el comando:

dnf config-manager --add-repo http://www.ejemplo.com/ejemplo.repo

Algunos comandos básicos

Aquí están algunos de los comandos básicos que son comunes en todas las distribuciones.

Copiar los archivos o directorios a una nueva ubicación:

cp ruta_del_archivo_1 ruta_del_directorio_a_donde_queres_copiar/

Copiar todos los archivos de un directorio a una nueva ubicación (notá la barra diagonal y el asterisco, lo que implica todos los archivos dentro de ese directorio):

cp ruta_del_archivos/* ruta_del_directorio_a_donde_queres_copiar/

Mover un archivo de una ubicación a otra (la barra diagonal significa dentro de ese directorio):

mv ruta_del_archivo_1 ruta_del_directorio_a_donde_queres_mover/

Mover todos los archivos de un lugar a otro:

mv ruta_del_directorio_donde_estan_los_archivos/* ruta_del_directorio_a_donde_queres_mover/

Borrar un archivo:

rm ruta_del_archivo

Eliminar un directorio:

rm -r ruta_del_directorio

Eliminar todo el contenido del directorio, dejando la carpeta del directorio intacta:

rm -r ruta_del_directorio / *

Crear nuevo directorio

Para crear un nuevo directorio, primero introducía la ubicación en la que querés crear un directorio. Digamos que querés crear una carpeta ‘fundación’ dentro de tu directorio de documentos. Vamos a cambiar el directorio usando el comando cd (aka cambiar directorio):

cd /home/alumno/Documentos

(cambiá ‘alumno’ por el usuario de tu sistema)

A continuación, creá el directorio con el comando mkdir:

mkdir fundación

También podés crear un directorio desde cualquier lugar, dando a la ruta del directorio. Por ejemplo:

mkdir /home/alumno/Documentos/fundación

Si querés crear directorios padres e hijos, lo que significa directorios dentro de otros directorios, utilizá la opción -p. Se van a crear todos los directorios en la ruta dada:

mkdir -p /home/alumno/Documentos/linux/fundación

Convertite en root

Necesitás ser root o tener poderes sudo para realizar algunas tareas administrativas, tales como la gestión de paquetes o realizar cambios en el directorios raíz o archivos. Un ejemplo sería que editar el archivo “fstab”, que mantiene un registro de los discos duros instalados. Está dentro del directorio “etc”, que se encuentra dentro del directorio raíz. Podés realizar cambios en este archivo sólo como superusuario. En la mayoría de distribuciones te podés convertir en root “cambiando de usuario”. Digamos que en openSUSE querés ser root para poder trabajar dentro del directorio raíz. Podés utilizar cualquiera de los comandos:

sudo su -

O

do -

Esto te pedirá la contraseña y luego tendrás privilegios de root. Tené presente no ejecutar el sistema como usuario root a menos que sepas lo que estás haciendo. Otro punto importante a destacar es que los archivos o directorios que modifiques como root también cambian la propiedad de esos archivos o servicio específicos a root. Puede que tengas que revertir la propiedad de esos archivos, de otro modo los servicios o los usuarios no podrán acceder o escribir en ellos. Para cambiar la propiedad (change ownership) de archivos, este es el comando:

sudo chown -R usuario:usuario /ruta_del_archivo_o_directorio

Se puede necesitar esto cuando tenés particiones de otras distros montados en el sistema. Al intentar acceder a los archivos en esas particiones, puede que recibas un error de permiso denegado. Simplemente podés cambiar la propiedad de dichas particiones para acceder a ellas. Sólo tené mucho cuidado, no cambies los permisos o la propiedad de los directorios raíz.

www.linux.com

Publicado en Miniguías

Como actualizar Huayra 2.x (Pampero) a Huayra 3.x (Sud)

En esta guía se describe como actualizar Huayra 2.x (Pampero) a Huayra 3.x (Sud) desde la consola.

En primer lugar cambiamos el editor de texto predeterminado a Nano (no sé porqué razón insisten con usar vim).

$ sudo update-alternatives --config editor
Existen 5 opciones para la alternativa editor (que provee /usr/bin/editor).
Selección Ruta Prioridad Estado
 ------------------------------------------------------------
 * 0 /usr/bin/vim.gnome 60 modo automático
 1 /bin/nano 40 modo manual
 2 /usr/bin/mcedit 25 modo manual
 3 /usr/bin/vim.basic 30 modo manual
 4 /usr/bin/vim.gnome 60 modo manual
 5 /usr/bin/vim.tiny 10 modo manual
Pulse <Intro> para mantener el valor por omisión [*] o pulse un número de selección: 1

Instalamos todas las actualizaciones disponibles para antes de actualizar

$ sudo apt-get update && sudo apt-get upgrade -y

A continuación editamos los repositorios con las nuevas referencias

$ sudo sed -i 's/wheezy/jessie/' /etc/apt/sources.list
$ sudo sed -i 's/pampero/sud/' /etc/apt/sources.list

Será necesario eliminar la referencia al repositorio de Mate Desktop, para ello

$ sudo nano /etc/apt/sources.list

Y eliminamos estas líneas

## Repositorio de Mate Desktop
deb http://repo.huayra.conectarigualdad.gob.ar/huayra/ mate-sud main

Nuestro archivo debería verse así

## Repositorio oficial de Debian GNU/Linux
deb http://ftp.debian.org/debian/ jessie main contrib non-free
#deb http://ftp.debian.org/debian/ jessie main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free
## Repositorio de Huayra GNU/Linux
deb http://repo.huayra.conectarigualdad.gob.ar/huayra/ sud main contrib non-free
## Repositorio de Huayra GNU/Linux (actualizaciones)
deb http://repo.huayra.conectarigualdad.gob.ar/huayra/ sud-updates main contrib non-free

Procedemos a actualizar

Actualizar el listado de paquetes disponibles

$ sudo apt-get update

Realizamos una actualización mínima

$ apt-get upgrade

Actualización el resto del sistema

$ apt-get dist-upgrade

El sistema nos informará cuando deberá descargar y solicitará confirmación para comenzar con la operación

Se necesita descargar 2.929 MB de archivos.
Se utilizarán 2.977 MB de espacio de disco adicional después de esta operación.
¿Desea continuar [S/n]? S

Pulsamos S, luego <Intro> y a esperar… Ya que este proceso va a demorar bastante tiempo es recomendable que la netbook se encuentre conectada al cargador.

Publicado en Miniguías, Miniguías Etiquetado con: