Linux para principiantes o novatos

Linux para principiantes o novatos (18)

Curso introducción GNU/Linux

Sandra

Written by

Un sistema operativo nos permite utilizar el hardware del ordenador que hace que el ordenador sea una herramienta útil.

CARACTERÍSTICAS DE UN SO

El núcleo es el componente responsable de:

  • asignar memoria a programas
  • asignar tiempo de CPU a programas
  • hacer posible la comunicación entre programas

Intérpretes / shells
Interfaces gráficas de usuario (GUI): gnome, kde, cinnamon, mate, unity, xfc, lxqt, pantheon…
Utilidades: calculadora, editor de texto, mantenimiento de discos
Librerías:
Aplicaciones: navegador web, cliente de correo, procesador de texto

Modo texto : Para pasar de modo gráfico a modo texto, podemos hacerlo con ctrl + alt + f1 o f2, y para volver a modo gráfico de nuevo alt + f1 o f7.

Salir desde modo gráfico a modo texto, puede ser muy útil. Por ejemplo para matar un proceso, en caso de tener cualquier problema en el entorno gráfico.

Modo gráfico : Linux pone a nuestra disposición varios entornos de escritorio. Las opciones más comunes son gnome, kde, xice o unity, aunque hay muchas más.

Todos ellos son diferentes pero permiten lo mismo.

abrir y cerrar programas
administrar archivo
controlar y mover ventanas
escritorios múltiples

Escritorio GUI  para Debian

Debian y Gnome vienen siendo uña y carne, haciendo este escritorio el más estable de todos y el que ha demostrado dar menos problemas.

Es el escritorio por defecto para Debian, es fácil de usar ( incluso para novatos ). Además viene acompañado de varias aplicaciones útiles que se integran muy bien con Debian.

Fuente – Más información : https://blog.redigit.es/mejores-escritorios-para-debian/

COMO INSTALAR ENTORNOS DE ESCRITORIO EN DEBIAN

apt-get install gnome

apt-get install kde-standard

apt-get install xfce4

Fuente – Mas información : https://debian-handbook.info/browse/es-ES/stable/sect.graphical-desktops.html

DISTRIBUCIÓN = instalador + arranque + kernel + herramientas + software

Qué es
Un núcleo
Herramientas
Software adicional
Scripts de arranque
Instalador

Distribuciones más comunes: Debian, Fedora, CentOS, Mandriva, Ubuntu, OpenSUSE…

Debian: Fue Ian Murdock, en 1993, quién inició el proyecto Debian e inicialmente
estaba patrocinado por la Free Software Foundation. Es quizás la distribución que
mejor ha sabido mantener a lo largo del tiempo la filosofía del proyecto inicial de
GNU/Linux.

GRATUITA – DEBIAN – CADA DOS AÑOS – INTERMEDIO/EXPERTO

Por su estabilidad y rendimiento, se utiliza con frecuencia en servidores cuya misión
es crítica.

Ubuntu : Está enfocada, sobre todo, a ordenadores de escritorio aunque también
proporciona soporte para servidores. Está basada en Debian y sus principales
características son la facilidad de uso e instalación. Se publica una versión cada 6 meses, una en abril y otra en octubre de cada año.
Ubuntu está patrocinado por Canonical, una empresa privada fundada y financiada por el empresario sudafricano Mark Shuttleworth.
El eslogan de Ubuntu es toda una declaración de intenciones: “Linux para seres humanos”. Resume
una de sus metas principales: hacer de Linux un sistema operativo más accesible y fácil de usar

GRATUITA – DEBIAN – CADA 6 MESES – NOVATO

CLASIFICACIÓN POR CARACTERÍSTICAS

Disponibilidad: gratuita / comercial
Paquetes: Pacman, RPM, Debian, Tarball
Ciclo de distribución: continuo, anual…
Dificultad: novato, intermedio, experto

TABLA COMPARATIVA DE DISTRIBUCIONES ACTUALES DE GNU/LINUX

 DISTRIBUCIONDISPONIBILIDADPAQUETESCICLODIFICULTAD
Debian Libre Debian Cada 2 años Intermedio/Experto
Ubuntu Libre Debian Cada 6 meses Novato/Intermedio
Gentoo Libre ebuild Continuo Experto
Red Hat Enterprise Comercial rpm Cada 2 años Intermedio

Ciclos de vida – Distribuciones GNU/Linux

SOFTWARE LIBRE – LAS CUATRO LIBERTADES ESENCIALES

Un programa es software libre si los usuarios tienen las cuatro libertades esenciales:

0 : La libertad de ejecutar el programa como se desee, con cualquier propósito.
1 : La libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo que usted quiera.. El acceso al código fuente es una condición necesaria para ello.
2 : La libertad de redistribuir copias para ayudar a otros.
3 : La libertad de distribuir copias de sus versiones modificadas a terceros. Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.

FUENTE :

https://www.gnu.org/philosophy/free-sw.es.html
https://www.fsf.org/

DIEZ PRINCIPIOS BÁSICOS DEL CÓDIGO ABIERTO ( Open Source )

Libre distribución
Disponibilidad de código fuente
Permiso de obras derivadas
Respeto a la integridad del código fuente
No discriminación de personas o grupos
No discriminación al campo de aplicación
Distribución automática de licencias
Ausencia de restricciones sobre otro software
Neutralidad tecnológica

FUENTE :

https://opensource.org/osd-annotated

El software libre es todo programa informático cuyo código fuente puede ser estudiado, modificado, y utilizado libremente con cualquier fin y redistribuido con o sin cambios o mejoras.

Su definición está asociada al nacimiento del movimiento de software libre, encabezado por Richard Stallman y la consecuente fundación en 1985 de la Free Software Foundation, que coloca la libertad del usuario informático como propósito ético fundamental.

TIPOS DE LICENCIA

Comercial o propietario: software del cual no existe una forma libre de acceso a su código fuente, el cual solo se encuentra a disposición de su desarrollador y no se permite su libre modificación, adaptación o incluso lectura por parte de terceros.

Shareware : Código fuente secreto protegido. Ánimo de beneficio económico. Se denomina shareware a una modalidad de distribución de software, en la que el usuario puede evaluar de forma gratuita el producto, pero con limitaciones en el tiempo de uso o en algunas de las formas de uso o con restricciones en las capacidades finales.

Freeware : Código fuente secreto protegido. Ánimo ganar usuarios. Funcionalidades recortadas. Define un tipo de software que se distribuye sin costo, disponible para su uso, pero que mantiene el copyright.

Software Libre : Código fuente público. Mejor calidad de software. Menos bugs. El software libre es todo programa informático cuyo código fuente puede ser estudiado, modificado, y utilizado libremente con cualquier fin y redistribuido con o sin cambios o mejoras.

LICENCIAS DE SOFTWARE LIBRE

