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 / Swap Por lo menos 75 MB. Asignar ms espacio puede considerarse desperdicio. 350 a 512 MB. 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 : Prompt : root@host: ruta # _ usuario@host : ruta $ _


SHELL DE UNIX

(cuenta de root /usuario) (contrasea del root /usuario)

( ingresar comandos de root) (Ingresar comandos de usuario)

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 $ su password : $ su luis El comando exit permite terminar el shell actual. ponerse como root

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 # ls -la Igual que ls - l, solo que el tamao de los archivos estan en kb o mb. 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

Linux Administracin

# cp - R directorio /ruta /ruta #cp -rf directorio /ruta MOVER , RENOMBRAR

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

Copia carpeta y contenido a la ruta /ruta

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 Ejemplos : #du -h / * #du -sh / * Visualiza los tamaos de los directorios que contiene directorio . Visualiza el tamao total de la carpeta actual Visualiza el tamao total del directorio .

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

Linux Administracin

#grep -v

/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 ( comprimir archivo con bzip2 ) ( descomprimir archivo .bz2 ) ( descomprimir archivo .bz2 ) *.zip

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

Comprimir y Descomprimir archivos

# 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 Ver particiones montadas actualmente en Mb y Gb.

HENUX TECHNOLOGY

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 DESMONTAJE

(si falla probar sda1 o sda2)

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

(lalo no tiene shell) ( crea el usuario marin con con directorio home en /opt/carlos)

Nota7.#whoami

(me indica quien es el usuario actual)

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

28

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

# passwd # passwd usuario # su # login usuario # id usuario

(cambiar password de root) (cambiar password de usuario ) estar como root (logearse como super - usuario, root) (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 Lectura Escritura Ejecucin

Archivo Ver el contenido del archivo. Modificar o eliminar el archivo. Ejecutar el archivo.

# ls -l

HENUX TECHNOLOGY

Linux Training Mdulo I

Pag.

30

INSTITUTO DE INVESTIGACION UNI-FIEE

Linux Administracin

- rw- r- x r w 1 permisos

root root | | |

27132

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

archivo

(damos atributo de lectura y escritura para usuario root)

#chmod u+rwx

archivo

#chmod g+rx-w

archivo

#chmod o+r-wr

archivo

# chmod a+r archivo

da permiso de lectura a todos los usuarios

HENUX TECHNOLOGY

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 r- x 101 5 --x 0 01 1

rw110 6 # chmod

777 archivo

# chmod 600 archivo

# chmod 666 # chmod 777

archivo -R /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

Linux Administracin

#chown - R #chown -R

root:root

/home

cambiar a usuario root todo el contenido de /home /var/www/web

usuario:usuario

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 01 * * * * 15 8 * * * 15 20 * * * 00 5 * * 0 * 5 * * Sun 45 19 1 * * 01 * 20 7 * 10 1 * 12 1 00 12 16 * Wen 30 9 20 7 4 30 9 20 7 * 20 * * * 6 20 * * 1 6 A las 8:15 a.m. de cada da A las 8:15 p.m. de cada da A las 5 a.m. todos los domingos Cada minuto de 5:00a.m. a 5:59a.m. todos los domingos A las 7:45 p.m. del primero de cada mes Al minuto 1 de cada hora del 20 de julio A la 1:10 a.m. todos los lunes de diciembre Al medioda de los das 16 de cada mes y que sea Mircoles A las 9:30 a.m. del dia 20 de julio y que sea jueves A las 9:30 a.m. del dia 20 de julio sin importar el da de la semana Al minuto 20 de cada hora de los sbados Al minuto 20 de cada hora de los sbados de enero Descripcin Se ejecuta al minuto 1 de cada hora de todos los das

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: se puede realizar una consulta hacia los

HENUX TECHNOLOGY

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

Linux Administracin

#ls

/etc/init.d/
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

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

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 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 /opt/DATA de usuarios que pertenecen al grupo TITULACION.

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 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 acceso como usurio juan acceso como usurio root

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 #chkconfig vsftpd on (iniciar el servicio) (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

anonymous, se accede sin restriccin y de manera publica

a la carpeta

ftp>> ?

( 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

Linux Administracin

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

o o

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 Microsoft Google lighttpd 91,888,508 50.43% 62,766,928 34.44% 10,487,607 5.76% 3,072,457 1.69% 93,207,591 50.34% 63,871,279 34.49% 10,996,941 5.94% 3,030,958 1.64% -0.09 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

Linux Administracin

#aptitude install #vi .bashrc

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