Está en la página 1de 61

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

LINUX
Modulo I
Linux Administracin

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

INTRODUCCION
SISTEMA OPERATIVO
(Operating System).
Sistema tipo software que controla la computadora administra los servicio y recursos de hardware recursos
funciones como as tambin la ejecucin de otros programas compatibles con ste.
Ejemplos de sistemas operativos: Windows, Unix, Linux, DOS, Mac OS, etc.
Un sistema operativo permite interactuar con el hardware de computadoras, telfonos celulares, PDAs,
autoradios, reproductores de DVD, etc. y ejecutar programas compatibles en stos.
Permite controlar las asignaciones de memoria, ordenar las solicitudes al sistema, controlar los dispositivos
de entrada y salida, facilitar la conexin a redes y el manejo de archivos.

Sistema de computo

GNU/Linux
GNU/Linux es un poderoso sistema operativo cuyo nucleo Linux fue lanzado bajo la licencia publica
general (GPL) y desarrollado por las contribuciones provenientes de todo el mundo.

Linux fue creado por Linus Torvalds en 1991 siendo entonces un estudiante de la Universidad de Helsinski,
Finlandia. Muy pronto, la comunidad de Minix contribuy en el cdigo y en ideas para el ncleo Linux. Por
aquel entonces, el Proyecto GNU ya haba creado muchos de los componentes necesarios para obtener
un sistema operativo libre, pero su propio ncleo (GNU Hurd) era incompleto y por lo tanto no podan
conseguir un sistema libre totalmente funcional. Es por esto que a pesar de las funcionalidades limitadas
de la primera versin, rpidamente Linux fue acumulando desarrolladores y usuarios que adoptaron el
cdigo de estos proyectos para usar con el nuevo sistema operativo. Hoy en da el ncleo Linux ha
recibido contribuciones de miles de programadores.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

El usuario es libre de redistribuir y modificar de acuerdo a necesidades especficas, siempre que


se incluya el cdigo fuente, como lo indica la Licencia Pblica General GNU (acrnimo de GNU is
Not Unix), que es el modo que ha dispuesto la Free Software Foundation (Fundacin de Software
Libre).
Esto tambin incluye el derecho a poder instalar el ncleo de
nmero de ordenadores o equipos de cmputo que el usuario desee.

GNU/Linux

en

cualquier

La GPL (acrnimo de General Public Licence, que se traduce como Licencia Pblica General), a
la cual Linus Torvalds incorpor a Linux, est diseada para asegurar que el usuario tenga
siempre la libertad de distribuir copias del software (y cobrar por el servicio si as lo desea). La GPL
tiene como objetivo garantizar al usuario la libertad de compartir y cambiar programas libres; es decir,
asegurarse de que el sustento lgico siempre permanezca siendo libre para todos los usuarios.
GNU/Linux es tambin la mejor alternativa de siglo XXI para los usuarios que no solo desean
libertad, sino que tambin requieren un sistema operativo estable, robusto y confiable. Es un
sistema operativo idneo para utilizar en Redes, como es el caso de servidores, estaciones de
trabajo y tambin para computadoras personales.
Las caractersticas de GNU/Linux le permiten desempear mltiples tareas en forma simultnea
de forma segura y confiable. Los distintos servicios se pueden detener, iniciar o reiniciar
independientemente sin afectar al resto del sistema, permitiendo operar las 24 horas del da los 365 das
del ao.
Tal ha sido el impacto alcanzado por GNU/Linux en los ltimos aos, que muchas de las empresas de
Software ms importantes del mundo, entre las cuales estn IBM, Oracle y Sun Microsystems, han
encontrado en GNU/Linux una plataforma con un muy amplio mercado, y se han volcado al
desarrollo de versiones para Linux de sus ms importantes aplicaciones. Grandes corporaciones,
como Compaq, Dell, Hewlett Packard, IBM y muchos ms, llevan varios aos distribuyendo
equipos con GNU/Linux como sistema operativo.
Gracias a sus caractersticas, la constante evolucin de los ambientes grficos para X Window,
que cada vez son de ms fcil uso, como es el caso de GNOME y KDE, al trabajo de cientos
de programadores y usuarios fieles alrededor del mundo, Linux ha dejado de ser un sistema
operativo poco atractivo y complicado de utilizar, para convertirse en una alternativa real para
quienes buscan un sistema operativo confiable y poderoso; ya sea para una servidor, estacin de
trabajo o la computadora personal de un usuario intrpido.

CARACTERISTICAS DE LINUX

Multitarea: La palabra multitarea describe la habilidad de ejecutar varios programas al mismo tiempo.
Multiusuario: Muchos usuarios usando la misma maquina al mismo tiempo.

Multiplataforma: Las plataformas en las que en un principio se puede utilizar Linux son 386-, 486-.
Pentium, Pentium Pro, Pentium II, Amiga y Atari, tambien existen versiones para su utilizacion en
otras plataformas, como Alpha, ARM, MIPS, PowerPC y SPARC.

Multiprocesador: Soporte para sistemas con mas de un procesador esta disponible para Intel y
SPARC.
Proteccin de la memoria entre procesos, de manera que uno de ellos no pueda colgar el sistema.

Carga de ejecutables por demanda: Linux slo lee del disco aquellas partes de un programa que
estn siendo usadas actualmente.

Compatible con POSIX, System V y BSD a nivel fuente.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Consolas virtuales mltiples

Diversos protocolos de red incluidos en el kernel: TCP, IPv4, IPv6, AX.25, X.25, IPX.

Todo el cdigo fuente est disponible, incluyendo el ncleo completo y todos los drivers, las
herramientas de desarrollo y todos los programas de usuario

KERNEL GNU/LINUX
Linux es el ncleo o kernel del sistema operativo libre denominado GNU/Linux (tambin llamado Linux), que
brinda una alternativa frente a sistemas operativos no libres como Unix y Windows.
Linux es un ncleo monolitico hbrido. A diferencia de los ncleos monolticos tradicionales, los controladores
de dispositivos y las extensiones al sistema operativo se pueden cargar y descargar fcilmente como
mdulos, mientras el sistema contina funcionando sin interrupciones. Tambin, a diferencia de los ncleos
monolticos tradicionales, los controladores pueden ser pre-volcados (detenidos momentneamente por
actividades ms importantes) bajo ciertas condiciones. Esta habilidad fue agregada para manejar
correctamente interrupciones de hardware, y para mejorar el soporte de Multiprocesamiento Simtrico.
Este ncleo, escrito casi completamente en C con algunas extensiones GNU C, fue desarrollado por el
hacker finlands Linus Torvalds en un intento por obtener un sistema operativo libre similar a Unix que
funcionara con microprocesadores Intel 80386.
Dnde conseguir el ncleo de LINUX
Se puede bajar de un gran nmero de servidores en internet pero el sitio oficial es :
http://www.kernel.org/

El programa del kernel se encuentra en :

/usr/src/ kernel-linux (donde se realiza la compilacin)

En nuestro sistema GNU/Linux el kernel en ejecucion, est normalmente en /boot y se llama vmlinuz.

Requerimiento de hardware
Se debe contar con la suficiente cantidad de memoria y un microprocesador en buen estado. Con casi
cualquier distribucin comercial de Linux, el ambiente grfico necesitar al menos 512 MB de RAM y 2.0
GB de espacio en disco duro para la instalacin mnima.
Si bien los sistemas GNU/Linux pueden instalarse en equipo con capacidades muy reducidas (o limitadas),
para tener un entorno con un buen desempeo y que soporte las nuevas caractersticas de los sistemas
incluidos en esta distribucin, se recomienda un equipo con las siguientes caractersticas:

Memoria RAM: 512 MB (Mnimo).


Espacio en Disco Duro: 2 GB (Mnimo) - 10 GB (Recomendado).
Procesador: Intel Pentium I/II/III/IV/Celeron, AMD K6/II/III, AMD Duron, AMD Athlon/XP/MP.
Interfaz de red.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

DISTRIBUCIONES DE GNU/LINUX
Hay muchas variantes del sistema GNU/Linux. Segn las aplicaciones que se le quiera dar se
podr escoger la distribucin que ms se adapte a su necesidad.

Hay distribuciones orientados a usuarios finales, empresas, servidores e investigacin. Algunas


distribuciones son completamente libres y otras requieren licencia para soporte y actualizacin.

DISTRIBUCION DEBIAN
Distribucin con muy buena calidad. El proceso de instalacion
es quizas un poco mas complicado, pero sin mayores
problemas. Gran estabilidad antes que ltimos avances.

DISTRIBUCION UBUNTU
Distribucin basada en Debian, con lo que esto conlleva y
centrada en el usuario final y facilidad de uso. Muy popular y
con mucho soporte en la comunidad. El entorno de escritorio
por defecto es GNOME.

DISTRIBUCION REDHAT
Esta es una distribucin que tiene muy buena calidad,
contenidos y soporte a los usuarios por parte de la empresa
que la distribuye. Es necesario el pago de una licencia de
soporte. Enfocada a empresas.

DISTRIBUCION CENTOS
CentOS (Community ENTerprise Operating System) es un clon
a nivel binario de la distribucin Linux Red Hat Enterprise Linux
RHEL, compilado por voluntarios a partir del cdigo fuente
liberado por Red Hat.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

DISTRIBUCION FEDORA

Esta es una distribucin patrocinada por RedHat y soportada


por la comunidad. Facil de instalar y buena calidad.

DISTRIBUCION SUSE
Otra de las grandes. Muy buena calidad, contenidos y soporte
a los usuarios por parte de la empresa que la distribuye,
Novell. Es necesario el pago de una licencia de soporte.
Enfocada a empresas.

DISTRIBUCION SLACKWARE
Esta distribucin es de las primeras que existio. Tuvo un
periodo en el cual no se actualizo muy a menudo, pero eso
es historia. Es raro encontrar usuarios de los que
empezaron en el mundo linux hace tiempo, que no hayan
tenido esta distribucion instalada en su ordenador en algun
momento.

DISTRIBUCION GENTOO
Esta distribucin es una de las unicas que incorporaron un
concepto totalmente nuevo en Linux. Es una sistema inspirado
en BSD-ports. Podeis compilar/optimizar vuestro sistema
completamente desde cero. No es recomendable adentrarse
en esta distribucion sin una buena conexion a internet, un
ordenador medianamente potente (si quereis terminar de
compilar en un tiempo prudencial) y cierta experiencia en
sistemas Unix.

DISTRIBUCION MANDRIVA
Esta distribucin fue creada en 1998 con el objetivo de acercar
el uso de Linux a todos los usuarios, en un principio se llamo
Mandrake Linux. Facilidad de uso para todos los usuarios.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

DISTRIBUCION GNU/LINUX CENTOS


CentOS (Community ENTerprise Operating System) es un clon a nivel binario de la distribucin
Linux Red Hat Enterprise Linux RHEL, compilado por voluntarios a partir del cdigo fuente
liberado por Red Hat.

Actualmente, se tiene la versin CentOS 6

NOTA.Archivo install.log
El archivo install.log indica solo los paquete que se instalaron durante la instalacin de Linux.
Cuando se instalen paquete con yum el archivo install.log no indica los nuevos paquetes
instalados.