GNU gpl

BSD

MIT

Apache

Artistic

NPL

Licencias Creative Commons


GPL

El programador o autor, conserva sus derechos de autor, pero permite su libre distribución y modificación. Siempre y cuando en el software final, esté bajo la misma licencia. Aun incluso este software formara parte de otro más grande, debe mantener su licencia libre.

Esta licencia “copyleft” y esta filosofía, garantizan que el código fuente esté siempre disponible y accesible, para poder realizar copias ilimitadas. Para el usuario final, cualquier software bajo licencia GPL es gratuito, y solo podría en todo caso pagar por gastos de copiado, soporte físico o canal de distribución.

AGPL

se engloba dentro de las licencias destinadas a modificar el derecho de autor derivadas de GNU. La novedad de AGPL es que, aparte de las cláusulas propias de una GNU GPL, ésta obliga a que se distribuya el software que se destine a dar servicios a través de una red de ordenadores, es decir, si se quiere usar como parte del desarrollo de un nuevo software, éste quedaría obligado a su libre distribución.

BSD

Licencia permisiva que no impone casi condiciones. Un software bajo esta licencia puede ser vendido, y no hay obligación de poner a disposición el código fuente. Además bajo esta licencia, el resultado del software modificado, puede tener cualquier otro tipo de licencia tanto libre como propietaria. Un ejemplo bastante clarificante sobre esta licencia es el sistema operativo Mac OS X.

APACHE

Esta licencia permite al usuario distribuir y modificar el software original, pero debe siempre conservar en obras derivadas el copyright de Apache y el disclaimer.

No se exige que las obras derivadas tengan que ser software libre, pero exige que se informe en la obra derivada que se ha usado código con la licencia Apache.

Desarrollo y Programación

Editores de texto

Editores sencillos

Editores avanzados

Editores Mixtos (Terminal/Gráficos)

Edición de Imágenes

GIMP
Krita

Edición de Sonido

Edición de Vídeo

Reproducción Multimedia

Visualizadores de Imágenes

Ofimática (Hogar y Oficina)

Administradores de Archivos

Clientes de Correo Electrónico

Navegadores de Internet

Gestores de Documentos (Suite Ofimáticas)

Torrents

Seguridad

La terminal o consola es una herramienta poderosa capaz de realizar tareas de forma más rápida que mediante la interfaz gráfica del sistema operativo.

DIFERENCIAS ENTRE LINUX Y UNIX

A nivel de línea de comandos, apenas hay diferencias. Se pueden usar los mismos comandos indistintamente en distribuciones Linux o en sistemas Unix.
A nivel gráfico tampoco hay mucha diferencia ya que ambos sistemas utilizan X-Windows. La principal diferencia es que Linux es libre mientras que la mayoría de Unix no (a veces cuestan mucho dinero).
Otra diferencia importante es el hecho de que hay versiones de Linux para prácticamente cualquier plataforma, mientras que los diferentes Unix suelen estar enfocados a un hardware muy específico

/ : Directorio raíz
/root : Directorio personal de superusuario
/home : Director personal con las carpetas de usuario
/bin : Binarios de usuario
/boot : Ejecutables y archivos requeridos para el arranque
/dev : Archivos de información de todos los volúmenes
/etc : Archivos de configuración del sistema y de aplicaciones
/lib : Bibliotecas necesarias para la ejecución de binarios
/media : Directorio de montaje de volúmenes extraíbles
/mnt : Sistemas de archivos montados manualmente en el disco duro.
/usr : Archivos de programa y aplicaciones de usuario
/sbin : Binarios de sistema
/opt : Ficheros de aplicaciones externas que no se integran en /usr
/proc : Ficheros de información de procesos
/sys : Archivos virtuales con información de eventos del sistema
/srv : Archivos relativos a servidores web, FTP, etc.
/tmp : Directorio de ficheros temporales
/var : Archivos de variables, logs, emails de los usuario del sistema, etc.

SÍMBOLOS IMPORTANTES EN LINUX

promt : está formado por nombre de usuario y máquina, separados por @
@ : usado para separar el nombre de usuario con el nombre de la máquina.
~ : indica que estamos dentro de nuestro directorio de usuario.
$ : indica que estamos trabajando con un usuario sin privilegios.
# : indica que estamos trabajando con un usuario administrador (root).


COMANDOS PARA GESTIÓN DE ARCHIVOS

Diferencias : ruta absoluta / ruta relativa
Distinción entre mayúsculas y minúsculas

clear : limpiar pantalla de terminal.
exit : salir de usuario.
ls : listar contenido de directorio.
cd : cambiar a otro directorio.
pwd : mostrar el directorio actual.
man : mostrar el manual.
mkdir : crear directorios o subdirectorios.
rm : borrar archivos.
mv : mover y renombrar archivos.
cp : copiar archivos.
touch : crear archivo.

WILDCARDS

Un carácter comodín es un carácter que representa cualquier otro carácter o cadena de caracteres. Algunos de los caracteres comodines que se utilizan en informática son: * (asterisco), ? (signo de pregunta), [ ] (corchetes) % (por ciento), _ (guión bajo). El comodín puede ser utilizado como carácter comodín en casi cualquier motor de búsqueda.

? : Cualquier caracter (sólo uno).
* : Uno o varios caracteres.
[ ]: caracteres o rangos.

cat : concatenar archivos y mostrar contenido de archivo.
more : ver (pero no modificar) el contenido de un archivo o comando y visualizarlo por páginas.
head : mostrar las primeras diez líneas de un archivo.
tail : mostrar las últimas líneas de un archivo.

VIM significa “Vi mejorado”, ya que es sólo una versión avanzada del editor de texto por defecto de Linux. Está especialmente diseñado teniendo en cuenta las necesidades de un desarrollador. También se llama como un redactor de los programadores para sus opciones altamente configurables. Al igual que el editor Vi, puede utilizarse como una utilidad de línea de comandos o también como una aplicación GUI independiente.


En un entorno de escritorio GNOME, entonces por defecto viene con un editor de texto llamado Gedit. Al igual que el objetivo de GNOME para siempre proporcionar funcionalidades que son limpias y sencillas, Gedit también sigue el mismo objetivo, ya que es ligero y viene con una interfaz de usuario limpia y simple.

Algunas de las características únicas de Gedit incluyen:

  • Resaltado de sintaxis
  • Soporta texto internacionalizado
  • Soporta varios lenguajes de programación.

Emacs es un editor de texto con una gran cantidad de funciones, muy popular entre programadores y usuarios técnicos. GNU Emacs es parte del proyecto GNU y la versión más popular de Emacs con una gran actividad en su desarrollo. El manual de GNU Emacs lo describe como “un editor extensible, personalizable, auto-documentado y de tiempo real.”

Archivos .tar.gz:

