Blog Tecnológico de Clever

Web Personal relacionado a la WEB 2.0. (JavaScript, RIA, XUL y Ajax), lenguajes de programación (Java, PHP, Ruby) y GNU/Linux por supuesto; hincha a morir del Software Libre.

Inicio de sesión

Sindicar

Curso Taller de Ubuntu Linux VII (permisos especiales, procesos, empaquetado y compresión)

Versión para impresiónEnviar a un amigoVersión en PDF

Cambio de Atributos:
-------------------

$> vim prueba
hola mundo

$> chattr +i prueba	
añade el bit de inmutabilidad, el archivo no puede ser modificado

$> vim prueba
hola mundo
que tal
ESC:wq!

$> chattr -i prueba	
quita el bit de inmutabilidad

$> vim prueba
hola mundo
que tal
ESC:wq

$> chattr +a prueba	
establece que el archivo solo se puede escribir añadiendo contenido

$> lsattr prueba	
lista los atributos de un archivo

$> chattr -a prueba	
quita la opcion de solo añadir

$> man chattr		
para ver lista de atributos


Permisos Especiales:
--------------------

SUID 	--->	system UID, permite ejecutar un archivo con los
                permisos del uid asignado.

SGID 	--->	system GID, permite ejecutar un archivo con los 
                permisos del gid asignado.

Sticky 	--->	bit de persistencia, solo el propietario del archivo 
                puede borrar el archivo o directorio.


$> 	sudo su -
accede como root

$> 	echo "date" > /usr/bin/lahora

$> 	chmod 1777 /usr/bin/lahora 
asigna permisos de persistencia totales para el dueño, grupo y otros

$> 	ls -l /usr/bin/lahora
se verifica el sticky

$> 	exit

Como alumno intentar borrar lahora
$> rm /usr/bin/lahora no puede borrar Ejemplo de SUID
$> sudo su -
$> chmod 5755 /usr/bin/vim
Asignando el SUID al editor de texto vim

Loguearnos como usuario
$> su - alumno

Editar archivo /etc/hosts, agregando al final, grabar con ESC:wq!
$> vim /etc/hosts

192.168.10.10 mail.perulinux.com.pe

El usuario alumno pudo grabar en el archivo /etc/hosts porque ejecuto vim como si fuera root

$> sudo su -
$> chmod 755 /usr/bin/vim
Reestablece los permisos originales y le quita el SUID

Nivel especial: (solo root puede asignar este bit)
---------------

0 ---> ningun permiso, valor por defecto

1 ---> sticky

2 ---> sgid

3 ---> sgid+sticky

4 ---> suid

5 ---> suid+sticky

6 ---> suid+sgid

7 ---> suid+sgid+sticky


Configuración de sudo (programa para ejecutar comandos como root)
-------------------------

$> sudo su -

$> apt-get update

$> apt-get install vim ---> instalar el vim editor

$> vim /etc/sudoers (archivo de configuracion de sudo)

17: root = (ALL) ALL 
permiso por defecto para que root pueda ejecutar sudo

25: % admin = (ALL) ALL
Habilita al grupo admin ejecuta todos los comandos con permisos de root


Procesos:
--------

grep --> hace filtro

lista procesos
-----
$> ps ax | grep gdm
verifica si en la lista de procesos se esta ejecutando gdm


2550 PID --> identifica el proceso

? TTY --> consola desde donde se esta ejecutando

ss STATE --> estado del proceso

0:00 TIME --> tiempo que se esta ejecutando el proceso

COMMAND --> comando del proceso

$> man ps
verifica fligs en la pagina del manual


Matar procesos:
--------------
Ejecuta un proceso que guarda en el archivo boom y lo manda a segundo plano
$> yes > boom &
$> ps ax | grep yes
$> ls -l boom
$> killall yes
$> ps ax | grep yes
$> yes > boom &
$> ls -l boom
$> ps ax | grep yes
$> kill -9 2525
$> ps ax | grep yes


Consumo de recursos de procesos:
-------------------------------

$> top --> los primeros procesos son los que mas recursos consumen

q --> sale del top


Ejecucion de procesos:
---------------------

$> yes
ejecuta proceso en primer plano ctrl+c cancela la ejecucion del comando

$> yes >/dev/null &
ejecuta el proceso en segundo plano

$> ps axf | grep yes
muestra la ruta del comando ejecutado

$> jobs
lista los procesos ejecutados por el usuario

$> fg1
vuelve a primer plano el proceso 1 de la lista anterior

$> killall yes

$> kill -9

$> nohup yes >/dev/null &
permite ejecutar un proceso a nivel sistema de tal forma que el proceso no esta enlazado al tyy se sigue ejecutando cuando se cierra
la session

Ejemplo: Para conectarun servidor se utiliza el comando ssh
-------

$> ssh 200.53.97.85

$> nohup wget -c http://ubuntu.com/hardy.iso &

$> exit
aunque salga de la sesion el proceso se sigue ejecutando

$> umask
muestra la mascara de permisos con que se crean archivos o directorios

$> umask -S
muestra los permisos con que se crea los directorios

$> umask 0077
el umask con 0077 establece una nueva mascara

$> umask -s
u=rwx, g=rx, 0=rx


Empaquetado y comprension:
--------------------------

$> mkdir /backups

$> tar -cvf home.tar /home
empaqueta el directorio en un solo archivo home.tar

$> gzip home.tar
comprime en formato gzip un archivo y le añade extension .gz

$> tar -cvf home.tar /home

$> bzip2 home.tar
comprime en formato bzip2 un archivo y le añade extension .bz2

$> ls -l

$> tar -zcpvf home.tgz /home
empaqueta y comprime en formato gzip

$> tar -jcpvf home.tbz /home
empaqueta y comprime en formato bzip2

$> gunzip home.tar.gz
descomprime un archivo de formato bzip

$> ls -l

$> tar -xvf home.tar
desempaqueta un archivo de formato tar

$> bunzip2 home.tar.bz2
descomprime un archivo de formato bzip2

$> ls -l

$> tar -xvf home.tar

$> tar -zxpvf home.tgz
descomprime y desempaqueta un archivo de formato gzip

$> tar -jxpvf home.tbz
desempaqueta y descomprime un archivo de formao bzip2

$> unzip archivo.zip
descomprime un archivo .zip

$> unrar -x archivo.rar
descomprime un archivo .rar

$> tar -zxpvf home.tar.gz -c /
descomprime y desempaqueta el archivo tomando como directorio base el /