Estructura del sistema de archivos del sistema Linux


Todos los ficheros y directorios aparecen debajo del directorio raz /, an si estn almacenados en
dispositivos fsicamente diferentes.

/
(directorio raiz)
/bin (contiene los comandos de los usuarios)
/boot (archivo de kernel,archivos de carga del sistema)
/dev (archivos de dispositivos)
/etc (archivos de configuracin del sistema)
/home (donde se guardan todos los usuarios de sistema)
/lib
(librerias compartidas para el sistema, modulos del kernel)
/mnt (montaje temporal de sistema de archivos)
/opt (directorio de aplicaciones opcionales)
/proc (contiene archivos de comunicacin directa con el ncleo)
/root (directorio de root)
/sbin (comandos solo del root, procesos, demonios)
/tmp (directorio de archivos temporales utilizados por las aplicaciones)
/usr (aplicaciones para los usuarios)

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

/media (Puntos de montaje para dispositivos de medios como unidades


lectoras de discos compactos)
/var (archivo de tamao extensible para datos variables)

/etc/init.d/
/usr/src/
/usr/share/
/var/log/
/var/lib/
/var/www/html/

Particiones recomendadas para instalar GNU/Linux


Como mnimo se requieren tres particiones:
/boot

Por lo menos 75 MB. Asignar ms espacio puede


considerarse desperdicio.

350 a 512 MB.

Swap

Debe asignarse el doble del tamao del RAM fsico; esta ser
siempre la ltima particin del disco duro y no se le asigna punto de
montaje.

Entornos de trabajo
Tenemos 6 consolas de texto.
Ctrl + Alt + F1
+ F2
+ F3
........
+ F6
Interfaz Grafica
Alt + F7

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Inicio de Sesin en Centos:

host login :
password :

(cuenta de root /usuario)


(contrasea del root /usuario)

Prompt :
root@host: ruta # _

( ingresar comandos de root)

usuario@host : ruta $ _

(Ingresar comandos de usuario)

SHELL DE UNIX
El intrprete de comandos es la interfaz entre el usuario y el sistema operativo. Por esta razn, se le da el
nombre ingls "shell", que significa "caparazn".
Por lo tanto, la shell acta como un intermediario entre el sistema operativo y el usuario gracias a lneas de
comando que este ltimo introduce. Su funcin es la de leer la lnea de comandos, interpretar su significado,
llevar a cabo el comando y despus arrojar el resultado por medio de las salidas.
La shell es un archivo ejecutable que debe interpretar los comandos, transmitirlos al sistema y arrojar el
resultado. Existen varios shells. La ms comn es sh (llamada "Bourne shell"), bash ("Bourne again shell"),
csh ("C Shell"), Tcsh ("Tenex C shell"), ksh ("Korn shell") y zsh ("Zero shell")

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Comandos bsicos
# exit

El comando exit permite terminar el shell actual.

$ su
password :

ponerse como root

$ su luis

ponerse como usuario luis (para regresar a la session, poner $exit )

uname
Comando que me muestra la informacin del sistema Operativo. Se usa de la siguiente manera:
#uname -a
Linux lanux 2.6.8-2-386 #1 Thu May 19 17:40:50 JST 2005 i686 GNU/Linux
#uname -r

man
Comando man sirve para desplegar en pantalla las pginas de manual , que proporcionan ayuda en lnea
acerca de cualquier comando, funcin de programacin, archivo de configuracin, etc
# man comando (informacin de comando)
Un ejemplo seria
# man cp
# man nmap
hostname
Comando que me entrega el nombre de la maquina y su dominio. Se usa de la siguiente manera
# hostname
# hostname pcuninet Cambio el nombre del host por el de pcuninet

Apagar el Sistema
Para apagar el sistema se usan las siguientes instrucciones
# halt
# shutdown - h now
# shutdown - h - t time 3 ( Se apaga en 3 minutos)
# init 0
Reiniciar el Sistema
Para reiniciar el sistema usaremos los siguientes comandos:
# reboot
# shutdown - r now
# shutdown - r - t time 5 (Se reinicia en 5 minuto)
# init 6

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

10

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

date : Este comandos nos permite saber la hora y el dia, tomando como referencia el reloj del sistema.

# date
sb oct 21 05:53:19 PET 2006

Cambio de fecha y hora


#date s YYYY-MM-DD hh:mm:ss
# date s "2009-05-26

08:38:15"

CALENDARIO
cal : Comando que nos muest ra el calendario.

# cal
Octubre 2006
do lu ma mi ju vi s
1234567
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

Variantes
# cal 2006 (nos permitira ver el calendario de todos los meses del ao 2006)
# cal 10 1982 (nos permitira ver el calendario del mes de Octubre de 1982) October 1982

Calculadora en consola de Linux


#bc (apertura de la calculadora)
3+5
8-2
4*6
13/4
4 ^3
sqrt(81)
..
quit (salimos de bc)

who
El comando who muest ra los usuarios conectados al sistema ya sea local o remotamente.
# who
last
El comando last nos permite ver la informacion de los usuarios que han usado el

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

11

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

host. La informacion que proporciona este comando es, el nombre del usuario,
mediante que servicio ingreso, el ip del host desde donde ingreso (si lo hizo desde
otra PC), la fecha de ingreso y la hora de inicio y fin del acceso al host. La forma
de usarlo es de la siguiente manera:
# last usuario
# last root

clear : Borra todo el contenido de la pantalla.


# clear
tambien teclear : Ctrl + L

history : Historial. Comando que permite ver en lista todos los comandos que hemos utilizado hasta el
momento.
# history
Variante :
# history 5 (muest ra los 5 ultimos comandos)
# !n (recupera el comando #n del historial)

whatis
Comando que informa sobre la funcin o funciones que realiza el comando que se le pasa como parametro.
Funciona de la siguiente manera
# whatis comando
Ejemplo de uso:
# whatis mkdir
#whatis nmap

Creacin de archivos vacos: touch


Este comando nos permite crear archivos vacos para cualquier prueba que se necesite.

# touch new_file
Si el archivo new_file ya exista, la fecha de la ltima modificacin cambiar por la fecha actual. Si new_file
no exista anteriormente, ahora existir como un archivo nuevo.
Si se desea crear varios archivos nuevos o actualizar las fechas de modificacin de mltiples archivos, se
puede ejecutar el siguiente comando:

# touch newfile1 newfile2 newfile3

Midnight Commander
# mc

navegador de archivos modo consola

COLORES DE LOS FICHEROS Y SU SIGNIFICADO:

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

12

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Ejemplos: Azul : directorio


Blanco : archivo
Verde : ejecutable
Celeste : enlace
Rojo : archivos comprimidos
violeta : erchivo de audio o video
Amarillo : driver de dispositivos

MANEJO DE ARCHIVOS Y DIRECTORIOS


Vamos a ver los comandos que nos permitirn administrar directorios y archivos.
LISTAR ARCHIVOS Y DIRECTORIOS
ls : El comando que se utiliza en Unix, y por lo tanto en Linux para
mostrar los ficheros
#ls
Opciones
# ls -l
Permite ver los archivos y directorios en lista, informandonos sobre
sus permisos,dueos de los archivos, tamao, fecha y hora de creacion y su nombre
respectivo.

Atributos :
r : read
w : write
x : execute
-rwx rwx rwx usuario grupo tamao fecha hora archivo
|
|
|
|
|
Permisos para todos los demas
|
Permisos del Grupo
Permisos del Usuario

# ls - a
Permite ver los archivos y carpetas ocultas que contiene el directorio
actual.
# ls -lh

Igual que ls - l, solo que el tamao de los archivos estan en kb o mb.

# ls -la

Igual q ls - l, solo que ahora tambien lista los archivos ocultos.

#lspci --------------- Ver dispositivos conectados a la placa madre mediante un bus PCI.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

13

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#lsusb --------------- Ver los buses USB y los dispositivos conectados a los mismos.
#lsmod -------------- Ver los modulos del kernel

CAMBIO DE DIRECTORIO
cd : Comando que nos permite movernos a traves del arbol de
directorios.
# cd
Escribiendo solo cd y luego dandole enter, esto nos ubicara en el directorio del usuario con el cual estoy
logeado.
Opciones
# cd /
Esto nos movera al directorio raiz.
# cd ..
Subir un nivel en el arbol de directorios.
# cd ../directorio2
directorio Moverse en el mismo nivel de directorios.
# cd directorio
Bajar un nivel, a la carpeta directorio.
# cd Retornar al directorio que se ubicaba anteriormente.
pwd
El comando pwd indica el camino absoluto del directorio en el cual nos encontramos actualmente.
Este comando se usa de la siguiente manera:
# pwd
Un ejemplo seria:
# cd /usr/src/
movernos a la carpeta /usr/src/
# pwd
ejecutar pwd para ver la ruta actual
/usr/src
file
El comando file determina con cierto grado de precisin el tipo de un fichero que se le pasa como argumento.
Se usa de la siguiente manera
# file archivo