Comprimir:

tar -czvf empaquetado.tar.gz /carpeta/a/empaquetar/

Descomprimir:

tar -xzvf archivo.tar.gz


Archivos .tar
:

Empaquetar:

tar -cvf paquete.tar /dir/a/comprimir/

Desempaquetar:

tar -xvf paquete.tar


Archivos .gz
:

Comprimir:

gzip -9 index.php

Descomprimir:

gzip -d index.php.gz


Archivos .zip
:

Comprimir:

zip archivo.zip carpeta

Descomprimir:

unzip archivo.zip

Fuente : https://www.edu.xunta.gal/centros/zonabetanzosd6/node/29

La distribución de software en Linux se realiza de tres maneras principales:

  • Repositorios: son servidores centrales, mantenidos generalmente por una distribución en particular, por la comunidad, o por otros terceros, en los que se dispone de una colección de software para la instalación a través de Internet o de una red local.
  • Archivos precompilados: son archivos ejecutables compatibles para una distribución en particular y que pueden instalarse tanto a través de la red como de manera local con una herramienta de la línea de comandos (en unos minutos veremos esto en más detalle).
  • Código fuente: es la forma inicial mediante la cual se distribuía software en Linux. Aunque ha sido superada en uso por las dos anteriores, todavía continúa usándose para ofrecer a los usuarios finales la posibilidad de compilar un programa dado con opciones particulares. También se utiliza este método de distribución de software para poner al alcance del público una versión más actualizada que tenga mayores prestaciones que las presentes en los repositorios.

A diferencia de otros sistemas operativos en los que la instalación de un programa mayormente se lleva a cabo “haciendo doble click” sobre un archivo ejecutable (.exe windows), en Linux disponemos de varios comandos para hacer esta tarea.

Cada distribución tiene distintas utilidades para la administración de paquetes. Algunos de ellos (como yum o aptitude, para CentOS y Debian, respectivamente) tienen la habilidad de instalar junto con un programa dado también sus dependencias, es decir, aquellos paquetes adicionales que son necesarios para el funcionamiento del primero. Otros, como dpkg (Debian y derivados) y rpm (Red Hat, CentOS y familiares), solamente instalan el programa presente en el archivo .deb o .rpm pero sin instalar dependencias.


Fuente – Más información: https://blog.carreralinux.com.ar/2016/07/administracion-de-paquetes-linux/

La administración de usuarios y grupos solamente puede realizarlas el usuario root utilizando los comandos de gestión de usuarios. Las tareas y los comandos para realizarlas son:

  • Creación de usuarios / useradd

El comando useradd permite añadir un usuario indicando como parámetros la información particular para crear el usuario en la misma línea de comandos. La sintaxis es:

Crear usuario useradd [opciones] nombre-usuario

Entre las opciones más destacables tenemos:
-g: Grupo principal que queremos tenga el usuario (debe existir previamente)
-d: Carpeta home del usuario. Suele ser /home/nombre-usuario
-m: Crear carpeta home si es que no existe.
-s: Intérprete de comandos (shell) del usuario. Suele ser /bin/bash

Ejemplo, si deseamos crear un usuario llamado ‘pedro’ cuyo grupo principal sea ‘valenciatech’, cuya carpeta home sea /home/pedro y su intérprete de comandos sea /bin/bash, ejecutaremos el siguiente comando:

Crear un usuario sudo useradd -g valenciatech -d /home/pedro -m -s /bin/bash pedro

De esta manera habremos creado al usuario pedro y su carpeta home. Si no utilizamos la opción -m, no se creará la carpeta home del usuario; en tal caso tendríamos que crearla manualmente. Tan solo nos quedará establecer su contraseña con el comando passwd:

Establecer la contraseña del usuario sudo passwd pedro

Entonces el sistema nos preguntará dos veces la contraseña que queremos asignar a pedro.

El comando useradd permite crear muchos usuarios automáticamente mediante archivos de comandos (scripts).

Se recomienda que el nombre de usuario sea en minúsculas y además de letras también puede contener números y algún signo como guiones normales y guiones bajos. Debemos recordar que unix distingue entre mayúsculas y minúsculas, es decir, Pepe es distinto de pepe.

Modificación de usuarios / usermod

Se utiliza el comando usermod y permite cambiar el nombre del usuario, su carpeta home, su intérprete de comandos, los grupos a los que pertenece y algunos otros parámetros.

Cambiar el home de un usuario sudo usermod -d /home/carpeta_pedro pedro

  • Eliminación de usuarios / userdel

Se realiza con el comando userdel seguido del nombre del usuario. Con la opción -r eliminará también su carpeta home, ejemplo:

Eliminación de un usuario sudo userdel -r pedro

Eliminaría el usuario pedro y su carpeta home.

  • Creación de grupos / groupadd

El comando groupadd permite añadir un grupo indicando como parámetro el nombre del grupo. Ejemplo, si deseamos crear un grupo llamado ‘alumnos’ ejecutaremos:

Añadir un grupo sudo groupadd alumnos

  • Modificación de grupos / groupmod

El comando groupmod permite modificar el nombre de un grupo o el gid del mismo. La sintaxis es: sudo groupmod [-g nuevo-gid] [-n nuevo-nombre] nombre-grupo, ejemplo:

Cambiar el gid del grupo valenciatech sudo groupmod -g 2000 valenciatech

  • Eliminación de grupos / groupdel

Se realiza con el comando groupdel seguido del nombre del grupo, ejemplo:

Eliminación de un grupo sudo groupdel valenciatech

Eliminaría el grupo valenciatech. Si algún usuario tuviera dicho grupo como grupo primario, el comando groupdel no eliminará el grupo.

  • Añadir usuarios a un grupo / adduser

Se utiliza el comando adduser seguido del nombre del usuario y del nombre del grupo al que queremos añadirle, ejemplo:

Añadir a ‘juan’ al grupo ‘valenciatech’ sudo adduser juan valenciatech

  • Quitar usuarios de un grupo / deluser

Se utiliza el comando deluser seguido del nombre del usuario y del nombre del grupo del que queremos quitarle, ejemplo:

Quitar a ‘juan’ del grupo ‘valenciatech’ sudo deluser juan valenciatech

Para más información de todos estos comandos se puede consultar la ayuda del manual ejecutando man seguido del nombre del comando, ejemplo man adduser.


Fuente – Más información:
http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m1/administracin_de_usuarios_y_grupos.html
https://www.tecmint.com/add-users-in-linux/
Campos : https://www.linuxtotal.com.mx/index.php?cont=info_admon_008

Estructura básica de permisos en directorios

En el caso de los directorios tenemos los mismo permisos, pero con un significado diferente.

  •  Permiso de lectura en un directorio
    Si un directorio tiene permiso de lectura, puedes ver los archivos que éste contiene. Puedes usar un “ls (list directory)” para ver su contenido, que tengas permiso de lectura en un directorio no quiere decir que puedas leer el contenido de sus archivos si no tienes permiso de lectura en ésos.
  •  Permiso de escritura en un directorio
    Con el permiso de escritura puedes agregar, remover o mover archivos al directorio.
  •  Permiso de ejecución en un directorio
    Ejecución te permite usar el nombre del directorio cuando estás accediendo a archivos en ese directorio, es decir este permiso lo hace que se tome en cuenta en búsquedas realizadas por un programa, por ejemplo, un directorio sin permiso de ejecución no sería revisado por el comando find.

Usuarios, Grupos y Otros

Ahora conocemos los 3 permisos y cómo agregar o remover éstos, pero estos 3 permisos son almacenados en 3 lugares diferentes llamados:
Usuario (u) proviene de user
Grupo (g) proviene de group
Otros (o) proviene de other

Permisos en formato numérico octal

La combinación de valores de cada grupo de los usuarios forma un número octal, el bit x es 20 es decir 1, el bit w es 21 es decir 2, el bit r es 22 es decir 4, tenemos entonces:

r = 4
w = 2
x = 1

La combinación de bits encendidos o apagados en cada grupo da ocho posibles combinaciones de valores, es decir la suma de los bits encendidos:

– – – = 0 Sin permisos
– – x = 1 Ejecución
– w – = 2 Escritura
– w x = 3 Escritura y ejecución
r – – = 4 Lectura
r – x = 5 Lectura y ejecución
r w – = 6 Lectura y escritura
r w x = 7 Lectura, escritura y ejecución.

Las combinaciones octales más comunes son:

777 ( rwx/rwx/rwx )
755 ( rwx/r-x/r-x )
644 ( rw-/r—–/r—– )
655 ( rw-/r-x/r-x )
FORMATO NOTACIÓN NUMÉRICA    
PermisosValorDescripción
rw—— 600 El propietario tiene permisos de lectura y escritura.
rwx–x–x 711 El propietario lectura, escritura y ejecución, el grupo y otros solo ejecución.
rwxr-xr-x 755 El propietario lectura, escritura y ejecución, el grupo y otros pueden leer y ejecutar el archivo.
rwxrwxrwx 777 El archivo puede ser leído, escrito y ejecutado por quien sea.
r—– 400 El propietario puede leer el archivo, pero no puede modificarlo o ejecutarlo y por supuesto ni el grupo ni otros pueden hacer nada en él.
rw-r—– 640 El usuario propietario puede leer y escribir, el grupo puede leer el archivo y otros no pueden hacer nada.

Permisos en modo simbólico

Otra manera de establecer los permisos de un archivo o directorio es a través de identificadores del bit (r,w, o x) de los permisos, como ya se vio anteriormente, pero ahora identificando además lo siguiente:

al usuario con la letra u
al grupo con la letra g
a otros usuarios con la letra o
a todos (usuario, grupo, otros) con la letra a (all, todos en inglés)
el signo + para establecer el permiso
el signo para eliminar o quitar el permiso

La sintaxis es muy simple chmod augo[+|-]rwx[,…] archivo[s]

así, por ejemplo, si queremos que otros tengan permiso de escritura sería chmod o+w archivo

todos los usuarios con permisos de ejecución chmod a+x archivo.

En este modo de establecer permisos, solo hay que tomar en cuenta que partiendo de los permisos ya establecidos se agregan o se quitan a los ya existentes.Veámoslo con ejemplos su manera de trabajar:

ActualchmodResultadoDescripción
rw—— a+x rwx–x–x Agregar a todos (all) permisos de escritura.
rwx–x–x go-x rwx—— Se eliminan permiso de ejecución para grupo y otros.
rwxr-xr-x u-x,go-r rw—x–x Al usuario se le quita ejecución, al grupo y otros se le quita lectura.
rwxrwxrwx u-x,go-rwx rw—— Al usuario se le elimina ejecución, al grupo y otros se eliminan todos los permisos.
r——– a+r,u+w rw-r–r– A todos se les agrega lectura, al usuario se le agrega escritura.
rw-r—— u-rw,g+w,o+x —rw—x Al usuario se le eliminan lectura y escritura, al grupo se le agrega lectura y otros se le agrega ejecución.

UMASK

Permisos preestablecidos con umask

El comando umask establece la máscara de permisos de directorio y de archivos. Es decir los nuevos directorios y archivos que se crean obtienen el valor de los permisos a partir de los valores de umask.

$> umask
0002
(o en formato simbólico con la opción -S)
$> umask -S
u=rwx,g=rwx,o=rx

Lo anterior indica que un directorio y archivos ejecutables se crearán con los permisos 775 y los archivos comunes con los permisos 664. Esto se logra restando de 777 el valor de umask (777-002) y (666-002) respectivamente. El primer valor de umask corresponde para valores de Sticky bit, GUID o SUID, que por default es 0.

$> umask
0002
(Creamos un archivo y según la máscara debemos de tener 666-002=664 o rw-rw-r–)
$> touch archivo
$> ll archivo
-rw-rw-r– 1 sergio sergio 0 sep 25 20:14 archivo
(Ahora creamos un directorio y según la máscara debemos de tener 777-002=775 o rwxrwxr-x)
$> mkdir dir
$> ls -ld dir
drwxrwxr-x 2 sergio sergio 4096 sep 25 20:20 dir

Para establecer el valor de la máscara, simplemente se usa el mismo comando umask seguido del valor de máscara que se desee:

$> umask 0022

comandos :

chmod
chown
ep

EXPRESIONES REGULARES

. Significa cualquier caracter.
^ Indica el principio de una línea.
$ Indica el final de una línea.
* Indica cero o más repeticiones del caracter anterior.
+ Indica una o más repeticiones del caracter anterior.
\< Indica el comienzo de una palabra.
\> Indica el final de una palabra.
\ Caracter de escape. Da significado literal a un metacaracter.
[ ] Uno cualquiera de los caracteres entre los corchetes. Ej: [A-Z] (desde A hasta Z).
[^ ] Cualquier caracter distinto de los que figuran entre corchetes: Ej: [^A-Z].
{ } Nos permiten indicar el número de repeticiones del patrón anterior que deben darse.
| Nos permite indicar caracteres alternativos: Ej: (^|[?&])
( ) Nos permiten agrupar patrones. Ej: ([0-9A-F]+:)+

BUSCAR POR NOMBRE DE ARCHIVO ( fuera de archivo – contenedor ) 

find

Parámetros : -name , – size ( ver unidades ) , -type ( ver tipos )

No hace falta recursividad

Combinación con -exec

find –version

find -delelete similar a -exec rm