Un ejemplo de uso:
# file /vmlinuz
/vmlinuz: symbolic link to `boot/vmlinuz-2.6.8-2-386'
# file /etc /inittab
/etc/fstab: ASCII text
# file manual.doc
manual.doc: Microsoft Office Document
CREACION DE DIRECTORIOS
mkdir : Comando que nos permite crear directorios. Un directorio, es
un archivo el cual tiene la propiedad de poder almacenar,
ficheros y directorios.
En Linux existe una forma muy sencilla de crear directorios. Para ello,
simplemente has de escribir:
# mkdir directorio

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

14

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Observacion : Un punto importante es recordar te que Linux es sensible a las maysculas y no es lo mismo
escribir 'mkdir directorio' que 'mkdir DIRECTORIO'. Estos son directorios diferentes, y, por tanto, para
acceder a ellos habrs de escribirlo tal y como los llamaste.
Algunas veces nos vamos a encontrar con la tarea de crear un directorio y luego dentro de este otro y dentro
del siguiente talvez otro. Una posibilidad seria crear un directorio, luego acceder a este y luego estando
dentro de este crear el otro directorio y asi sucesivamente; pero esto no es necesario ya que tenemos la
posibilidad de crear toda una rama de directorios con el comando mkdir - p; esto
seria de la siguiente manera:
# mkdir - p /home/ciencias/practicas/laboratorio/2004/ programacion

BORRAR DIRECTORIO Y ARCHIVOS


rmdir
Comando que me permite borrar un directorio vacio. Para ellosolo tenemos que poner el comando, con el
respectivo nombre del directorio que queremos borrar. Si el directorio no estuviera vacio, nos saldra el
mensaje de error.
# rmdir directorio
rm
Borrar archivos y/o directorios.
Este es un comando que debemos utilizar con mucho cuidado, ya que si borramos algunos archivos por
equivocacion, sera imposible recuperarlos.
# rm archivo
Borra un archivo.
# rm archivo1 archivo2 archivon
Borrar varios archivos a la vez.
# rm *
Borrar todos los archivos que se encuent ran en la carpeta
desde donde es ejecutado el comandos. ( CUIDADO...! )
# rm carpeta/*
Borra todos los archivos que se encuent ran en carpeta, si encuentra directorios
dentro de esta, no los puede borrar.
Observacion: Tambien podemos borrar directorios que no se encuentren vacios utilizando el comando 'rm',
solo tenemos que agregarle dos paramet ros, uno seria '- r' para borrar en forma recursiva, y '- f' para que
borre los archivos o carpetas sin restriccion(force). Esto seria de la siguiente manera:
# rm -rf directorio

COPIAR ARCHIVO O DIRECTORIO


cp
Copiar archivos y/o directorios.
Con este comando puedo copiar un archivo en una ruta especifica.
# cp archivo /ruta/directorio
Copiar archivo en /ruta/directorio/.
# cp arch1 arch2 arch3 /ruta
Copiar arch1, arch2 y arch3 en /ruta
# cp archivo1 archivocopia
Hacer una copia de archivo1 con otro nombre

# cp * /ruta/directorio
Copiar todo el contenido de la carpeta donde nos encontramos al momento de
ejecutar el comando en /ruta/directorio
Observacion : Tambien podemos copiar todo un directorio, inclusive con
subdirectorios si los tuviera, esto se hace agregandole '- R' para que copie en
forma recursiva. Tambien podemos adicionarle '- v' si quisieramos que nos liste
lo que esta copiando Asi:

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

15

INSTITUTO DE INVESTIGACION UNI-FIEE

# cp - R directorio /ruta
/ruta
#cp -rf directorio /ruta

Linux Administracin

Copia la carpeta con todo su contenido en forma recursiva, hacia la carpeta

Copia carpeta y contenido a la ruta /ruta

MOVER , RENOMBRAR
mv Comando con el cual puedo borra archivos y/o directorios, tambien permite renombrarlos.
# mv archivo /ruta
mover archivo a la carpeta /ruta/
# mv * /ruta
mover todos los archivos y carpetas que se encuentran en la carpeta actual en el
directorio /ruta
# mv archivo arch _renombrado
# mv directorio nuevo _directorio

cambiar de nombre a archivo por rch_renombrado .


cambiar de nombre a directorio por nuevo_directorio

TAMAO DE ARCHIVO , DIRECTORIO


du :
Comando que permite conocer el tamao de un directorio y sus respectiva jerarquia de directorios
# du -h
Visualiza los tamaos de los directorios en forma representativa (M para Megabytes y K para
kilobytes)
# du -h directorio
# du -sh *
# du -sh directorio

Visualiza los tamaos de los directorios que contiene directorio .


Visualiza el tamao total de la carpeta actual
Visualiza el tamao total del directorio .

Ejemplos :
#du -h / *
#du -sh / *

ENLACE SIMBOLICO
ln : Este comando sirve para establecer enlaces entre archivos. Un enlace puede ser
rgido o simblico, el primer tipo es simplemente una forma de dar otro nombre a un archivo. El segundo tipo
es parecido al primero, pero se pueden enlazar directorios, y adems de diferentes sistemas de archivos.
# ln -s /ruta1 /archivo /ruta2/enlace

(crean enlace simblico)

EL EDITOR vi
Vi es un editor de texto que fue creado para sistemas UNIX y que posteriormente se implant en sistemas
GNU/Linux.
Vi fue escrito originalmente en la Universidad de California en Berkeley por William Joy en 1976.

El editor vi es el editor estndar de Unix y de Linux. Es orientado a comandos. Existe una versin conocida
como vim (Vi IMproved) muy poderosa que permite la edicin de mltiples ficheros, highlighting para varios
lenguajes de programacin, ayuda en lnea, seleccin visual, varios niveles de undo, etc.

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

16

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Para algunos usuarios, vi resulta incmodo pues para utilizar todas sus potencialidades es necesario conocer
muchas combinaciones de teclas, pero si se llega a dominar resulta muy
funcional.
vi puede encontrarse en dos estados o modos:
En el modo de edicin, vi est esperando que escribas el texto del fichero (por tanto, interpreta lo
que escribas como texto).
En el modo de comandos, vi est esperando que le des alguna orden (por tanto, interpreta lo que
escribas como rdenes).
Cuando entras en vi, est en modo de comandos. Para pasar al modo de edicin puedes pulsar i (insertar) .
Para pasar al modo de comandos, puedes pulsar [ esc ] o [esc ] + [:]
Comandos Bsicos
Comando descripcin :

i
insertar
u
deshacer la ltima edicin
dd
borra la lnea completa
:q
salir
:q!
forzar salir
:w
guardar
:w!
forzar guardar
:wq
guardar y salir
:x
guardar y salir
: %s/cadena/reemplazo
Reemplazar una cadena
/palabra
Busca palabra hacia abajo del texto ( tecla [n] continua la busqueda)

Tambin para visualizar documentos tenemos:


less

(muestra un archivo en la pantalla pagina por pagina)

#less archivo
Cat

(muestra un archivo en la pantalla)

#cat archivo
tail

(visualiza las ultimas lineas)

#tail -f archivo

grep
Permite la bsqueda de una cadena dentro de un archivo, mostrando la lnea donde se ubica la cadena.
#grep nameserver /etc/resolv.conf
Ejemplo :
Mostrar por pantalla las lneas que contienen comentario en el archivo /boot/grub/men.lst
#grep # /boot/grub/men.lst

Mostrar por pantalla las lneas que no tienen comentario

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

17

INSTITUTO DE INVESTIGACION UNI-FIEE

#grep -v

Linux Administracin

/boot/grub/men.lst

Alias
Editar el .basrch

INSTALACION DE PAQUTE RPM


Instalacion de paquete
#rpm Uvh paquete
Desintalar paquete rpm
#rpm e paquete

Verificar paquete rpm instalado en el sistema linux


#rpm q paquete

Uso de yum: instalar y desinstalar paquetera y actualizar sistema


Actualizar sistema
Actualizacin del sistema con todas las dependencias que sean necesarias:
yum update

Bsquedas
Realizar una bsqueda de algn paquete o trmino en la base de datos en alguno de los depsitos
yum configurados en el sistema:
yum search cualquier-paquete
Ejemplo:
yum search httpd

Consulta de informacin
Consultar la informacin contenida en un paquete en particular:
yum info cualquier-paquete
Ejemplo:
yum info httpd

Instalacin de paquetes
Instalacin de paquetera con resolucin automtica de dependencias:
yum install cualquier-paquete
Ejemplo:

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

18

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

yum install httpd

Desinstalacin de paquetes
Desinstalacin de paquetes junto con todo aquello que dependa de los mismos:
yum remove cualquier-paquete
Ejemplo:
yum remove httpd

Listado de paquetes
Lo siguiente listar todos los paquetes disponibles en la base de datos yum y que pueden
instalarse:
yum list available | less
Lo siguiente listar todos los paquetes instalados en el sistema:
yum list installed |less
Lo siguiente listar todos los paquetes instalados en el sistema y que pueden (y deben)
actualizarse:
yum list updates | less

Limpieza del sistema


Yum proporciona como resultado de su uso cabeceras y paquetes RPM almacenados en el interior
del directorio localizado en la ruta /var/cache/yum/. Particularmente los paquetes RPM que se han
instalado pueden ocupar mucho espacio y, es por tal motivo, que conviene eliminarlos una vez que ya
no tienen utilidad. Igualmente conviene hacer lo mismo con las cabeceras viejas de paquetes que
ya no se encuentran en la base de datos. A fin de realizar la limpieza correspondiente, puede
ejecutarse lo siguiente:
yum clean all

INSTALACION DE GRUPOS DE PAQUETES


Listar los grupos de paquetes
#yum grouplist
Instalar el grupo de paquete especifico.
#yum groupinstall Grupo de paquete

WGET
Wget es una herramienta infaltable, su objetivo es hacer downloads (descargas) de una manera confiable, sin
que nos tengamos que preocupar por si se trata de un archivo que esta en un web (HTTP) o en un site ftp, ni
si la conexin es lenta o si se corta.
#wget

http://ejemplo.com/programa.tar.gz

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

19

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Cuando se rompe la conexion usar la opcion c


#wget -c http://ejemplo.com/programa.tar.gz

INSTALAR DE CD/DVD
EDITAR
#vi /etc/yum.repos.d/CentOS-Media.repo
[c5-media]
name=CentOS-$releasever - Media
baseurl=file:///media/
#
file:///media/cdrom/
#
file:///media/cdrecorder/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

CREAR ALIAS
Como root y en la carpeta root :
# vi .bashrc
aadir la linea siguiente:
alias yumi='yum --disablerepo=\* --enablerepo=c5-media'
MONTAR CD/DVD
#mount /dev/cdrom /media/
INSTALAR PAQUETES
#yumi install paquete

COMANDOS PARA EMPAQUETAR Y COMPRIMIR FICHEROS


Comando tar
El comando tar es utilizado normalmente para empaquetar o desempaquetar ficheros, empaquetar significa
guardar en un nico fichero una lista de varios ficheros, o el contenido de todo un directorio (o varios
directorios).

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

20

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

El formato del comando tar es:


#tar [opciones] [fichero1] [fichero2] ... [ficheroN]
Donde es la lista de opciones y hasta es la lista de ficheros a aadir o extraer del archivo.
En las opciones de tar hay algunas que son importantes para su uso :
v : Modo verbose, quiere decir que mostrar por pantalla las operaciones que va realizando
f: referido a archivo
c: Crea un nuevo archivo tar.
x: Extrae los archivos tar
z: Compresin *.gz.
j: Compresion *.bz2.
t: Nos muestra el contenido del archivo tar.
p: Mantiene los permisos originales de los archivos.

EMPAQUETAR Y DESENPAQUETAR
# tar - cvf archivo.tar arch1 arch2 archn (empaqueta arch1 ,..,archn en archivo.tar )
#tar

- xvf archivo.tar ( desempaquetar archivo.tar )

#tar - tf archivo.tar ( lista el contenido de archivo.tar )

COMPRIMIR Y DESCOMPRIMIR (archivos tar)


#tar -zcvf archivo.tar.gz carpeta/*
#tar - jcvf archivo.tar.bz2 carpeta /*

(empaqueta y comprime )
(empaqueta y comprime en .bz2 )

#tar - zxvf archivo.tar.gz (descomprime y desempaqueta archivo.tar.gz )


#tar - jxvf archivo.tar.bz2 (descomprime y desempaqueta archivo.tar.bz2 )

Comprimir y descomprimir archivos gz


# gzip - 1 archivo (comprimir archivo rapido)
- 9 archivo (archivo mas comprimido pero no tan rapido)
# gunzip archivo.gz (descomprime un archivo .gz)
Comprimir y descomprimir archivos bz2
# bzip2

archivo

# bzip2 - d archivo.bz2
# bunzip2 archivo.bz2

( comprimir archivo con bzip2 )


( descomprimir archivo .bz2 )
( descomprimir archivo .bz2 )

Comprimir y Descomprimir archivos

*.zip

# zip -r documento carpeta-o-archivo_a_comprimir


(comprimir)
# unzip nomb_archivo.zip
( descomprimir archivo .zip )

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

21

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

COMPRIMIR Y DESCOMPRIMIR ARCHIVOS * rar


Intalar en Linux el paquete rarlinux-vx-tar.gz
#cd rar
#make install
#cd ..
#rm -R rar
Descomprimir
Ubicarse en una carpeta y descomprima
#rar e archive.rar
Ubicarse en una carpeta donde estn los archivos y comprima el contenido
#rar a nombre
Se creara el paquete nombre.rar

ADMINISTRACION DE DISPOSITIVOS DE ALMACENAMIENTO


Ver particion actual
df
Este se emplea para conocer informacin acerca de las particiones y dispositivos montados actualmente en
el sistema. Para cada dispositivo se muestra por defecto su tamao, el espacio empleado, que porciento
significa este, as como el directorio donde se ha montado.
# df - h Ver particiones montadas actualmente en Mb y Gb.
Filesystem Size Used Avail Use% Mounted on
/dev /h d a11 3.9G 2.0G 1.7G 53% /
/dev /h d a8 9.2G 7.5G 1.2G 86% /home
/dev /h d a7 17G 17G 410M 98% /win

Administracin de Dispositivos de Disco:


La administracin de las particiones del disco duro es de la siguiente manera:
IDENTIFICADOR DE DISCO
hda - > Disco Duro IDE I
hdb - > Disco Duro IDE II
sda - > Disco SCSI, SATA, Memoria USB

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

22

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

PARTICION PRIMARIA Y LOGICA (extendida)


hda1 - > Primera Particin Primaria
hda2 - > Segunda Particin Primaria
hda3 - > Tercera Particin Primaria
hda4 - > Cuarta Particin Primaria
Tambin
hda1 - > Primera Particin Primaria
hda2 - > Segunda Particin Primaria
hda3 - > Particin Extendida
hda5 - > Particin lgica 5
hda6 - > Particin lgica 6
hda7 - > Particin lgica 7
hda8 - > Particin lgica 8

fdisk
En Linux el particionador estndar es el fdisk. Este posee una interfaz texto que permite crear, modificar y
borrar particiones de diversos tipos (Linux, FAT12/16 / 3 2, NTFS, minix, Linux Swap, HPFS, Novell, etc).
Funciona en modo interactivo y para ejecutarlo se le pasa como argumento el disco duro a particionar a
travs del dispositivo correspondiente.

# fdisk

listar particiones

Disco /dev/hda: 80.0 GB, 80026361856 bytes


255 heads, 63 sectors/track, 9729 cylinders
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Disposit. Inicio
/dev/hda1
/dev/hda2
/dev/hda3
/dev/hda4 *
/dev/hda5
/dev/hda6
/dev/hda7

Comienzo
Fin
Bloques Id Sistema
1
729 5855661 b W95 FAT32
730
851
979965 82 Linux swap / Solaris
852
8875 64452780 5 Extendida
8876
9729 6859755 83 Linux
852
5714 39062016 83 Linux
5715
7902 17575078+ 83 Linux
7903
8875 7815591 83 Linux

#fdisk /dev/hda
( inicia el editor de particiones fdisk ) ( cuidado solo expertos!)
...........................
m : menu
p : imprime las particiones
q : salir
............................
df
Este se emplea para conocer informacin acerca de las particiones y dispositivos montados actualmente en
el sistema. Para cada dispositivo se muestra por defecto su tamao, el espacio empleado, que porciento
significa este, as como el directorio donde se ha montado.
# df - h

HENUX TECHNOLOGY

Ver particiones montadas actualmente en Mb y Gb.

Linux Training Mdulo I

Pag.

23

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Filesystem Size Used Avail Use% Mounted on


/dev /h d a11 3.9G 2.0G 1.7G 53% /
/dev /h d a8 9.2G 7.5G 1.2G 86% /home
/dev /h d a7 17G 17G 410M 98% /win

# df -Th

Ver particiones montadas con su respectivo formato de archivos

Filesystem Type Size Used Avail Use% Mounted on


/dev /h d a11 ext3 3.9G 2.0G 1.7G 53% /
/dev /h d a8 ext3 9.2G 7.5G 1.2G 86% /home
/dev /h d a7 vfat 17G 17G 410M 98% /win
#mkfs -t ext3 /dev/hda6

Formatear la particin hda6 con formato ext3

dmesg
Muestra los mensajes del kernel durante el inicio del sistema
#dmesg

free
Nos muestra la memoria libre
#free
MONTAJE Y DESMONTAJE DE DISPOSITIVOS
mount y umount
Para montar y desmontar los dispositivos se emplean los comandos mount y
umount respectivamente. Estos mantienen una lista de los dispositivos montados
en el fichero /etc/mtab .
Estos comandos se usan de la siguiente manera:
MONTAJE
# mount /dev/fd0 /mnt/floppy
# mount /dev/cdrom /mnt/cdrom
# mount /dev/cdrom
# mount /dev/cdrom

/mnt/dvd/
/media/

montar disquete
montar CD- Rom
montar DVD
montar DVD

Montar particion windows de disco duro


#mkdir /mnt/windows
# mount /dev/hda1 /mnt/window
# mount - t vfat /dev/hda1 /mnt/windows montar particin especificando tipo de formato

Montar un DISPOSITIVO USB


#mkdir /mnt/usb
#mount /dev/sda /mnt/usb

(si falla probar sda1 o sda2)

DESMONTAJE

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

24

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Obs: Antes de retirar un dispositivo montado hay que desmontarlo.


# umount /mnt/floppy desmontar disquete
# umount /mnt/cdrom
desmontar CD- Rom
# umount /mnt /windows desmontar particion hda1 de disco duro
#umount /mnt/usb
# umount - a desmontar todas las particiones

Montaje de particin Windows NTFS (para lectura y escritura)


Tener como repositorio : rpmforge
Verificar nucleo de linux
#uname -r
Instalar kernel-devel de la misma version
#yum install kernel-devel

#yum install ntfs-3g


#yum install kdms
#yum install kdms-fuse
#modprobe fuse
#lsmod
#mount /dev/hda1 /mnt/winc/

MODULOS
Mdulo se refiere a un controlador de un dispositivos o servicio que puede cargarse o descargarse cuando el
usuario o algn dispositivo lo solicita y estan preparados para cargarse o descargarse dinamicamente en el
kernel.
En linux se encuentran en /lib/modules/X.Y.Z/...../ *.o

Para trabajar con mdulos se dispone de las siguientes utilidades del sistema:
#lsmod:

Lista los modulos cargados.

#insmod:
#rmmod:
#modinfo:
#modprobe:
#depmod:

Instala en el ncleo un mdulo.


Extrae del ncleo un mdulo, que no esta siendo usado
Muestra informacin sobre el mdulo.
Automatiza/facilita la gestin de mdulos.
Determina las dependencias entre mdulos.

Los mdulos que el ncleo puede cargar suelen residir en el directorio


/lib/modules/[uname -r]/.
Ejemplo:

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

25

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#rmmod floppy
#lsmod
Ir a la ruta del modulo respectivo
#insmod floppy.ko

PROCESOS
Es un programa en ejecucion
Los procesos existen en una jerarqua de rbol (varios Hijos, un slo padre).
El sistema asigna un identificador de proceso (PID) nico al iniciar el proceso.
Ejecucin en 1er plano:
proceso iniciado por el usuario o interactivo.
Ejecucin en 2o plano:
proceso no interactivo que no necesita ser iniciado por el usuario.
Demonio:
proceso en 2o plano siempre disponible, que da servicio a varias tareas (debe ser propiedad del
usuario root).
Como vemos los procesos que estan corriendo?
#ps -A
PID: identificador de proceso
PROCESOS EN EL SISTEMA
Proceso es un programa en ejecucin.
Proceso padre ==> init PID=1
PID: Identificador de proceso
# ps - A (muestra todos los procesos que estn corriendo en el sistema)
PID TTY TIME CMD
1 ? 00:00:00 init
2 ? 00:00:00 ksoftirqd/0
3 ? 00:00:00 events/0
4 ? 00:00:00 khelper
5 ? 00:00:00 kacpid
37 ? 00:00:01 kblockd/0
#ps aux
#kill -9 PID
Ejemplo
#kill -9 200
#killall nombre_ proceso
#killall xmms
#pstree
#pstree -au (Muestra una jerarquizacion en forma de arbol de los procesos presentes en el sistema)

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

26

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Informacion del Sistema en tiempo real


#top

# Ctrl + c (termina el proceso por completo)


# Ctrl + z (pone en pausa un proceso que corre en primer plano)
#jobs
Muestra los procesos que estn en segundo plano
ENTRADA Y SALIDA STANDAR EN LINUX
entrada: teclado
salida : pantalla
REDIRECCION EN LINUX : ( > < )
#comando > archivo.txt
aadir
#echo hola >>archivo.text
Ejemplo
#echo > etc/resolv.conf
#echo nameserver ipDNS >> /etc/resolv.conf
El subdirectorio /dev/null es como un agujero negro. Esto es as, puesto que cualquier dato que se
almacena aqu, desaparece. Es muy til para redireccionar los errores

TUBERIAS
Una tubera hace que la salida de un programa sea la entrada de otro.
#dmesg | grep hd
#cat /etc/passwd | sort | more
(cat muestra el archivo, sort ordena alfabeticamente esta salida y more lo muestra pantalla por pantalla

COMANDOS DE ADMINISTRACION DE USUARIOS Y GRUPOS


CREAR USUARIOS
useradd
Con este comando podremos agregar usuarios al sistema (Tendremos que ser root). Este comando se usa
de la siguiente manera:
Algunas opciones
-d : especifica el directorio home de trabajo
-s : permite establecer el shell

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

27

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

# useradd usuario
Ejemplo de aplicacin:
#useradd luis
# useradd juan
# useradd pedro
# useradd usuario
# useradd maria

Nota1 : Tambien se puede usar adduser

(En Debian es mas conveniente)

Nota2.- Luego se creara una carpeta para cada usuario creado en /home
# ls /home
luis usuario

juan pedro

maria (usuarios del sistema Linux)

Nota3./etc/passwd : guarda informacin de los usuarios del sistema como nombre, directorio home y shell
# vi /etc/passwd

Nota4 ./etc/shadow : Contiene las contraseas cifradas de los usuarios


#vi /etc/shadow

Nota 5.# useradd -s /sbin/nologin/ lalo


Nota6.# useradd -d /opt/carlos carlos

Nota7.#whoami

(lalo no tiene shell)


( crea el usuario marin con con directorio home en /opt/carlos)

(me indica quien es el usuario actual)

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

28

INSTITUTO DE INVESTIGACION UNI-FIEE

# passwd

(cambiar password de root)

# passwd usuario

(cambiar password de usuario ) estar como root

# su

(logearse como super - usuario, root)

# login usuario
# id usuario

Linux Administracin

(permite entrar a trabajar con otro usuario )


(ver propiedades de usuario, uid, gid, otros grupos a los que
pertenece)

BORRAR USUARIO
# userdel usuario (eliminar un usuario pero carpeta de usuario queda en /home)
# userdel -rf usuario (eliminar un usuario y borra carpeta de usuario de /home)

CREAR GRUPOS
Groupadd
(En centos )
De manera anloga a los usuarios operariamos con los grupos.

Nota .- El archivo de grupos /etc /group indica los grupos creados y sus respectivos usuario.
#vi /etc/group

# groupadd grupo
Crear los grupos: contabilidad, administracion, rrhh, ventas, marketing
# groupadd contabilidad
# groupadd administracion
#groupadd rrhh
#groupadd sistemas
#groupadd ventas

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

29

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#groupadd marketing

BORRAR GRUPO
#groupdel

finanzas ( elimina el grupo finanzas )

ADICIONAR USUARIO A GRUPO


# gpasswd -a

usuario

grupo

(incluir a usuario en grupo)

TAMBIEN
CREAR USUARIO
#useradd juan
CREAR GRUPO
#groupadd mecanica

PERTENENCIA Y ATRIBUTOS DE UNA FICHERO O DIRECTORIO

CAMBIO DE ATRIBUTOS DE UN FICHERO:

Nota ::

1.- En general un archivo le pertenece a:


un :

usuario ( u) , a un grupo ( g ) o a los otros ( o ).

2.- Para cada uno de ellos el archivo tendra permisos o atributos ya sea de :
lectura ( r ) , escritura ( w ) de ejecuble ( x )

Permiso

Archivo

Lectura

Ver el contenido del


archivo.

Escritura

Modificar o eliminar el
archivo.

Ejecucin

Ejecutar el archivo.

# ls -l

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

30

INSTITUTO DE INVESTIGACION UNI-FIEE

- rw- r- x r w 1
permisos

root root
|
|
|

27132

Linux Administracin

2006-08-02 13:10

datos.txt

grupo al que pertenece el fichero

| usuario al que pertenece el fichero

Tipo de archivo :
d : directorio
- : fichero normal
l : enlace simbolico
s : socket

Nota.u : usuario

g : grupo

o : otros

Atributos :
r : read
w : write
x : execute

- rwx

rwx

rwx

usuario grupo tamao fecha hora archivo

|
|
|
|
|
Permisos para todos los demas
|
Permisos del Grupo
Permisos del Usuario

chmod :
El comando chmod permite cambiar los permisos de tus carpetas y ficheros en el servidor.
#chmod +x archivo

(damos atributo de ejecutable)

#chmod +wr

(damos atributo de lectura y escritura para usuario root)

archivo

#chmod u+rwx

#chmod g+rx-w

#chmod o+r-wr

archivo

archivo

archivo

# chmod a+r archivo

HENUX TECHNOLOGY

da permiso de lectura a todos los usuarios

Linux Training Mdulo I

Pag.

31

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

# chmod - R a+x / home

Este comando le da los permisos de ejecutable a todos los usuarios sobre el


contenido de home; si tuviera carpetas y subcarpetas, tambin le dara a todos los
ficheros los mismos permisos.

Nomenclatura equivalente
OBS: Notacion equivalente de los permisos
Vemos a continuacin su equivalente en letras:
0
1
2
3
4
5
6
7

=
=
=
=
=
=
=
=

--- = sin acceso


--x = ejecucin
-w- = escritura
-wx = escritura y ejecucin
r-- = lectura
r-x = lectura y ejecucin
rw- = lectura y escritura
rwx = lectura, escritura y ejecucin

rw110
6
# chmod

r- x
101
5

--x
0 01
1

777 archivo

# chmod 600 archivo

# chmod 666

archivo

# chmod

-R

777

/carpeta

chown
Gracias a esta orden nos es permisible cambiar la propiedad del archivo, es decir 'entregar' un archivo de
nuestra propiedad a otra persona, con lo cual esta ultima persona ser el nuevo propietario de dicho fichero.
Es importante saber que la propiedad de cualquier fichero solo puede cambiarla el root o superusuario del
sistema.

Podemos utilizar esta orden de la siguiente forma:


# chown

new_usuario : new_grupo archivo

(cambiar archivo de dueo)

Un ejemplo seria:
# chown invitado :invitado /root /datos/foro.jpg

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

32

INSTITUTO DE INVESTIGACION UNI-FIEE

#chown - R

root:root

/home

#chown -R

usuario:usuario

Linux Administracin

cambiar a usuario root todo el contenido de /home


/var/www/web

PROGRAMANDO TAREAS
CRON

Cron es un servicio de Linux que permite planificar tareas o procesos para una ejecucin peridica.
Con cron podremos planificar tareas como por ejemplo, borrar ficheros temporales todas las noches, apagar
la mquina a una hora determinada, realizar copias de seguridad cada semana automticamente, etc.
La forma normal de programar una tarea es con el comando crontab. La sintaxis de este comando es la
siguiente:

crontab -l: muestra las entradas programadas por el usuario.

crontab -e: edita el fichero de configuracin del usuario.

crontab -r: elimina el fichero crontab del usuario.

crontab -u usuario: aplica una de las opciones anteriores para un usuario determinado.

crontab fich: instala el fichero fich como crontab del usuario.

Cada usuario tiene un fichero de configuracin crontab que se encuentra en el directorio


/var/spool/cron/crontabs

Cada lnea tiene un formato con los siguientes campos:


minutos

horas

da-mes

mes

da-semana

comando

* El primer campo, los minutos.


* El segundo campo, las horas.
* El tercer campo, da-mes
* El cuarto campo, mes
* El quinto campo, da de la semana.
* El sexto campo, es el comando a ejecutar.
El valor que puede tomar cada uno de los campos es el siguiente:

minutos: 0-59

horas: 0-23

da-mes: 1-31

mes: 1-12

da-semana: 0-7 (el domingo se puede indicar con 0 o con 7)

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

33

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

En el fichero de configuracin crontab se puede hacer uso de ciertos caracteres especiales como: el
asterisco (*), la coma, el guin, o la barra (/).
La coma sirve para especificar una lista.
El guin permite especificar un rango.
El carcter barra (/) permite especificar intervalos en los rangos.
Ejemplo:
Ejemplo

Descripcin

01 * * * *

Se ejecuta al minuto 1 de cada hora de todos los das

15 8 * * *

A las 8:15 a.m. de cada da

15 20 * * *

A las 8:15 p.m. de cada da

00 5 * * 0

A las 5 a.m. todos los domingos

* 5 * * Sun

Cada minuto de 5:00a.m. a 5:59a.m. todos los domingos

45 19 1 * *

A las 7:45 p.m. del primero de cada mes

01 * 20 7 *

Al minuto 1 de cada hora del 20 de julio

10 1 * 12 1

A la 1:10 a.m. todos los lunes de diciembre

00 12 16 * Wen

Al medioda de los das 16 de cada mes y que sea Mircoles

30 9 20 7 4

A las 9:30 a.m. del dia 20 de julio y que sea jueves

30 9 20 7 *

A las 9:30 a.m. del dia 20 de julio sin importar el da de la semana

20 * * * 6

Al minuto 20 de cada hora de los sbados

20 * * 1 6

Al minuto 20 de cada hora de los sbados de enero

Tambin es posible especificar listas en los campos. Las listas pueden estar en la fo

Ejemplos
Los viernes de cada semana a las 6:30pm hacer backup de datos
Todos los 30 de cada mes reiniciar el sistema linux
A la 1:10 a.m. todos los lunes de diciembre
A las 7:15 p.m. del cinco de cada mes
A las 8:15 a.m. de cada da
A las 8:15 p.m. de cada da

AT

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

34

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

El comando at permite ejecutar tareas a una determinada hora.


El formato bsico de este comando es:
at hora
Si queremos, por ejemplo, apagar la mquina a las 22:30, tendramos que abrir el terminal y escribir en la
lnea de comandos: at 22:30. A continuacin aparecer el prompt de at en el que escribiremos el comando a
ejecutar, en nuestro caso el comando halt. Cuando lo hayamos hecho pulsaremos la combinacin de teclas
Control+D para salir de at.

#at 16:40
> comando

#at 3:30am Apr 10

PROGRAMACION EN C sobre GNU / LINUX


El lenguaje C se emplea para escribir Sistemas Operativos, compiladores, drivers, modulos, (otros..).
CARACTERISTICAS
a. Es de propsito general
b. Se le considera lenguaje de nivel medio, esto entre lenguaje ensamblador y de alto nivel. Pues
permite el manejo de datos a nivel de bits, bytes y direcciones...
c. Es modular, transportable.
d. El procesamiento o ejecucin de un programa es secuencial (esto es, las instrucciones se ejecutan
segn el orden en que aparecen) salvo que alguna instruccin de transferencia cambie este curso.
Identificadores.- Se utilizan para nombrar variables, constantes, funciones, tipos de datos . Deben ser
distintos de las palabras reservadas (int, float, else,etc).
Nota :

#define pi 3.1416

Funcion Principal
Un programa se compone de funciones una de las cuales necesariamente debe ser la funcin principal :
main()
Ejemplos :
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/*programa ejemplo*/
main()
{
printf(Hola mundo \n);

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

35

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

printf(Como estas?\n);
return 0;
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
main()
{
printf(Sumar 12 +13 \n);
printf(%d\n,12+13);
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/*......*/
;
{..}
printf (...)
\n
%d

sirve para encerrar los comentarios


se usa para finalizar una proposicin.
para encerrar un grupo de instrucciones.
para imprimir datos en el dispositivo de salida (por defecto la pantalla)
se interpreta como un solo carcter en C y representa un cambio de linea o linea nueva.
significa que el dato siguiente, se ha de imprimir como entero.

Instalacion de compilador GCC en Linux Centos


#yum install gcc

PASOS
Crear o Editar el programa:
#vi prog1.c
Compilar el programa:
#gcc prog1.c

-o

prog1

Ejecutar el programa
# ./prog1
se muestra el resultado.
Nota :
#gcc prog1.c -o prog1 -lm
( -lm se usa cuando la directivas de inclusion #include <math.h>)
Tipo de dato :
char , int , float , long y double.
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
main()
{
int x;

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

36

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

printf("Ingrese valor de x=");


scanf("%d",&x);
printf("Usted ha ingresado:%d\n",x);
}
Funcion entrada de datos
scanf( ... , ... );
scanf (especificacion de tipo , direccion de variable)
Especificacin de tipo
%c : dato de tipo char
%d : int
%f : float
%s : cadena de caracteres
direccion de variable
se obtiene anteponiendo el operador de direccin & al nombre de la variable.
Ejemplo
scanf(%d,&x) : lee entero desde el dispositivo de entrada y asigna a la variable n.
scanf(%f,&y) : lee un tipo float , y le asigna a la variable y.
scanf(%c,&letra) : lee un carcter desde el dispositivo de entrada y asigna a la variable letra.
EJEMPLOS :

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
/* Suma de dos nmeros */
main()
{
int x;
int y;
int s;
printf("Ingrese valor de x=");
scanf("%d",&x);
printf("Ingrese valor de y=");
scanf("%d",&y);
s=x+y;
printf("La suma es =%d\n",s);
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

/*factorial de un numero*/

#include<stdio.h>
void main()
{

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

37

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

int n,cont;
unsigned int fact;
printf("\nDame el valor de n=");
scanf("%d",&n);
cont=n;
if (cont<0)
printf("El factorial no existe");
else if (cont==0)
printf("EL factorial es 1");
else
{ fact=1;
while(cont>0)
{
fact=fact*cont;
cont=cont-1;
}
printf("El factorial de %d es = %d \n",n,fact);
}
}

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

NETWORKING EN LINUX
Configurar parmetros de red en Linux
Configurar los parmetros de red en una estacin de trabajo GNU/Linux o un servidor no
es realmente complicado. Solamente requerir de algunos conocimientos bsicos sobre redes y
cualquier editor de texto simple.
Esto puede determinarse examinando fsicamente la tarjeta de red o bien examinando a detalle
la salida en pantalla que se obtiene al ejecutar el siguiente mandato:
#lspci | grep Ethernet

Asignacin de parmetros de red


Nombre del anfitrin (HOSTNAME)
Debe modificarse con un editor de textos el fichero /etc/hosts, y debe verificarse que est
diferenciado el eco o retorno del sistema del nombre del sistema, el cual deber estar asociado a
una de las direcciones IP, especficamente la que est asociada a dicho nombre en el servidor de
nombres de dominio o DNS si se cuenta con uno en la red local. Ejemplo:
127.0.0.1 localhost.localdomain localhost
192.168.1.50 nombre.dominio nombre

Se debe establecer un nombre para el sistema. ste deber ser un nombre de dominio
completamente resuelto por un servidor de nombre de dominio (DNS) o bien, en el caso de sistemas sin

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

38

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

conexin a red o sistemas caseros, sea resuelto localmente en /etc/hosts. De tal modo, el nombre
del
anfitrin (hostname) del sistema se definir dentro del fichero /etc/sysconfig/network del
siguiente modo:
NETWORKING=yes
HOSTNAME=nombre.dominio

Direccin IP, mscara de subred y puerta de enlace


Debe modificarse con cualquier editor de textos y verificar que sus parmetros de red sean los
correctos, el fichero localizado en la ruta /etc/sysconfig/network-scripts/ifcfg-eth0. Ejemplo:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
Los parmetros anteriores son proporcionados por el administrador de la red local en donde se
localice la mquina que est siendo configurada, o bien definidos de acuerdo a una planificacin
predefinida. El administrador de la red deber proporcionar una direccin IP disponible (IPADDR) y
una mscara de la sub-red (NETMASK).

Servidores de nombres
Debe modificarse con un editor de textos /etc/resolv.conf y deben establecerse en ste los
servidores de resolucin de nombres de dominio (DNS). Ejemplo:
nameserver 192.168.1.254
nameserver 192.168.1.1

Si se tiene planeado implementar un NAT o DNAT, se debe habilitar el reenvo de paquetes para
IP versin 4. Esto se realiza en el fichero /etc/sysctl.conf cambiando net.ipv4.ip_forward = 0 por
net.ipv4.ip_forward = 1:
net.ipv4.ip_forward = 1

Comprobaciones
Despus de haber configurado todos los parmetros de red deseados, slo deber ser reiniciado el
servicio de red, ejecutando lo siguiente:
#service network restart
Basta solamente comprobar si hay realmente conectividad. Puede ejecutarse el mandato ping hacia
cualquier direccin de la red local para tal fin.
#ping 192.168.1.254
Las interfaces y la informacin de las mismas se puede examinar utilizando:
# ifconfig
Las encaminamientos se pueden comprobar ejecutado:
#route -n
Para comprobar si hay resolucin de nombres,
DNS definidos para el sistema utilizando:

HENUX TECHNOLOGY

se puede realizar una consulta hacia los

Linux Training Mdulo I

Pag.

39

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

host algn.dominio

CONFIGURACION DE RED

#vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=centux
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
Tambien
#vi /etc/sysconfig/networking/devices/ifcfg-eth0
DEVICE=eth0
BROADCAST=10.255.255.255
HWADDR=00:0c:6e:1d:8b:a8
IPADDR=10.0.1.16
NETMASK=255.0.0.0
NETWORK=10.0.0.0
ONBOOT=yes
GATEWAY=10.0.1.1
TYPE=Ethernet
BROADCAST=10.255.255.255
NETWORK=10.0.0.0
CAMBIAR IP
MODO1
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
#vi /etc/sysconfig/networking/devices/ifcfg-eth0
cabiar IP
#/etc/init.d/network restart
#ifconfig
MODO2
Usando una interfaz grafica en modo texto
#setup

Authentication configuration
Firewall configuration
Keyboard configuration
Network configuration

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

40

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

System services
Timezone configuration
X configuration
Alta de direcciones IP virtuales
El alta de direcciones IP es verdaderamente simple. Basta definir solamente la direccin IP, la
mscara de subred y el nombre del dispositivo. El fichero se genera igualmente con el nombre del
dispositivo con el prefijo ifcfg-. Ejemplo del contenido del fichero /etc/sysconfig/networkscripts/ifcfg-eth0:0 que corresponde al primer dispositivo virtual del primer dispositivo ethernet:
DEVICE=eth0:0
IPADDR=192.168.2.254
NETMASK=255.255.255.0

#cd /etc/sysconfig/network-scripts/
#cp ifcfg-eth0 ifcfg-eth0:1
luego configurar
#vi /etc/sysconfig/network-scripts/ifcfg-eth0:1
o configurar con:
#setup

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

41

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

PROTOCOLOS TCP / IP
Familia de Protocolos TCP/IP

La familia de protocolos de Internet es un conjunto de protocolos de red en la que se basa


Internet y que permiten la transmisin de datos entre redes de computadoras. En
ocasiones se le denomina conjunto de protocolos TCP/IP, en referencia a los dos
protocolos ms importantes que la componen: Protocolo de Control de Transmisin (TCP)
y Protocolo de Internet (IP), que fueron los dos primeros en definirse, y que son los ms
utilizados de la familia. Existen tantos protocolos en este conjunto que llegan a ser ms de
100 diferentes, entre ellos se encuentra el popular HTTP (HyperText Transfer Protocol),
que es el que se utiliza para acceder a las pginas web, adems de otros como el ARP
(Address Resolution Protocol) para la resolucin de direcciones, el FTP (File Transfer
Protocol) para transferencia de archivos, y el SMTP (Simple Mail Transfer Protocol) y el
POP (Post Office Protocol) para correo electrnico, TELNET para acceder a equipos
remotos, entre otros.

SERVICIOS EN LINUX :

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

42

INSTITUTO DE INVESTIGACION UNI-FIEE

#ls

Linux Administracin

/etc/init.d/

acpid
halt
anacron
hidd
apmd
httpd
atd
ibmasm
auditd
ip6tables
autofs
ipmi
avahi-daemon
iptables
avahi-dnsconfd
irda
bluetooth
irqbalance
conman
kdump
cpuspeed
killall
crond
krb524
cups
kudzu
cups-config-daemon lvm2-monitor
dhcdbd
mcstrans
dund
messagebus
firstboot
microcode_ctl
functions
multipathd
gpm
named
haldaemon
netconsole

netfs
netplugd
network
NetworkManager
NetworkManager
nfs
nfslock
nscd
ntpd
oddjobd
pand
pcscd
portmap
postfix
psacct
rdisc
readahead_early
readahead_later
restorecond
rpcgssd

rpcidmapd
rpcsvcgssd
saslauthd
setroubleshoot
Dispatcher single
smartd
smb
sshd
syslog
vncserver
vsftpd
wdaemon
winbind
wpa_supplicant
xfs
xinetd
ypbind
yum-updatesd

Comando de gestin de servicios


#ntsysv

El comando chkconfig
Tambin puede usarse para activar o desactivar servicios
#chkconfig <servicio> on
#chkconfig <servicio> off

El comando service
#service <servicio> start
#service <servicio> restart
#service <servicio> stop
#service <servicio> reload
#service <servicio> status

Escaneardor de puertos
NMAP
Nmap es un programa de cdigo abierto que sirve para efectuar rastreo de puertos TCP y UDP. Se usa para
evaluar la seguridad de sistemas informticos, as como para descubrir servicios o servidores en una red
informtica.

#nmap <IP-destino>
# nmap localhost

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

43

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#nmap 192.168.2.45
NETSTAT
Netstat (network statistics) es una herramienta de lnea de comandos que muestra un listado de las
conexiones activas de un ordenador, tanto entrantes como salientes. Existen versiones de este comando en
varios sistemas, como Unix/Linux, Mac OS X, y Windows.
La informacin que resulta del uso del comando incluye el protocolo en uso, las direcciones IP tanto locales
como remotas, los puertos locales y remotos utilizados y el estado de la conexin.
Opciones
-r, --route Muestra la tabla de enrutamiento.
-s, --statistics Muestra estadsticas de red (como SNMP)
-i, --interfaces Muestra la tabla de interfaces
-n, --numeric No resuelve nombres en general
-a, --all, --listening Muestra todos los sockets (por defecto nicamente los que estn en modo conectado)
#netstat -r
#netstat -an
#netstat -tapu (t=TCP u=UDP)
#netstat -tapun (t=TCP u=UDP n=numero de puerto)

JAVA (JRE) SOBRE LINUX


El JRE (Java Runtime Environment) es una mquina virtual de Java y su funcin es hacer de
intermediario entre una aplicacin programada en Java y el sistema operativo que se este usando.
De este modo, cualquier aplicacin puede funcionar en cualquier sistema operativo que disponga
del JRE.
Instalar de la ruta
http://java.com/es/download/manual.jsp
descargar :
jre-6u10-linux-i586.bin
#mkdir /usr/java/
#chmod a+x jre-6u10-linux-i586.bin
#ls l
#./ jre-6u10-linux-i586.bin

Vaya al subdirectorio de plug-ins, situado dentro del directorio de instalacin de Mozilla.


#cd /usr/lib/mozilla/plugins/
# ln -s /usr/java/jre1.6.0_10/plugin/i386/ns7/libjavaplugin_oji.so

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

44

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

SERVIDOR VNC

VNC son las siglas en ingls de Virtual Network Computing (Computacin en Red Virtual) y es un
protocolo de escritorio para controlar de forma remota otro ordenador.

Por defecto carga un entorno grafico de escritorio basico


#vncserver
#vncserver kill :1
Editar el archivo
#vi

.vnc/xstartup

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

CLIENTE VNC:

Hay varios:

Por ejemplo: tightVNC

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

45

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

ACCESO AL SERVIDOR VNC via Web


Sea el servidor 192.168.1.37
#vnserver
#nmap
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
5801/tcp open vnc-http-1
5901/tcp open vnc-1
6001/tcp open X11:1
Para lo cual el navegador web debe tener instalado el java JRE (Java Runtime Environment)
Esto funciona para Mozilla Firefox y tambin para Internet Explorer

FILE SERVER : SAMBA BASICO


Acceso a carpeta compartida

/opt/DATA

de usuarios que pertenecen al grupo TITULACION.

Crear usuarios:
#adduser luis
#passwd luis
Crear grupos
#groupadd TITULACION
Aadir usuario al grupo
#gpasswd -a luis TITULACION
Crear carpeta a compartir
#mkdir
/opt/DATA
#chmod 777 /opt/DATA
Sincronizar password del sistema con samba
#smbpasswd -a luis
Configurar samba
#vi /etc/samba/smb.conf
[global]
Workgroup = ALFA
[TITULACION]
path = /opt/DATA
valid user = @TITULACION
writeable = yes
create mode = 777
directory mode = 777

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

46

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

WEBMIN
Webmin es una herramienta de configuracin de sistemas accesible va web para OpenSolaris, GNU/Linux y
otros sistemas Unix. Con l se pueden configurar aspectos internos de muchos sistemas operativos, como
usuarios, cuotas de espacio, servicios, archivos de configuracin, apagado del equipo, etctera, as como
modificar y controlar muchas aplicaciones open source, como el servidor web Apache, PHP, MySQL, DNS,
Samba, DHCP, entre otros.
Webmin est escrito en Perl, versin 5, ejecutndose como su propio proceso y servidor web. Por defecto se
comunica a travs del puerto TCP 10000, y puede ser configurado para usar SSL si OpenSSL est instalado
con mdulos de Perl adicionales requeridos.
Est construido a partir de mdulos. Esto hace fcil la adicin de nuevas funcionalidades sin mucho esfuerzo.
Instalar webmin en Centos :

http://www.webmin.com/
Copiar la ruta de descarga y usar wget para descargar el paquete webmin
# wget http://prdownloads.sourceforge.net/webadmin/webmin-1.441.tar.gz
#cp webmin-1.441.tar.gz /opt/
#cd /opt/
#tar -zxvf webmin-1.441.tar.gz
#cd webmin-1.441
Ejecutar script
#./setup.sh
login: admin
password:123456
Abrir navegador
URL : http://localhost:10000
Usurio: admin
Password: 123456
Nota : webmin usa el puerto 10000
#nmap localhost
En la pagina de webmin,
En el men de webmin, cambiar idioma

SERVIDOR TELNET

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

47

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Telnet es un miembro de la familia de protocolos TCP/IP que permite a un usuario establecer una sesin
remota en un servidor. Este protocolo slo admite terminales alfanumricos; es decir, no admite el mouse
(ratn) u otros dispositivos sealadores, ni interfaces grficas de usuario. En su lugar, todos los comandos
deben introducirse en la lnea de comandos.
El protocolo Telnet ofrece muy poca seguridad. Todos los datos de una sesin de Telnet, incluidas las
contraseas, se transmiten entre el cliente y el servidor como texto simple.
El protocolo TELNET usa (TCP, puerto 23).
#yum install telnet-server

Es parte del superservidor xinet


#service xinetd start
Archivo de configuracin :
#cd /etc/xinetd.d/
#vi telnet

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
service telnet
{
flags
= REUSE
socket_type = stream
wait
= no
user
= root
server
= /usr/sbin/in.telnetd
log_on_failure += USERID
disable
= yes
}
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
#service xinetd restart

Acceso desde cliente telnet: Windows, Linux, otro.

SERVIDOR SSH

SSH (Secure SHell) -intrprete de comandos seguro- es el nombre de un protocolo y del programa que lo
implementa, y sirve para acceder a mquinas remotas a travs de una red. Permite manejar por completo la
computadora mediante un intrprete de comandos,

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

48

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

SSH trabaja de forma similar a como se hace con telnet La diferencia principal es que SSH usa tcnicas de
cifrado que hacen que la informacin que viaja por el medio de comunicacin vaya de manera no legible y
ninguna tercera persona pueda descubrir el usuario y contrasea de la conexin ni lo que se escribe durante
toda la sesin
SFTP (SSH File Transfer Protocol) es un protocolo que provee funcionalidad de transferencia y
manipulacin de ficheros a travs de un flujo confiable de datos. Comnmente se utiliza con SSH
para proveer a ste de transferencia segura de ficheros.
SCP (Secure Copy, o Copia Segura) es una protcolo seguro para transferir ficheros entre
un anfitrin local y otro remoto, a travs de SSH. Bsicamente, es idntico a RCP (Remote Copy, o
Copia Remota), con la diferencia de que los datos son cifrados durante la transferencia para evitar
la extraccin potencial de informacin a travs de programas de captura de las tramas de red
(packet sniffers). SCP solo implementa la transferencia de ficheros, pues la autenticacin
requerida es realizada a travs de SSH.

OpenSSH.
OpenSSH (Open Secure Shell) es una alternativa de cdigo abierto, con licencia BSD, hacia la
implementacin propietaria y de cdigo cerrado SSH creada por Tatu Ylnen. OpenSSH es un
proyecto creado por el equipo de desarrollo de OpenBSD y actualmente dirigido por Theo de Raadt. Se
considera es ms segura que su contraparte propietaria debido a la constante auditora que se
realiza sobre el cdigo fuente por parte de una gran comunidad de desarrolladores, una ventaja que brinda al
tratarse de un proyecto de fuente abierta.
OpenSSH incluye servicio y clientes para los protocolos SSH, SFTP y SCP.
URL: http://www.openssh.org/.
#yum install openssh
Se usa por defecto el puerto 22
Verificamos el puerto
#nmap localhost
# netstat -an
Ficheros de configuracin.
# vi /etc/ssh/sshd_config
#service sshd start
Acceso a travs de intrprete de mandatos.
Para acceder a travs de intrprete de mandatos hacia el servidor, basta con ejecutar desde el
sistema cliente el mandato ssh definiendo el usuario a utilizar y el servidor al cual conectar:

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

49

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#ssh usuario@servidor
#ssh juan@192.168.0.45
#ssh 192.168.0.46

acceso como usurio juan


acceso como usurio root

NOTA1
Para acceder a travs de SFTP hacia el servidor, basta con ejecutar desde el sistema cliente el
mandato sftp definiendo el usuario a utilizar y el servidor al cual conectar:
#sftp

usuario@servidor

NOTA2
Transferencia de ficheros a travs de SCP.
Para realizar transferencias de ficheros a travs de SCP, es necesario conocer las rutas de los
directorios objetivo del anfitrin remoto.
En el siguiente ejemplo, se transferir el fichero algo.txt, preservando tiempos y modos, hacia el
directorio de inicio del usuario fulano en el servidor 192.169.0.99.
#scp algo.txt usuario@192.168.0.99:/ruta/

SERVIDOR FTP

FTP (File Transfer Protocol) o Protocolo de Transferencia de Archivos (o ficheros informticos) es uno de los
protocolos estndar ms utilizados en Internet siendo el ms idneo para la transferencia de grandes bloques
de datos a travs de redes que soporten TCP/IP. El servicio utiliza los puertos 20 y 21, exclusivamente
sobre TCP. El puerto 20 es utilizado para el flujo de datos entre cliente y servidor. El puerto 21 es utilizando
para el envo de rdenes del cliente hacia el servidor. Prcticamente todos los sistemas operativos y
plataformas incluyen soporte para FTP, lo que permite que cualquier computadora conectada a una red
basada sobre TCP/IP pueda hacer uso de este servicio a travs de un cliente FTP.
Vsftpd (Very Secure FTP Daemon) es un equipamiento lgico utilizado para implementar servidores de
archivos a travs del protocolo FTP. Se distingue principalmente porque sus valores predeterminados son
muy seguros y por su sencillez en la configuracin, comparado con otras alternativas como ProFTPD y Wuftpd. Actualmente se presume que vsftpd es quiz el servidor FTP ms seguro del mundo.
#yum install vsftpd
#service vsftpd start

(iniciar el servicio)

#chkconfig vsftpd on

(activar cada vez que se reinicie el sistema linux)

Carpeta de configuracin
#cd /etc/vsftpd/
Archivo de Configuacion
# vi /etc/vsftpd/vsftpd.conf

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

50

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

CLIENTES FTP:
Acceso modo consola:
Windows : cmd
ftp 192.168.1.45
usuario:
contrasea:

Linux : Consola
ftp 192.168.1.45
name:
password:

Nota : Acceso en modo


/var/ftp/pub

ftp>> ?

anonymous, se accede sin restriccin y de manera publica

a la carpeta

( lista de comandos de ftp)

Commands may be abbreviated. Commands are:


!
$
account
append
ascii
bell
binary
bye
case
ccc
cd
cdup
chmod
clear
close
cprotect

cr
mdir
proxy
send
delete
mget
sendport
site
debug
mkdir
put
size
dir
mls
pwd
status
disconnect
mode
quit
struct
form
modtime
quote
system
get
mput
recv
sunique
glob
newer
reget
tenex
hash
nmap
rstatus
trace
help
nlist
rhelp
type
idle
ntrans
rename
user
image
open
reset
umask
lcd
passive
restart
verbose
ls
private
rmdir
?
macdef
prompt
runique
mdelete
protect
safe

>>mget archivo-bajar
>>mput archivo-subir
>> mkdir carpeta
>>quit

( salir de ftp)

Programas Graficos clientes ftp:

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

51

INSTITUTO DE INVESTIGACION UNI-FIEE

Indicar :
Servidor: ftp.dominio
Usuario : anonymous
Contrasea : *******
Puerto : 21

o
o

Linux Administracin

IP
usuario

- Gfpt ( cliente ftp en Linux )


#yum install gftp

- Filezilla (Cliente windows)

SERVIDOR WEB
PROTOCOLO HTTP
El Protocolo de Transferencia de HiperTexto (Hypertext Transfer Protocol) es un sencillo protocolo clienteservidor que articula los intercambios de informacin entre los clientes Web y los servidores HTTP.
Desde el punto de vista de las comunicaciones, est soportado sobre los servicios de conexin TCP/IP, y
funciona de la misma forma que el resto de los servicios comunes de los entornos UNIX: un proceso servidor
escucha en un puerto de comunicaciones TCP (por defecto, el 80), y espera las solicitudes de conexin de
los clientes Web. Una vez que se establece la conexin, el protocolo TCP se encarga de mantener la
comunicacin y garantizar un intercambio de datos libre de errores.
HTTP se basa en sencillas operaciones de solicitud/respuesta. Un cliente establece una conexin con un
servidor y enva un mensaje con los datos de la solicitud. El servidor responde con un mensaje similar, que
contiene el estado de la operacin y su posible resultado. Todas las operaciones pueden adjuntar un objeto o
recurso sobre el que actan; cada objeto Web (documento HTML, fichero multimedia o aplicacin CGI) es
conocido por su URL.
SERVIDOR APACHE
El servidor Apache es un software (libre) de cdigo abierto para plataformas Unix (BSD, GNU/Linux, etc.),
Windows, Macintosh y otras, que implementa el protocolo http. Comenz su desarrollo en 1995, por la
Apache Software Foundation.
Apache tiene amplia aceptacin en la red: desde 1996, Apache, es el servidor HTTP ms usado. Alcanz su
mxima cuota de mercado en 2005 siendo el servidor empleado en el 70% de los sitios web en el mundo.
Estadsticas histricas y de uso diario proporcionadas por Netcraft
Top Developers

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

52

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Developer October 2008 Percent November 2008 Percent Change


Apache

91,888,508 50.43%

93,207,591 50.34%

-0.09

Microsoft
Google
lighttpd

62,766,928 34.44%
10,487,607 5.76%
3,072,457 1.69%

63,871,279 34.49%
10,996,941 5.94%
3,030,958 1.64%

0.05
0.18
-0.05

Ventajas

Modular
Open source
Multi-plataforma
Extensible
Popular (fcil conseguir ayuda/soporte)

INSTALACION DE DEL SERVIDOR APACHE


#yum install httpd

INICIAR, REINICIAR, Y PARAR EL SERVICIO


#service httpd start
#service httpd restart
#service httpd stop
o tambien
#/etc/init.d/httpd start
#/etc/init.d/httpd restart
#/etc/init.d/httpd stop

CARPETA DE CONTENIDO DE DOCUMENTOS WEB


/var/www/html/

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

53

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

PROGRAMAS CLIENTES: (Navegadores)


Firefox, Mozilla, Explorer, Opera, Google Chrome etc.
ARCHIVOS DE CONFIGURACION
/etc/httpd/
/etc/httpd/conf/

==== > httpd.conf

/etc/httpd/conf/
php.conf , squid.conf, ssl.conf, perl.conf

EL FICHERO httpd.conf
Es el fichero principal de configuracin del Apache, se encuentra dentro del directorio Conf, en el directorio
de instalacin del Apache.
El fichero contiene un montn de comentarios para su correcta utilizacin, las lneas comentadas aparecen
con el smbolo #.
En primer lugar hay que destacar que el fichero est dividido en tres secciones, que son:
1 Parmetros globales
2 Directivas de Funcionamiento
3 Host Virtuales
En el fichero se encuentran todos los parmetros de funcionamiento del Apache. Algunos parmetros son
generales para la instalacin y funcionamiento del Apache. Muchos otros de los parmetros se pueden
configurar independientes para un conjunto de directorios y/o ficheros . En estos casos los parmetros se
encuentran ubicados dentro de secciones donde se indica el mbito de aplicacin del parmetro.
1 Parmetros globales
Todos los parmetros que se establecen dentro de esta seccin son globales para el funcionamiento del
servidor, por lo que no admiten estar dentro de ninguna directiva.
ServerRoot: especifica la ubicacin del directorio raz donde se encuentra instalado el Apache, a partir del
cual se crea el rbol de directorios comentado anteriormente. Esta directiva no debera cambiar a no ser que
se mueva la carpeta de instalacin de apache a otro directorio. Se encuentra disponible a travs del mdulo
Core.
TimeOut: el valor se utiliza para configurar medido en segundos, tres parmetros:
1. El tiempo tal que puede tardar una peticin en ser recibida entera
2. La cantidad de tiempo que espera entre recepcin de paquetes TCP
3. La cantidad de tiempo entre ACK's en transmisiones TCP
Pasado este tiempo se produce un mensaje de error en el que se indica que se ha consumido el tiempo
mximo de espera. Establecer un valor muy pequeo puede dar lugar a que los usuarios reciban este
mensaje de error, y establecer un valor muy pequeo dar lugar a una sobrecarga de la mquina. Se
encuentra disponible a travs del mdulo Core.
KeepAlive: especifica si se utilizarn conexiones persistentes, es decir, que todas las peticiones de un

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

54

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

usuario se atendern con la misma conexin. Se encuentra disponible a travs del mdulo Core.
MaxKeepAliveRequests: nmero mximo de conexiones persistentes. (nmero mximo de usuarios
concurrentes si KeepAlive esta en ON). Para establecer este parmetro, hay que tener en cuenta el ancho de
banda de salida de nuestro servidor, por el cual deber ser enviada toda la informacin, si se establece un
valor muy grande respecto al ancho de banda, el tiempo de respuesta se ver incrementado para cada
usuario. Se encuentra disponible a travs del mdulo Core.
KeepAliveTimeout: tiempo que espera en segundos entre peticiones de un usuario, antes de considerar que
este ha terminado, y cerrar su conexin.
Si el valor es muy pequeo provocar que algunos usuarios no puedan visualizar la pgina debido a que el
nmero mximo de conexiones persistentes se ha superado, mientras que si se establece un valor muy
grande se estarn utilizando muchos recursos de la mquina.
Listen: esta directiva permite especificar que puerto se utilizar para antender las peticiones. Por defecto se
utiliza el puerto 80 (www), tambin permite especificar que direcciones IP atender, por defecto todas. Para
atender dos direcciones IP distintas, con distintos puerto, se utilizara:
Listen 80
#Listen 8080
LoadModule: Directiva que sirve para cargar mdulos que incluyen distintas funcionalidades. La sintaxis es:
LoadModule nombreModulo ubicacionFichero
Se encuentra disponible a travs del mdulo mod_so.
ALGUNAS DIRECTIVAS DE FUNCIONAMIENTO
ServerAdmin: especifica la direccin de correo electrnico del administrador, esta direccin aparece en los
mensajes de error, para permitir al usuario notificar un error al administrador. No puede estar dentro de
ninguna seccin.
ServerName: especifica el nombre y el puerto que el servidor utiliza para identificarse, normalmente se
determina automticamente, pero es recomendable especificarlo explcitamente para que no haya problemas
al iniciar el servidor. Si el servidor no tiene un nombre registrado en las DNS, se recomienda poner su
nmero IP. No puede estar dentro de ninguna seccin.
La sintaxis es:
ServerName direccionIP:Puerto
Ejemplo:
ServerName localhost:80
DocumentRoot: la carpeta raz que se ubica en el servidor, desde la que se servirn los documentos. Por
defecto, todas las peticiones, tendrn como raz esta carpeta.
DirectoryIndex: especifica el fichero por defecto que buscar en cada directorio, en caso de que no se
especifique ninguno. Por defecto es index.html. Es decir, que si por ejemplo se pone en el navegador:
www.desarrolloweb.com el servidor por defecto servir www.desarrolloweb.com/index.html
En esta directiva se pueden especificar ms de un fichero, la sintaxis es la siguiente:
DirectoryIndex fichero1 fichero2 fichero3

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

55

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

El orden con el que se especifica el nombre de fichero determinar la prioridad a la hora de decidir que
fichero es el que se muestra.

Por defecto : servidor web puerto 80


URL: http://IP-ServerWeb/
URL : http://IP-ServerWeb:80
Cambio de Puerto
Nuevo Puerto :8080
URL : http://IP-ServerWeb:8080

PHP
PHP es un lenguaje de programacin interpretado, diseado originalmente para la creacin de pginas web
dinmicas.
PHP es un lenguaje interpretado de propsito general ampliamente usado y que est diseado
especialmente para desarrollo web y puede ser embebido dentro de cdigo HTML. Generalmente se ejecuta
en un servidor web, tomando el cdigo en PHP como su entrada y creando pginas web como salida. Puede
ser desplegado en la mayora de los servidores web y en casi todos los sistemas operativos y plataformas sin
costo alguno. PHP se encuentra instalado en ms de 20 millones de sitios web.

INSTALAR EL MODULO PARA SOPORTE PHP


# yum install php

Reiniciar el servicio
#service httpd restart

xxxxxxxxxxxxxxxxxxxxxxxxx
<?php
echo "Hola Mundo";
phpinfo();
?>
xxxxxxxxxxxxxxxxxxxxxxxxx

INSTALAR EL SERVIDOR DE BASE DE DATOS MYSQL

#yum install mysql-server

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

56

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#service mysqld start


#mysql
#>

Con lo que ya se puede comenzar a trabajar con mysql.


Directorio de trabajo de Mysql :

/var/lib/mysql/

Las bases de datos de mysql se crearn en el directorio /var/lib/mysql/ . Cada base de datos es un directorio
diferente y cada tabla es un archivo dentro del directorio.
Las dos bases de datos por defecto que se crean cuando se instala mysql es mysql y test.
comandos:
mysql>\h
(para ver la lista de opciones)
mysql>quit ( desconeccion )
Configurar un password de ingreso para un usuario)(o root)(Opcional):
#mysqladmin -u root password "miclave" (crea una clave deacceso para el usuario root)

Ingresar a MySQL:

#mysql -p

(si creaste una clave de acceso)

muestrar las bases de datos existentes


mysql>show databases;
por defecto siempre aparecen mysql y test.
Creacion y uso de una base de datos.
Crear la base de datos comunidad
mysql>create database comunidad;

(crea la base de datos comunidad)

Obs: El nombre de la base de datos diferencia de mayusculas y minusculas a diferencia de los comandos.
mysql>use comunidad; ( para cambiar a la base de datos uninet)
mysql>select database();

( muestra la base de datos actual de trabajo )

Conexion de PHP con Mysql


#yum install php-mysql

#yum install phpmyadmin

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

57

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

#vi /etc/httpd/conf.d/phpmyadmin.conf

<Directory "/usr/share/phpmyadmin">
Order Deny,Allow
# Deny from all
# Allow from 127.0.0.1
Allow from all
</Directory>

Luego
# cd /usr/share/phpmyadmin/
# vi config.inc.php
$cfg['blowfish_secret'] = 'jaja'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Salir grabando
Reiniciar apache
#service httpd restart
Instalar
#yum install php-mbstring
#yum install php-mcrypt

INSTALACION DE JOOMLA
Descargar la ltima versin de joomla Joomla-xxx-tar.gz

Dentro de la carpeta
#mkdir /var/www/html/joomla
Descomprimir joomla dentro de la carpeta jommla
#chmod 777 R joomla

Crear con phpmyadmin la base de datos joomla


Abrir el navegador y proceder hacer la instalacin

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

58

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

ANEXO - 01

DISTRIBUCION LINUX DEBIAN

Debian es un sistema operativo (S.O.) libre, para su computadora. El sistema operativo es el conjunto de
programas bsicos y utilidades que hacen que funcione su computadora. Debian utiliza el ncleo Linux (el
corazn del sistema operativo), pero la mayor parte de las herramientas bsicas vienen del Proyecto GNU;
de ah el nombre GNU/Linux.
Debian GNU/Linux ofrece ms que un S.O. puro; viene con 25113 paquetes, programas precompilados
distribuidos en un formato que hace ms fcil la instalacin en su computadora.
La ltima versin estable de Debian es la 5.0. La ltima actualizacin de esta versin se public el 27 de junio
de 2009

Se usa aptitude para la instalacin de paquetes Debian

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

59

INSTITUTO DE INVESTIGACION UNI-FIEE

#aptitude install
#vi .bashrc

Linux Administracin

vim

(Activar colores de directorios)

#vi /etc/vim/vimrc (Activar colores de contenido de archivos)


#vi /etc/apt/sources.list

(Archivo de direcciones de repositorios)

Actualizar lista de descarga


#aptitude update
Instalacin de Paquetes en Debian
#aptitude install paquete
Instalacion del scaneador de puertos NMAP
#aptitude install nmap
Instalacin del servidor SSH
#aptitude install ssh

Configuracin de parmetros de red


#vi /etc/network/interfaces
#ifdown eth0

#ifup eth0
#ifconfig

(muestra parmetros de red)

Navegador web modo consola


#aptitude install lynx
Instalacin de la interfaz grafica

Instalacin del SERVIDOR X


#aptitude install x-window-system
Instalacin del administrador de ventanas
#aptitude install twm
#aptitude install gdm

Instalacin de la interfaz grafica de usuario


#aptitude install wmaker
#aptitude install icewm

Navegador Web
#aptitude install iceweasel

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

60

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

Reproductor de sonido
#aptitude install mp3blaster

Monitoreo de Red
#aptitude install etherape
Analizador de RED
#aptitude install wireshark

# aptitude install bb

Gestor Grafico de descarga


#aptitude install synaptic

Servidor APACHE
# aptitude install apache2
Editor de paginas web(HTML, PHP)
# aptitude install quanta

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

61

También podría gustarte