Ejemplos :
https://www.linuxtotal.com.mx/index.php?cont=info_admon_022
https://blog.itlinux.cl/blog/2014/02/03/10-ejemplos-del-uso-del-comando-find/

BUSCAR DENTRO DE ARCHIVO ( dentro de archivo – contenido )

grep

parámetros de GREP

-c En lugar de imprimir las líneas que coinciden, muestra el número de líneas que coinciden.
-e PATRON nos permite especificar varios patrones de búsqueda o proteger aquellos patrones de búsqueda que comienzan con el signo -.
-r busca recursivamente dentro de todos los subdirectorios del directorio actual.
-v nos muestra las líneas que no coinciden con el patrón buscado.
-i ignora la distinción entre mayúsculas y minúsculas.
-n Numera las líneas en la salida.
-E nos permite usar expresiones regulares. Equivalente a usar egrep.
-o le indica a grep que nos muestre sólo la parte de la línea que coincide con el patrón.
-f ARCHIVO extrae los patrones del archivo que especifiquemos. Los patrones del archivo deben ir uno por línea.
-H nos imprime el nombre del archivo con cada coincidencia.

Fuente y ejemplos  : https://enavas.blogspot.com/2008/04/el-shell-de-linux-comando-grep.html

COMANDO SED

sed -i ‘s/textoorigen/textodestino/g’ archivo

EJEMPLOS DE USO AVANZADO

http://www.sromero.org/wiki/linux/aplicaciones/uso_de_sed

entrada estándar 0

salida estándar 1

error estándar 2

consiste en trasladar la información de un tipo a otro  a través del operador >

OPERADORES

Operador RedirecciónEfecto del Operador
>
Redirige la stdout a un fichero, si no existe lo crea, y si existe lo sobre escribe (borra el contenido antes de incluir el nuevo contenido)
>>
Añade la stdout a un fichero, pero a diferencia del anterior la añade al fichero especificado
2>
Redirige la stderr a un fichero, si no existe lo crea, y si existe lo sobre escribe (borra el contenido antes de incluir el nuevo contenido)
2>>
Redirige la stderr a un fichero, pero a diferencia del anterior la añade al fichero especificado
&>
Crea un fichero tanto con stdout como con stderr , si ya existe elimina primero su contenido
<
Envía el contenido del fichero especificado como stdin
<<
Utiliza como stdin las líneas de texto pasadas
<>
El fichero especificado será utilizado tanto como stdin como stdout

Fuente : http://www.lopeztorrijos.com/tutoriales/linux/flujos-redirecciones-pipes/redireciones

EJEMPLOS

ls > lista.txt
ls >> lista.txt

Más información en: https://ayudalinux.com/redireccionar-tuberias-en-linux/

wc < archivo.txt

DEV/NULL

archivo especial que sirve para redireccionar información que no se quiere

Ej : Descartar errores, borrar contenido de ficheros, …
programa > /dev/null

TUBERÍAS

redireccionar la salida estándar de un programa hacia la entrada estándar de otro.

ps -a | sort

CREACIÓN DE ARCHIVO

#!/bin/bash

CREACIÓN DE CÓDIGO FUENTE

PERMISOS

chmod +x FILENAME

EJECUCIÓN

./script.sh

PASO DE PARÁMETROS


echo $1 $2 $4
echo $#
echo $*

VARIABLES

greeting="Welcome"
user=$(whoami)
day=$(date +%A)

ENTRADA / SALIDA

echo : sacar por salida estandar

read : leer de la entrada estandar

LECTURA DE VARIABLES

OPERADORES DE COMPARACIÓN

DescriptionNumeric ComparisonString Comparison
Shell comparison example: [ 100 -eq 50 ]; echo $? [ “GNU” = “UNIX” ]; echo $?
less than -lt <
greater than -gt >
equal -eq =
not equal -ne !=
less or equal -le N/A
greater or equal -ge N/A

CONDICIONALES

if [ $num_a -lt $num_b ]; then
    echo "$num_a is less than $num_b!"
fi

BUCLES

for i in 1 2 3; do
    echo $i
done
while [ $counter -lt 3 ]; do
    let counter+=1
    echo $counter
done
until [ $counter -lt 3 ]; do
    let counter-=1
    echo $counter
done

FUNCIONES

function total_files {
        find $1 -type f | wc -l
}

function total_directories {
        find $1 -type d | wc -l
}

function total_archived_directories {
        tar -tzf $1 | grep  /$ | wc -l
}

function total_archived_files {
        tar -tzf $1 | grep -v /$ | wc -l
}

ENLACES

https://linuxconfig.org/bash-scripting-tutorial-for-beginners

https://bioinf.comav.upv.es/courses/unix/scripts_bash.html

PROCESOS

ps : procesos de Bash.
ps -u : procesos de usuario.
top : procesos en tiempo real.
htop : procesos en tiempo real. Permite la navegación entre procesos.
free : memoria ocupada.

LISTAR PROCESOS

ps

ps aux

BUSCAR PROCESOS POR NOMBRE

ps aux | grep palabra clave

equivalente es :

pgrep palabraclave

pgrep -l palabraclave ( con el nombre del proceso, no solo el id )

MATAR PROCESOS

en vez de matar procesos por nombre de ID con el comando kill,
podemos usar el comand pkill que lo hace es filtrar los procesos con grep, por nombre del servicio y no por id
por ejemplo : pkill httpd ( en redhat ) pues mata todos los procesos del servidor web apache.

COMANDOS – TOP / HTOP

# ps -A
# ps -e

LISTAR TODOS LOS PROCESOS EXCEPTO ROOT

# ps -U root -u root -N

LISTAR PROCESOS POR USUARIO

# ps -u usuario

COMANDO – PSTREE

COMANDO NICE – DAR PRIORIDAD A 1 PROCESO

Permite cambiar la prioridad de un proceso. Por defecto, todos los procesos tienen una prioridad igual ante el CPU que es de 0. Con nice es posible iniciar un programa (proceso) con la prioridad modificada, más alta o más baja según se requiera. Las prioridades van de -20 (la más alta) a 19 la más baja. Solo root o el superusuario puede establecer prioridades negativas que son más altas. Con la opción -l de ps es posible observar la columna NI que muestra este valor.

nice -n -10 comando

COMANDO RENICE – PRIORIDAD EN TIEMPO REAL

Así como nice establece la prioridad de un proceso cuando se inicia su ejecución, renice permite alterarla en tiempo real, sin necesidad de detener el proceso.

renice 7 12826

SIGLAS : Secure SHell

https://wiki.debian.org/AccesoRemotoSSH

El comando ssh ofrece comunicación encriptada y segura entre dos sistemas sobre una red no segura. Este comando reemplaza al telnet, rlogin, rsh.

CARACTERÍSTICAS

comunicaciones entre cliente y servidor son cifradas
Se creó para sustituir a Telnet
El transporte se hace mediante TCP/IP

CONEXIÓN SSH

usuario@servidor

SERVIDOR SSH – SEGURIDAD MÍNIMA

Cambiar puerto por defecto

Deshabilitar acceso root directo

Deshabilitar password plano

clave RSA

Más información :

https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04

INSTALACIÓN DE SERVIDOR SSH

apt-get install openssh-server
configuracion : /etc/ssh/sshd_config
arranque : /etc/init.d/ssh start
parada : /etc/init.d/ssh stop
reincio : /etc/init.d/ssh restart

MÉTODOS DE CONEXIÓN

password
clave pública / privada
host

scp

El comando scp permite copiar ficheros entre dos máquinas. Utiliza ssh para la transmisión de la información, por lo que ofrece la misma seguridad que el ssh. De la misma manera utiliza los métodos de autenticación de ssh. Este comando reemplaza al rcp, ftp.

Fuente : http://www3.uji.es/~galdu/ssh_vs_rsh/x165.html

VIDEOTUTORIAL SSH

SELECCIONA EL REPOSITORIO MÁS RÁPIDO

Programa recomendado para conocer el repositorio más rápido :

apt-get install netselect-apt

Una vez instalado puedes ejecutarlo :

netselect-apt -n -s stretch

El resultado debes copiarlo en el archivo /etc/apt/sources.list

cp /etc/apt/sources.list /etc/apt/sources.list.bak
cp /etc/apt/sources.list /etc/apt/sources.list

ACTUALIZAR DEBIAN 9 PARA CORRECION DE ERRORES Y MEJORAS

Apt-get update && apt-get upgrade

MANEJAR CUALQUIER TIPO DE ARCHIVO COMPRIMIDO

Los archivos comprimidos son muy comunes en cualquier sistema operativo. Igualmente cuando descargamos ficheros de Internet, vienen comprimidos.

En linux se hace mucho uso del empaquetador TAR y el compresor GZIP. Son los famosos archvos.tar.gz

Para hacer que casi cualquier formato comprimido funcione (comprimir y descomprimir) solo tienes que instalar este largo comando:

apt install rar unrar unace p7zip-full p7zip-rar lzip arj sharutils mpack lzma lzop unzip zip bzip2 lhasa cabextract lrzip rzip zpaq kgb xz-utils

Recomendado : Ir instalando de 1 en 1 conforme los vayamos necesitando.

INSTALAR FUENTES TIPOGRAFICAS EN DEBIAN

Disponer de varias fuentes en tu sistema operativo es importante, ya que te ayudara a mejorar el aspsecto de tus visitas a ciertas paginas web o visualizar ciertos documentos.

apt install fonts-inconsolata fonts-droid-fallback ttf-dejavu ttf-liberation xfonts-terminus fonts-droid-fallback ttf-liberation ttf-dejavu ttf-bitstream-vera fonts-cantarell fonts-liberation ttf-dejavu fonts-oflb-asana-math fonts-mathjax

Recomendado : Ir instalando de 1 en 1 conforme los vayamos necesitando.

INSTALAR TODOS LOS COMPRESORES/DECOMPRESORES PARA DEBIAN

apt install rar unrar unace p7zip-full p7zip-rar lzip arj sharutils mpack lzma lzop unzip zip bzip2 lhasa cabextract lrzip rzip zpaq kgb xz-utils

COMO INSTALAR PAQUETES .deb

Hay programas que no se pueden instalar desde los repositior de Debian, y hay que hacerlo descargando el paquete directamente e intalándolo. Para ello puedes usar el comando dpkg -i paquete.deb desde tu terminal como usuario root, y lo tendrás instalado.
Para solucionar temas de depencias del paquete con otros haz uso de gdebi ( apt-get install gdebi ), que descargará a tus sistema todos los paquetes dependiente del paquete que le indiques.

apt install gdebi gksu

Fuente – Más información  : https://www.comoinstalarlinux.com/que-hacer-despues-de-instalar-debian-9-en-tu-escritorio/

Leer más ...

Utiliza toda la potencia de tu ordenador y ejecuta tareas en paralelo

Gaspar Fernández

Written by

Hace muchos años, la programación multihilo solo servía para darnos a los usuarios la sensación de multitarea y que el ordenador pudiera respondeer cuando interactuábamos con él. Normalmente sólo teníamos un único núcleo de CPU y solo podía ejecutar una cosa en un momento del tiempo determinado. Aunque el sistema operativo se encargaba de ir cambiando las tareas que iba ejecutando varias veces por segundo, y por eso podíamos estar viendo una página web y al mismo tiempo chateando con otro programa, copiando un archivo, etc. Esta multitarea también nos ayudaba mucho cuando una aplicación estaba esperando un dato del disco o de un dispositivo (ratón, teclado, red...), ya que estos dispositivos son mucho más lentos que la CPU del ordenador. Es decir, mientras la CPU puede procesar millones de operaciones por segundo, pedir un dato a un disco duro, puede tardar lo mismo que tardarían varios miles de operaciones, y si el dato viene de Internet, puede tardar mucho más. Así que los sistemas operativos multitarea, suspenden la ejecución de dicha aplicación hasta que el dato esté listo, y así aprovechan los ciclos de procesador que podían haberse perdido para hacer cosas más productivas como la descompresión de fotogramas de un vídeo de gatitos.

Eso sí, si en una CPU monohilo ejecutamos dos tareas que requieren CPU de forma intensiva como la compresión de vídeo, renderizado 3D o aplicación de filtros sobre imágenes, nos daremos cuenta de que el tiempo total de la ejecución de las tres tareas es aproximadamente el mismo que ejecutar una tarea detrás de otra.

Pero en los tiempos que corren, es muy común encontrar procesadores con varios núcleos, incluso con varios hilos por núcleo. Al tener varios núcleos, podremos ejecutar varios programas y normalmente el sistema operativo se encarga de colocarlos en uno u otro núcleo, de forma que, ya que nuestro procesador puede ejecutar varias cosas a la vez, aprovechemos esa potencia para terminar las tareas antes.
Aunque ahora el problema suele ser que las aplicaciones no están pensadas para ejecutarse en varios hilos. Bueno, actualmente muchas aplicaciones pueden aprovechar la potencia de los procesadores modernos, como compresores de vídeo, software de minería de criptomonedas, tratamiento de imágenes etc. Pero, muchos programas comunes de búsqueda de datos en ficheros, compresión/descompresión, y muchos de nuestros scripts en Bash o Python no están preparados. 


Ejecución de tareas en paralelo en Bash

Cuando, en Bash queremos ejecutar dos tareas a la vez, siempre podemos ejecutarlo con un & al final, volveremos a nuestro shell para ejecutar más cosas mientras el programa inicial se está ejecutando:

$ programa &amp;
19238
$ … ejecuto más cosas …


O también podemos ejecutarlo normalmente, pulsar Control+Z (^Z). El programa se detendrá, si escribimos en la consola "fg" el programa seguirá en primer plano (foreground), pero si ponemos "bg" el programa seguirá en segundo plano (background), y mientras éste está corriendo, podremos ejecutar más cosas:

$ programa
…
^Z
[1]+ Stopped   programa
… ejecuto más cosas …
$ fg
programa
… programa sigue ejecutándose …
^Z
[1]+ Stopped    programa
$ bg
[1]+ programa &amp;
… puedo ejecutar lo que quiera …


GNU Parallel

Con esto puede ser suficiente para muchos de nosotros pero, ¿y si queremos utilizar más hilos? Es un poco pesado ejecutar varios programas con sus argumentos y una & al final. ¿O queremos que los argumentos vayan cambiando según la ejecución? ¿O incluso queremos ejecutar cientos de tareas pero que se vayan repartiendo la CPU de 2 en 2, de 4 en 4 o más dependiendo del número de núcleos que tengamos? Para eso, y mucho más, tenemos la utilidad GNU Parallel.
Un ejemplo típico es crear un programa que calcule dígitos del número PI con un hilo de CPU, es muy fácil con bc:

#!/bin/bash
echo "scale=4000; a(1)*4" | bc -l

Lo salvamos como pi.sh y le damos permiso de ejecución con:

$ chmod +x pi.sh


Este programa, ejecutado en mi ordenador tarda unos 11 segundos en terminar. Suponiendo que nuestro equipo tenga 2 núcleos, podemos hacer:

$ time ./pi.sh &amp; time ./pi.sh


Veremos que tarda también 11 segundos (más o menos). Esto lo podemos hacer con GNU Parallel de esta forma:

$ time seq 2 | parallel -n0 ./pi.sh

Donde se ejecutará el comando pi.sh dos veces y de forma simultánea. Pero, aunque esta orden pueda parecer complicada, podemos jugar un poco con ella, para ejecutar pi 4 veces de forma simultánea:

$ time seq 4 | parallel -n0 ./pi.sh

Si nuestra CPU tiene 4 núcleos, seguirá tardando 11 segundos, en realizar cuatro tareas, pero si nuestra CPU tiene 2 núcleos, tardará más de 22 segundos. Ya que las tareas utilizan mucho la CPU y es un trabajo extra para el sistema operativo intercalarlas para que se ejecuten a la vez. Pero, imaginémonos que queremos ejecutar 4 veces pi, pero que se repartan de 2 en 2, para ello podemos hacer:

$ time seq 4 | parallel -n0 -j2 ./pi.sh

Si queremos, podemos ejecutar un gestor de tareas o el comando "top" con el que veremos qué tareas están en ejecución cada vez.


Varias tareas con argumentos

Ahora vamos a modificar pi.sh así:

#!/bin/bash
DECIMALES=$1
echo "scale=$1; a(1)*4" | bc -l

De modo que tengamos que introducir el número de dígitos que queremos de Pi. Así ejecutaremos pi.sh de forma concurrente pero con parámetros diferentes en cada ejecución. Podemos jacer lo siguiente:

$ time echo "1000 2000 3000 4000" | tr ' ' '\n' | parallel ./pi.sh

O si queremos que solo haya dos ejecuciones de pi.sh simultáneas:

$ time echo "1000 2000 3000 4000" | tr ' ' '\n' | parallel -j2 ./pi.sh

Nota: El uso de tr es porque parallel necesita que los argumentos vayan uno por línea. Si los argumentos los tenemos en un archivo y uno por línea podríamos hacer:

$ cat argumentos | parallel -j2 ./pi.sh


Combinaciones de argumentos

Con GNU Parallel podemos incluso combinar argumentos. En este ejemplo, cambiamos de base varios números binarios a base 10

$ parallel echo -n {1}{2}{3}{4} = \;'echo "ibase=2;{1}{2}{3}{4}" | bc' ::: 0 1 ::: 0 1 ::: 0 1 ::: 0 1
0000 =0
0001 =1
0010 =2
0011 =3
0100 =4
0101 =5
0110 =6
0111 =7
1000 =8
1001 =9
1010 =10
1011 =11
1100 =12
1101 =13
1110 =14
1111 =15

Y como vemos, GNU Parallel, además de proporcionarnos una forma sencilla de ejecutar programas simultáneamente, nos proporciona también una forma de combinar argumentos y generar resultados muy potente. Utilizando {1}, {2},...{n} dependiendo del número de argumento que estemos tratando

Convirtiendo masivamente archivos de JPG a PNG

Uno de mis usos preferidos, es la conversión automática de archivos, o tratamiento de imágenes con ImageMagick. Además, podemos automatizar esta conversión para realizarla en cientos de archivos y despreocuparnos del ordenador ya que él se encarga de hacer el trabajo. Una tarea muy sencilla es convertir un archivo de JPG a PNG con convert. Pero, ¿si tenemos una carpeta llena de archivos? Podemos ejecutar convert en todos ellos, y hacerlo uno detrás de otro, pero podríamos hacerlo, por ejemplo de 2 en 2 o de 4 en 4 dependiendo dee nuestra CPU, incluso podríamos subir a 3 o 5 porque la conversión de archivos implica lecturas y escrituras y es tiempo que podemos estar procesando datos (los archivos convertidos entrarán en el directorio convertidas):

$ find -maxdepth 1 -name*.jpg’ | parallel --progress -j3 convert -verbose {} convertidas/{/.}.png

Fijaos cómo en el segundo argumento le quito la extensión para llamarla png. Podría variar el número del argumento -j según mis preferencias. Además, he introducido --progress que nos indicará el progreso de la tarea.
Como último ejemplo, nos basaremos en el anterior. Pero esta vez, utilizaremos zenity para presentar una barra de progreso de manera gráfica. ¡Porque, que sea terminal no significa que no sea visual!

$ find -maxdepth 1 -name*.jpg’ | parallel --bar convert {} convertidas/{/.}.png 2> >(zenity --progress --auto-kill)

¡Espero que les haya resultado útil!

Leer más ...

¿Dónde se encuentra el diccionario de mi idioma en GNU/Linux?

Cuando usando una aplicación nos autocompleta el texto, nos subraya una palabra o nos dice que algo está incorrectamente escrito, no es magia, es que esa aplicación hace uso de un diccionario.

Aunque hay aplicaciones que tienen diccionarios propios, el sistema también tiene al menos uno genérico del que podemos hacer uso o podemos usarlo como base para añadirle nuevas palabras.

En Ubuntu, este diccionario está en:

/usr/share/dict/spanish

Pero no necesariamente todas las distribuciones tienen por qué guardar el diccionario de español en esa dirección, por lo que podemos buscar en nuestro sistema con:

find /usr -iname spanish | grep dict

Y nos dirá la dirección en el arbol de directorios del sistema de nuestro diccionario.

diccionario.png

Leer más ...

Crear un gif animado con ImageMagick y los parámetros -loop y -delay

Ya hemos visto cómo unir imágenes con -delay para crear un gif animado. Pero -delay, que es muy sencillo de usar, no permite definir cuántas veces queremos que se repita el bucle ni la velocidad a la que queremos que se muestren las imágenes que forman la animación.

Para estas dos funcionalidades tenemos:

-loop que permite definir el número de veces que queremos que se repita una determinada animación. Le indicamos el número de veces que queremos que se repita. Y si queremos que se repita infinitas veces, se lo indicamos con 0.

-delay que establece la velocidad a la que se mostararán las imágenes en centésimas de segundo. Es decir, si queremos que entre imagen e imagen pase un segundo, le indicaremos 100.

Así:
convert -delay 10 -loop 0 param* param.gif

Si quieren ver diversas fórmulas para crear imágenes que van mutando y luego unirlas en ficheros gif, pueden leer este hilo de Twitter:

https://twitter.com/hacemoswebserie/status/1037884393430429699

Leer más ...

Envío de parámetros en funciones en shell script

Cuando hacemos funciones en shell script, el siguiente paso es poder interactuar con las funciones. Poder enviarle datos y que nos devuelva resultados. 

Una vez definida una función, esta actuará siempre como un si fuera un comando. Tanto internamente, que recogerá en $1 el parámetro le pasemos en primer lugar, $2, el parámetro que le pasemos en segundo lugar... como para pasarle parámetros a la hora de invocar la función, que lo haremos como si fuera el parámetro de un comando normal. 

Veamos un ejemplo:

#!/bin/bash
function saludo()
{
   echo "Soy una función que saluda: Hola, "$1 
}
saludo Pepe

Nos devolverá al ejecutar el script:

Soy una función que saluda: Hola, Pepe

Leer más ...

Activar y desactivar el ratón de un portátil (touchpad)

Si eres de los que teclea con las muñecas apoyadas en la mesa, cuando trabajas con un portátil seguramente el ratón táctil te hará cosas raras en la pantalla ya que, aunque no toques la superficie destinada a manejar el puntero, son bastante sensibles y mueven el puntero simplemente con apoyar algo cerca. 

Para evitar esa molestia, podemos desactivar el teclado del ratón y trabajar con uno externo. La instrucción para eso es:

sudo modprobe -r psmouse

Y si luego queremos volverlo a activar:

sudo modprobe psmouse

Leer más ...

Cómo girar un vídeo en VLC y hacer permanente ese cambio

Rubén Abad

Written by

He aquí un videotutorial. He intentado hacerlo lo mejor posible, pero se mejorará la técnica en futuras producciones de este estilo, que vengan de mi firma. Se trata, básicamente, de cómo girar un vídeo y hacer que ese cambio sea permanente a partir de la codificación del mismo con el VLC. Dentro vídeo:

Leer más ...

Cómo hacer screencasts en Linux

Rubén Abad

Written by

En este tutorial os voy a explicar una forma sencilla de grabar la pantalla de cualquier distribución Linux, con el fin que sea preciso. Para ello, usaremos la herramienta recordMyDesktop (http://recordmydesktop.sourceforge.net/about.php), la cual, permite hacer esta tarea. Esta aplicación está disponible en todas las distribuciones Linux, por lo que no hay mayor problema en su instalación. En mi caso (entorno Debian/Ubuntu, etc.), se instalaría así:

sudo apt-get install gtk-recordmydesktop

Encontrarás la aplicación en el apartado Multimedia de la lista de aplicaciones de tu distribución Linux favorita. Cuando la arranques, verás algo como esto:

2018 07 14 200449 1024x600 scrot

Con el botón "Seleccionar Ventana" podrás señalar el área a grabar, arrastrando el cuadrado rojo de la imagen pequeña, tal y como se ve aquí:

2018 07 14 201336 1024x600 scrot

Cuando hayas realizado esto, dale a "Grabar". El sistema empezará a grabar la pantalla, tal y como se ve en este vídeo (de mi autoría):

Finalmente, te saldrá una pantalla de codificación, tal y como se ve aquí. Cuando termine la codificación, podrás ver el vídeo hecho en /home/"tu usuario" bajo el formato OGG (.ogv). Con la opción "Convertir" de VLC podrás convertirlo a algún formato más amigable para su compartición.

2018 07 14 201232 1024x600 scrot

Leer más ...

Como Instalar Steam en Linux

Ainumortis

Written by

¿Que es Steam?
Steam es una plataforma creada por Valve para centralizar y distribuir videojuegos de forma digital, estos juegos pueden funcionar en Windows, Mac o GNU/Linux siempre que sean compatible.

Steam tiene la ventaja de que compras el juego una sola vez, y si sacan una versión para tu sistema no necesitas comprarlo de nuevo.

¿Que distribución elijo para Jugar?
Steam esta disponible para casi todas las distribuciones, pero su compatibilidad esta centrada en Ubuntu ya que es la plataforma elegida por la mayoría de desarrolladores.

Instalación
Para instalarlo bastará con buscarlo en el centro de software de nuestra distribución, pero como buenos GNU/Linuxeros que somos usaremos la terminal.

Ubuntu | Debian | Linux Mint

$ sudo apt update
$ sudo apt install steam


Arch

$ sudo pacman -S steam steam-native-runtime


Tarjetas Gráficas Soportadas:
Nvidia: Para poder jugar nos hará falta los drivers privativos.
Ati: Con los drivers libres son suficientes para poder jugar.
Intel: Las Intel HD no son lo mas recomendado para jugar, ya que habrá juegos que no lleguen ni a arrancar.

Xorg o Wayland: Desconozco si actualmente se puede jugar bien con Wayland, en su momento me daba problemas con el ratón y he usado Xorg desde entonces, si sufris los mismos problemas en algunos juegos, bastará con elegir XORG en el login de nuestro sistema en lugar de wayland.

Nota del Autor: estoy abierto a correcciones, sugerencias incluso si queréis aportar otras distribuciones como Fedora u OpenSuse, indicadmelo para poder añadirlo. se agradece el feedback.

Leer más ...

Concatenar ficheros PDF en un único documento

Antonio Varilla

Written by

Usando el programa pdftk:

    $ pdftk archivo-1.pdf archivo-2.pdf [archivo-n.pdf] cat output archivo-final.pdf

Leer más ...
Página 1 de 2

¡Atención! Este sitio usa cookies y tecnologías similares.

Si no cambia la configuración de su navegador, usted acepta su uso. Saber más

Acepto

Vea nuestra política de cookies y enlaces de interés aquí