Professional Documents
Culture Documents
Unix es una marca registrada de los Laboratorios Bell. UNIX no tiene un significado
especial, no es un acrnimo; sino un juego de palabras que imita a MULTICS, el sistema
operativo en que unos programadores trabajaron antes de iniciar el Unix.
Pareciera mentira pero podramos decir que el Unix naci a causa de un juego el Space
Travel desarrollado por Ken Thompson . Este juego corra bajo MULTICS pero los resultados eran
insatisfactorios.
Transcurra el ao 1969 y Thompson encontr una computadora chica donde correrlo, la
PDP-7 la cual provea un buen manejo de grficos.
Una vez transportado el programa necesit mejorar el ambiente (environment) de desarrollo
y fue as como cre junto con Dennis Ritchie, un nuevo sistema operativo (S.O) para esa mquina;
donde incluyeron un sistema de archivos, un subsistema de procesos y un pequeo conjunto de
utilitarios. A este nuevo sistema se le dio el nombre de Unix.
En 1971 este sistema fue portado a una PDP-11 (ocupaba 16 K para el sistema, 8 K para
programas de usuario y 512 K en disco), que eran ms avanzados que el obsoleto PDP-7. Estos
sistemas fueron los dominantes en el mundo de los minicomputadores en la dcada de los 70.
Luego de un tiempo en el que el sistema era muy estable, Thompson decidi escribirlo en un
lenguaje de alto nivel, lo comenz a escribir en lenguaje B. Este lenguaje tenia muchas
limitaciones (era interpretado y no tena tipos de datos estructurado), entonces fue mejorado por
Ritchie y se lo rebautiz como C.
En 1973, Ritchie y Thompson rescribieron el ncleo de Unix en C, rompiendo as con la
tradicin de que el software de sistemas est escrito en lenguaje ensamblador.
Hacia 1974 este S.O fue introducido en las universidades con fines educacionales y no
pasaron unos aos que ya estaba disponible para uso comercial. En estos tiempos los sistemas
Unix prosperaron en los Laboratorios Bell y de all se difundieron a los laboratorios, a los proyectos
de desarrollo de software y a las compaas de telfono en Estados Unidos.
En el perodo 1977 a 1982 los laboratorios Bell y AT&T acordaron agregar nuevas variantes
y nace comercialmente el Unix System III. Luego de un tiempo y con otras modificaciones nace el
System V. A partir de este momento las instalaciones de sistemas Unix crecieron en todo el mundo.
En 1982 la empresa Microsoft desarrolla el S.O XENIX usando el cdigo fuente de Unix.
Quien hubiera credo que Microsoft desarrollara un sistema el cual hoy es su competidor mas
aguerrido en el mercado. La historia suele tener tantos interrogantes y uno de ellas es porque
Microsoft no puso ms empeo en Unix y se volc totalmente al D.O.S, un sistema que delante de
Unix es como un grano de arena .
Hasta aqu quisimos dar algunos de los puntos de referencia ms importantes en la historia
del Unix. Pero a qu se debe el xito y la constancia de los sistemas Unix?
Las razones por las cuales creemos que es as, se resumen en sus caractersticas.
Caractersticas
Arquitectura interna
La estructura de Unix se amolda a un tpico modelo de capas, de forma que cada capa
nicamente puede comunicarse con las capas que se hallan en los niveles inmediatamente inferior
y superior.
El ncleo (kernel) del sistema interacta directamente con el hardware y proporciona una
serie de servicios comunes a los programas de las capas superiores, de forma que las
peculiaridades del hardware permanecen ocultas. Como los programas son independientes del
hardware, es fcil mover programas entre sistemas Unix que se ejecutan en hardware diferente.
KERNEL: es el ncleo del sistema, realiza funciones directamente relacionadas con el hardware.
No se relaciona con el usuario. Permanece oculto. Est formada por dos partes importantes:
La ejecucin de un proceso en UNIX se divide en dos niveles: nivel usuario y nivel kernel.
Cuando se produce una llamada al sistema se pasa del modo usuario al modo kernel. ste analiza
la llamada, la ejecuta y devuelve el control a modo usuario. Esta diferenciacin de modo se
produce porque los procesos en modo usuario pueden acceder a sus instrucciones y datos, pero
no a instrucciones y datos del kernel o de otros usuarios; mientras que el modo kernel puede
acceder a todos los datos e instrucciones del sistema. Hay instrucciones privilegiadas a las que
slo se puede acceder en modo kernel, el cual reside permanentemente en memoria.
SHELL: es un utilitario del sistema (no forma parte del kernel). Es el intrprete de comandos.
Su tarea es tomar los comandos enviados por
el usuario, interpretarlos y llamar a las rutinas correspondientes. Existen distintas versiones del
SHELL:
sh (standard shell)
csh (c-shell)
vsh (visual shell)
rsh (restricted shell)
ksh (korn shell)
Cada usuario puede elegir su propio shell. Un shell muestra un indicador (prompt) para
indicar al usuario que est preparado para aceptar una orden o instruccin. Para introducir una
orden desde el teclado, se escribe el nombre de la orden junto con la informacin que esta requiera
y se pulsa la tecla retorno de carro. Esta lnea tecleada se denomina lnea de comandos u rdenes.
Cuando el shell lee una lnea de comandos, extrae la primera palabra, asume que ste es el
nombre de un programa ejecutable, lo busca y lo ejecuta. El shell suspende su ejecucin hasta que
el programa termina, tras lo cual intenta leer la siguiente lnea de rdenes.
Actualmente, Linux posee todas las caractersticas que pueden encontrarse en cualquier sistema
Unix moderno, incluyendo direccionamiento lineal de 32 bits, memoria virtual, multitarea real,
shared libraries, mdulos de kernel cargables on-demand, soporte TCP/IP (incluyendo SLIP, PPP,
NFS, etc.), y entorno grfico X-Windows.
Linux es distribuido bajo la Licencia General Pblica de GNU, lo cual significa que puede ser
distribuido, copiado y modificado gratuitamente, a condicin de no imponer ninguna restriccin en
sucesivas distribuciones. En pocas palabras: Linux es un sistema operativo gratuito.
Componentes de linux
Linux se puede dividir generalmente en cuatro componentes principales: el ncleo(kernel), el shell,
el sistema de archivos y las utilidades.
El ncleo: es el programa medular que ejecuta programas y gestiona dispositivos de hardware
tales como los discos y las impresoras.
El shell: proporciona una interfaz para el usuario. Recibe rdenes del usuario y las enva al ncleo
para ser ejecutadas.
El sistema de archivos: organiza la forma en que se almacenan los archivos en dispositivos de
almacenamiento tales como los discos. Los archivos estn organizados en directorios. Cada
directorio puede contener un nmero cualquiera de subdirectorios, cada uno de los cuales puede a
su vez, contener otros archivos.
El ncleo, el shell y el sistema de archivos forman en conjunto la estructura bsica del sistema
operativo. Con estos tres elementos puede ejecutar programas, gestionar archivos e interactuar
con el sistema. Adems, Linux cuenta con unos programas de software llamados utilidades que
han pasado a ser considerados como caractersticas estndar del sistema.
Las utilidades: son programas especializados, tales como editores, compiladores y programas de
comunicaciones, que realizan operaciones de computacin estndar. Incluso uno mismo puede
crear sus propias utilidades.
Linux contiene un gran nmero de utilidades. Algunas efectan operaciones sencillas: otras son
programas complejos con sus propios juegos de rdenes. Para empezar, muchas utilidades de
pueden clasificar en tres amplias categoras: editores, filtros y programas de comunicaciones.
Tambin hay utilidades que efectan operaciones con archivos y administracin de programas.
En lneas generales podemos decir que se dispone de varios tipos de sistema de archivos para
poder acceder a archivos en otras plataformas. Incluye un entorno grfico X window (Interface
grfico estandard para mquinas UNIX), que nada tiene que envidiar a los modernos y caros
entornos comerciales. Est orientado al trabajo en red, con todo tipo de facilidades como correo
electrnico por ejemplo. Posee cada vez ms software de libre distribucin, que desarrollan miles
de personas a lo largo y ancho del planeta. Linux es ya el sistema operativo preferido por la
mayora de los informticos.
Un ejemplo de la popularidad que ha alcanzado es sistema y la confianza que se puede depositar
en l es que incluso la NASA ha encomendado misiones espaciales de control de experimentos a
la seguridad y la eficacia de Linux.
Por lo tanto, la gran popularidad de Linux incluye los siguientes puntos:
Se distribuye su cdigo fuente, lo cual permite a cualquier persona que as lo desee hacer
todos los cambios necesarios para resolver problemas que se puedan presentar, as como tambin
agregar funcionalidad. El nico requisito que esto conlleva es poner los cambios realizados a
disposicin del pblico.
Es desarrollado en forma abierta por cientos de usuarios distribudos por todo el mundo,
los cuales la red Internet como medio de comunicacin y colaboracin. Esto permite un rpido y
eficiente ciclo de desarrollo.
Cuenta con un amplio y robusto soporte para comunicaciones y redes, lo cual hace que
sea una opcin atractiva tanto para empresas como para usuarios individuales.
Da soporte a una amplia variedad de hardware y se puede correr en una multitud de
plataformas: PC's convencionales, computadoras Macintosh y Amiga, as como costosas
estaciones de trabajo
Linux es Multitarea:
La multitarea no consiste en hacer que el procesador realice ms de un trabajo al mismo tiempo
(un solo procesador no tiene esa capacidad), lo nico que realiza es presentar las tareas de forma
intercalada para que se ejecuten varias simultneamente. Por lo tanto en Linux es posible ejecutar
varios programas a la vez sin necesidad de tener que parar la ejecucin de cada aplicacin.
Linux es Multiusuario:
Para que pueda desarrollar esta labor (de compartir los recursos de un ordenador) es necesario un
sistema operativo que permita a varios usuarios acceder al mismo tiempo a travs de terminales, y
que distribuya los recursos disponibles entre todos. As mismo, el sistema debera proporcionar la
posibilidad de que ms de un usuario pudiera trabajar con la misma versin de un mismo programa
al mismo tiempo, y actualizar inmediatamente cualquier cambio que se produjese en la base de
datos, quedando reflejado para todos.
Pues bien, este sistema operativo no lo tenemos que inventar puesto que y esta inventado. Pero
no todo es tan bonito como se pinta ya que el hecho de que se conecten a tu ordenador ms
usuarios significa que es ms difcil mantener tu seguridad.
Linux es multiplataforma
Es decir que puede correr en muchas CPU distintas (Intel, AMD, motorola, sun, sparc, etc.)
Linux es Seguro:
Linux se autoprotege; NO existen virus para Linux.
En la estructura de Linux aparecen cuatro elementos situados en
bloques diferentes, cada uno de los cuales tiene encomendado
una funcin:
Hardware.
Ncleo o Kernel.
Shell.
Usuario.
El usuario utiliza todas las aplicaciones basadas en Linux, as como sus utilidades y ordenes
propias. Su informacin estar organizada mediante un sistema de archivos; de todo el sistema solo
puede interactuar con el shell (Es encargado de interactuar con el usuario y el kernel ncleo) que a
su vez es el interprete de comandos, as como un pequeo lenguaje de programacin con el que
programar nuevas funciones o personalizar algunas existentes.
El ncleo es el nico que interacta con el hardware. Incluye entre sus funciones las operaciones
ms importantes de gestin del sistema operativo, como puede ser la gestin de memoria,
mantenimiento del sistema de archivos, asignacin de tiempo del CPU a cada una de las tareas, el
control del acceso a un ordenador mediante claves, etc...
El elemento hardware estar formado por todos los componentes que en un momento determinado
puede detectar el sistema.
Conexin al sistema
La conexin al sistema operativo se realiza a travs de clientes que utilicen el protocolo TCP/IP.
Estos clientes muchas veces vienen incorporados en los sistemas operativos instalados en las pcs
(tales como windows, DOS, MAC, etc). Los clientes de mayor uso son el telnet y el ssh. Estos dos
clientes permiten una conexin remota y la administracin adecuada del sistema.
Cliente telnet.- Este cliente forma parte de la suite de protocolos TCP/IP; los sistemas operativos
que provean soporte a este cliente tambin trabajan con dicho protocolo. Este protocolo fue
durante mucho tiempo el metodo de administracin remota mas usado en redes LAN. El problema
se da cuando la seguridad esta en juego: telnet no encripta los datos que son enviados a traves de
la red poniendo en serie peligro la seguridad de los mismos. Existe en internet programas de
acceso libre los cuales permiten capturar los paquetes de la red y armarlos, desde cualquier pc
conectada a la red local. Esto es tremendamente peligroso desde el punto de vista de la seguridad.
Cliente ssh.- Este provee mayor seguridad al usuario administrador o a cualquier usuario que se
conecta a un sistema linux pues la ventaja que ofrece es la encriptacin de los datos antes de ser
enviados a la red. De este modo, si los datos son capturados en la red local por otra pc, el usuario
deber tomarse su tiempo para descifrarlos.
Cliente ftp.- Este cliente se utiliza para descargar informacin desde la red a nuestro pc. Es de uso
generalizado en la internet y permite obtener copias de programas en instantes, dependiendo de la
velocidad de descarga de la lan. En la mayoria de los servidores ftp en inernet el acceso a este
protocolo se realiza mediante el cliente annimo. En este caso, el usuario conectado al sistema
posee pocos privilegios y solo puede descargar el software disponible en el servidor.
Existen varios protocolos de conexin a un sistema UNIX/LINUX. Para ilustrar un poco este detalle,
usaremos el programa PUTTY.EXE el cual simula la conexin telnet y ssh.
Qu es una distribucin?
Una distribucin de Linux es simplemente un conjunto de programas recopilados a lo largo y ancho
de sitios en Internet, organizados de tal manera que ofrezcan una solucin particular o general
hacia l o los usuarios. No cambia en nada Linux de una distribucin a otra, ya que en realidad
Linux es tan solo un archivo pequeo el cual se encarga de poner orden y administrar optimamente
la computadora tanto a la hora del arranque como durante el tiempo que permanece encendida.
Las personas o empresas que integran las distribuciones seleccionan software a su criterio, y lo
incorporan dentro de una serie de discos compactos con conjuntos de herramientas y aplicaciones
de instalacin. As que a veces una distribucin no significa que sea mejor que otra por tener diez
discos o por que solo est contenida en un solo disco. Las distribuciones se adaptan a las
necesidades de los usuarios, para qu tener una distribucin con paquetes y programas para
administracin de redes, si el trabajo ser para el hogar? Una distribucin es mejor a otra cuando
el reconocimiento de los usuarios a nivel mundial le otorgue tal distincin.
COREL Linux:
Usuarios que no tienen mucho espacio en la
computadora, interesados en conocer Linux sin
comprometer mucho espacio y que solo necesitan
paquetes bsicos, por lo regular recomendada para
estudiantes y entusiastas de la computacin
SuSE:
Distribucin alemana multipropsito, algunas
configuraciones requieren de conocimientos adicionales.
Programas e interafeces que facilitan su uso.
Slackware:
Distribucin para los amantes de la historia de Linux.
Bastante completa, recomendada para desarrolladores y
programadores
Las siguientes pantallas de instalacin cuentan con una ayuda en la parte izquierda
con una
descripcin acerca de las opciones que podremos elegir durante la instalacin.
Esta ayuda ser en castellano una vez hayamos seleccionado nuestro idioma.
Hay unos botones en la parte inferior izquierda, uno esconde la ayuda y el otro que nos
muestra
notas de la versin que estamos instalando. Pulsaremos Next. La siguiente pantalla es
la de seleccin del idioma, seleccionaremos el nuestro y pulsaremos Next.
10
A
continuacin se nos preguntar por el tipo de teclado, seleccionaremos el nuestro y
pulsaremos Siguiente.
11
12
13
14
15
Para nuestra practica, crearemos puntos de montaje para los siguientes directorios:
16
Se puede elegir entre el GRUB o el LILO. Por defecto RedHat sugiere el GRUB.
Aparecer la lista de los sistemas instalados para arrancar con el gestor de arranque.
Podemos aadir y modificar elementos con los botones correspondientes. Podemos
tambin seleccionar uno que arranque por defecto al cabo de unos segundos marcando
la casilla al seleccionar Modificar.
En este caso se sugiere marcas la casilla DOS, de esta manera el arranque por defecto
ser Windows.
Si el sistema detectara una tarjeta de red, se nos mostrar la pantalla de configuracin
de la
17
18
En este punto, si desea instalar RedHat en castellano, seleccione las opciones de Per y Espaa
simultneamente o slo instalar la versin en ingls.
Luego, seleccionaremos nuestro huso horario. Esta pantalla tiene un detector grfico
del huso horario.
19
Podremos tambin configurar el poder validar los usuarios contra un servidor LDAP,
Kerberos 5 y SMB (windows).
20
La ventana anterior aparece durante una instalacin personalizada. En ella se puede seleccionar
los paquetes de instalacin que usted desee. Recordemos que RedHat utiliza el administrador de
paquetes RPM (RedHat Package Manager) el cual le permita instalar, desinstalar, actualizar o
revisar la instalacin de paquetes de linux. Una vez seleccionados los componentes a instalar
presionamos Siguiente y aparece la ventana previa a la copia de archivos.
21
22
Del mismo modo, debera estar ya configurado, sino podemos seleccionarlo de la lista
de
23
Note que hemos seleccionado el arranque del sistema en modo texto. En caso de servidores, no
sirve mucho el arranque grfico. Presione siguiente.
Felicitaciones!!! . Acaba de instalar su sistema linux RedHat 9 en su pc. Claro, solo si aparece la
siguiente pantalla, entonces cante victoria:
24
La velocidad con la que el programa de instalacin realiza esta tarea depender mucho de las
caractersticas de su sistema (procesador, velocidad del mismo, tamao de la memoria, tamao del
disco duro y velocidad, etc.)
A continuacin, una vez terminado este proceso pasaremos a ver la configuracin post instalacin
de linux redhat.
25
efecto de inmediato para los servicios no xinetd. Los servicios que no son xinetd no pueden
ser arrancados, detenidos o reiniciados usando este programa.
chkconfig utilidad de lnea de comandos permite activar o desactivar servicios para los
diferentes niveles de ejecucin. Los cambios no toman efecto de inmediato para los
servicios no xinetd. Los servicios no xinetd no pueden ser arrancados, detenidos o
reiniciados usando esta utilidad.
Pronto descubrir que estas herramientas son ms fciles de usar que las alternativas
modificacin manual de los numerosos vnculos simblicos ubicados en los directorios bajo
/etc/rc.d o la modificacin de los ficheros de configuracin xinetd en /etc/xinetd.d.
Otra forma de administrar el acceso a los servicios del sistema es mediante el uso de iptables para
configurar un firewall IP. Si es un usuario nuevo de Linux, tenga en cuenta que iptables puede que
no sea la mejor solucin para usted. La configuracin de iptables puede ser complicada y es mejor
que la realicen administradores de sistemas Linux experimentados.
Por otro lado, la ventaja de utilizar iptables es flexibilidad. Por ejemplo, si necesita una solucin
personalizada que proporcione a determinados hosts el acceso a servicios concretos, iptables
puede ser la herramienta que necesita. Consulte el Manual de referencia de Red Hat Linux y el
Manual de seguridad de Red Hat Linux para ms informacin sobre iptables.
Alternativamente, si est buscando una utilidad que establezca reglas de acceso generales para su
mquina, y/o es un nuevo usuario de Linux, pruebe con GNOME Lokkit. GNOME Lokkit es una
aplicacin tipo GUI que le har preguntas sobre cmo desea usar el equipo. Basado en sus
respuestas, configurar un cortafuegos sencillo por usted. Tambin puede usar la Herramienta de
configuracin de nivel de seguridad (redhat-config-securitylevel), la cual le permite seleccionar
el nivel de seguridad para su sistema, similar a la pantalla de Nivel de seguridad en el programa
de instalacin de Red Hat Linux.
Niveles de ejecucin
Antes de configurar el acceso a servicios, deber entender qu son los niveles de ejecucin en
Linux. Un nivel de ejecucin es un estado o un modo que los servicios includos en el directorio
/etc/rc.d/rc<x>.d definen, donde <x> es el nmero del nivel de ejecucin.
Red Hat Linux utiliza los siguientes niveles de ejecucin:
0 Parada
1 Modo de un usuario
6 Rearranque
26
Si usa una pantalla de texto para el ingreso al sistema, estar operando a nivel de ejecucin 3. Si
usa una pantalla grfica para ingresar al sistema, estar operando a nivel de ejecucin 5.
El nivel de ejecucin por defecto se puede cambiar si se modifica el fichero /etc/inittab, que
contiene una lnea junto a la parte superior del fichero con el siguiente aspecto:
id:5:initdefault:
Cambie el nmero de esta lnea para reflejar el nivel de ejecucin que desee. El cambio no tendr
efecto hasta rearrancar el sistema.
Para cambiar el nivel de ejecucin inmediatamente, use el comando telinit seguido del nmero del
nivel de ejecucin. Debe ser usuario root para poder usar este comando.
TCP Wrappers
Muchos administradores de sistemas UNIX estn acostumbrados a usar TCP wrappers para
administrar el acceso a determinados servicios de red. Cualquier servicio de red que se administre
con xinetd (as como tambin cualquier programa con soporte incorporado para libwrap) puede
usar un TCP-wrapper para administrar el acceso. xinetd puede usar los ficheros /etc/hosts.allow y
/etc/hosts.deny para configurar el acceso a los servicios del sistema. Como se deduce de los
propios nombres hosts.allow contiene una lista de reglas que le permiten a los clientes accesar los
servicios de red controlados por xinetd, y hosts.deny a su vez, con reglas para denegar el acceso.
El fichero hosts.allow toma precedencia sobre el archivo hosts.deny. Los permisos que conceden o
deniegan el acceso se pueden basar en una direccin IP individual (o nombres de hosts) o en un
modelo de clientes. Vea el Manual de referencia de Red Hat Linux y la pgina del manual
hosts_access en la seccin 5 (man 5 hosts_access) para ms detalles.
xinetd
Para controlar el acceso a los servicios de Internet, use xinetd, que es un sustituto seguro del
comando inetd. El demonio xinetd conserva los recursos del sistema, proporciona control y registro
de acceso, y sirve para arrancar servidores de uso especial. xinetd puede ser usado para proveer
acceso a host particulares, denegar el acceso a determinados hosts, proporcionar acceso a un
servicio en horas concretas, limitar el nmero de conexiones de entrada y/o la carga que se crea
con las conexiones, etc.
xinetd se ejecuta de forma permanente y escucha todos los puertos de los servicios que
administra. Cuando recibe una peticin de conexin de uno de los servicios que administra, xinetd
arranca el servidor apropiado a dicho servicio.
El archivo de configuracin para xinetd es /etc/xinetd.conf, pero el archivo slo contiene unos
pocos valores por defecto y una instruccin para incluir el directorio /etc/xinetd.d. Para activar o
desactivar un servicio xinetd, modifique el archivo de configuracin en el directorio /etc/xinetd.d. Si
el atributo disable est definido como yes, el servicio est desactivado. Si el atributo disable est
definido a no, el servicio estar activado. Puede editar cualquiera de los archivos de configuracin
xinetd o cambiar el estado usando la Herramienta de configuracin de servicios, ntsysv, o
chkconfig. Para una lista de los servicios de red controlados por xinetd, revise los contenidos del
directorio /etc/xinetd.d con el comando ls /etc/xinetd.d.
27
ntsysv
La utilidad ntsysv provee una interfaz sencilla para activar y desactivar servicios. Puede usar
ntsysv para activar o desactivar un servicio xinetd. Tambin puede usar ntsysv para configurar los
niveles de ejecucin. Por defecto, nicamente el nivel de ejecucin actual es configurado. Para
configurar un nivel de ejecucin diferente, especifique uno o ms niveles con la opcin --level. Por
ejemplo, el comando ntsysv --level 345 configura los niveles de ejecucin 3, 4, y 5.
La interfaz ntsysv funciona de forma similar al programa de instalacin en modo texto. Utilice las
flechas arriba y abajo para desplazarse por la lista. La barra espaciadora selecciona o anula la
seleccin de servicios, y tambin sirve para "pulsar" los botones Aceptar y Cancelar. Para
desplazarse en la lista de servicios y entre los botones Aceptar y Cancelar, use la tecla [Tab]. Un
asterisco, *, significa que el servicio est activado. Con la tecla [F1] se mostrar una breve
descripcin de cada servicio.
Aviso
Los servicios manejados por xinetd son afectados de inmediato por ntsysv. Para todos los
dems servicios, los cambios no toman efecto de inmediato. Usted debe detener o arrancar
el servicio individual con el comando service daemon stop. En el ejemplo anterior, sustituya
daemon por el nombre del servicio que desee detener, por ejemplo httpd. Reemplace stop
por start o restart para arrancar o reiniciar el servicio.
Para activar los servicios que no son controlados por xinetd, utilice la herramienta service con la
siguiente sintaxis:
service <opcin> start|stop|restart|status|reload
Ejemplo: para activar el servicio nfs para compartir directorios en red, ejecutamos el siguiente
comando:
[root @linux root]# servcice nfs start
Aparece un mensaje indicando el inicio del service nfs en el servidor
Para detener el servicio bastara con realizar el comando:
[root @linux root]# servcice nfs stop
Aviso
Los servicios manejados por xinetd pueden ser reiniciados con el comando anterior. En este
caso service acta sobre todos los servicios contolados por xinetd. Entonces, utilice service
xinetd start. Asi, podr reiniciar todos los servicios controlados por este demonio. Tambin
valen las clausulas stop, restart, status.
28
chkconfig
El comando chkconfig puede ser usado para activar y desactivar servicios. Si usa el comando
chkconfig --list, ver una lista de los servicios del sistema y si estn iniciados (on) o detenidos (off)
en los niveles de ejecucin 0-6. Al final de la lista, ver una seccin para los servicios manejados
por xinetd.
Si usa chkconfig --list para realizar una consulta a un servicio manejado por xinetd, ver si el
servicio xinetd est activado (on) o desactivado (off). Por ejemplo, el comando chkconfig --list finger
retorna la salida siguiente:
finger
on
Como se muestra, finger est activado como un servicio xinetd. Si xinetd est ejecutndose, finger
estar activo.
Si usa chkconfig --list para consultar un servicio /etc/rc.d, ver las configuraciones del servicio para
cada nivel de ejecucin. Por ejemplo, el comando chkconfig --list anacron devuelve la siguiente
salida:
anacron
3:on
4:on
5:on
6:off
chkconfig tambin puede ser usado para configurar un servicio para que comience (o no) en un
nivel de ejecucin especfico. Por ejemplo, desactive nscd en los niveles de ejecucin 3, 4, y 5,
usando el comando siguiente:
chkconfig --level 345 nscd off
Aviso
Los servicios gestionados por xinetd estn afectados por chkconfig. Por ejemplo, si se est
ejecutando xinetd, finger est deshabilitado y se ejecuta el comando chkconfig finger on y se
activa de inmediato finger sin tener que reiniciar xinetd de forma manual. El resto de los
cambios no se producen inmediatamente tras haber usado chkconfig manualmente. Deber
parar y reiniciar el servicio individual con el comando service daemon stop. En el ejemplo
anterior, reemplace daemon con el nombre del servicio que desea parar; por ejemplo, httpd.
Reemplace stop start o con restart para iniciar o reiniciar el sistema .
Una lista de los servicios activos y no activos se presenta a continuacin:
0:desactivado
0:desactivado
0:desactivado
0:desactivado
0:desactivado
0:desactivado
0:desactivado
1:desactivado
1:desactivado
1:desactivado
1:desactivado
1:desactivado
1:desactivado
1:desactivado
2:desactivado
2:activo
2:desactivado
2:activo
2:activo
2:desactivado
2:activo
3:activo
3:activo
3:activo
3:activo
3:activo
3:activo
3:activo
4:activo
4:activo
4:activo
4:activo
4:activo
4:activo
4:activo
5:activo
5:activo
5:activo
5:activo
5:activo
5:activo
5:activo
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
29
saslauthd
0:desactivado 1:desactivado
keytable
0:desactivado 1:activo
apmd
0:desactivado 1:desactivado
atd
0:desactivado 1:desactivado
gpm
0:desactivado 1:desactivado
autofs
0:desactivado 1:desactivado
iptables
0:desactivado 1:desactivado
irda
0:desactivado 1:desactivado
isdn
0:desactivado 1:desactivado
sshd
0:desactivado 1:desactivado
portmap
0:desactivado 1:desactivado
nfs
0:desactivado 1:desactivado
nfslock
0:desactivado 1:desactivado
sendmail
0:desactivado 1:desactivado
rhnsd
0:desactivado 1:desactivado
crond
0:desactivado 1:desactivado
anacron
0:desactivado 1:desactivado
xfs
0:desactivado 1:desactivado
xinetd
0:desactivado 1:desactivado
cups
0:desactivado 1:desactivado
ntpd
0:desactivado 1:desactivado
firstboot
0:desactivado 1:desactivado
servicios basados en xinetd:
chargen-udp:
desactivado
rsync: desactivado
chargen:
desactivado
daytime-udp:
desactivado
daytime:
desactivado
echo-udp:
desactivado
echo:
desactivado
services:
desactivado
servers:
desactivado
time-udp:
desactivado
time:
desactivado
cups-lpd:
desactivado
sgi_fam:
activo
2:desactivado
2:activo
2:activo
2:desactivado
2:activo
2:desactivado
2:activo
2:desactivado
2:activo
2:activo
2:desactivado
2:desactivado
2:desactivado
2:activo
2:desactivado
2:activo
2:activo
2:activo
2:desactivado
2:activo
2:desactivado
2:desactivado
3:desactivado
3:activo
3:activo
3:activo
3:activo
3:activo
3:activo
3:desactivado
3:activo
3:activo
3:activo
3:desactivado
3:activo
3:activo
3:activo
3:activo
3:activo
3:activo
3:activo
3:activo
3:desactivado
3:desactivado
4:desactivado
4:activo
4:activo
4:activo
4:activo
4:activo
4:activo
4:desactivado
4:activo
4:activo
4:activo
4:desactivado
4:activo
4:activo
4:activo
4:activo
4:activo
4:activo
4:activo
4:activo
4:desactivado
4:desactivado
5:desactivado
5:activo
5:activo
5:activo
5:activo
5:activo
5:activo
5:desactivado
5:activo
5:activo
5:activo
5:desactivado
5:activo
5:activo
5:activo
5:activo
5:activo
5:activo
5:activo
5:activo
5:desactivado
5:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
6:desactivado
netconfig
El comando netconfig puede ser usado para configurar la tarjeta de red de la pc. Si usa el comando
netconfig ver una pantalla similar a la presentada durante la instalacion de linux en modo texto
solicitando la IP, la MASCARA, el GATEWAY y el servidor DNS por defecto. Esto afecta los valores
encontrados en los siguientes archivos (los archivos estn marcados en negrita):
/etc/sysconfig/network: contiene el nombre del servidor y la direccin del gateway. Tambin nos
dice si la red debe activarse al iniciar el servidor.
/etc/sysconfig/network-scripts/ifcfg-eth0: contiene la configuracin de la IP de la tarjeta, la
mascara de red, el nombre del dispositivo y el protocolo de configuracin. Opcionalmente aparece
la direccin de la red a la cual pertence la pc.
/etc/resolv.conf: contiene la direccin IP de los servidores dns utilizados para resolver nombres de
maquinas en la red y el dominio al cual pertenece la computadora.
Una vez terminada la configuracin IP de la maquina, reiniciar el servicio de red de la siguiente
manera:
[root @linux root]# service network restart
30
31
/bin Contiene los programas ejecutables que son parte del sistema operativo Linux. Muchos
comandos de Linux como cat, cp, ls, more y tar estn ubicados en este directorio.
/boot Contienen el kernel (o ncleo) de Linux y otros archivos necesarios para el administrador de
inicio LILO, que realiza la carga inicial del sistema operativo cuando la computadora se enciende.
/dev Contienen todos los archivos de acceso a dispositivos. Linux trata cada dispositivo
(terminales, discos, impresoras, etc.) como si fuera un archivo especial.
/etc. Contiene archivos de configuracin del sistema y los programas de inicializacin.
/home Contiene los directorios HOME de los usuarios. El directorio HOME el directorio inicial en el
que se encuentra posicionado un usuario al ingresar al sistema, por lo que tambin se conoce
como directorio de logn o de conexin.
/lib Contiene los archivos de biblioteca utilizados por las aplicaciones y utilidades del sistema, as
tambin como las libreras pertenecientes a diferentes lenguajes de programacin.
/lost+found Directorio para archivos recuperados por el proceso de reparacin del sistema de
archivos, que se ejecuta luego de una cada del sistema y asegura su integridad luego de que el
equipo haya sido apagado de manera inapropiada.
/mnt Es un directorio vaco que se usa normalmente para montar dispositivos como disquetes y
particiones temporales de disco.
/proc Contiene archivos con informacin sobre el estado de ejecucin del sistema operativo y de
los procesos.
/root Es el directorio HOME para el usuario root (administrador del sistema).
/sbin Contienen archivos ejecutables que son comandos que se usan normalmente para la
administracin del sistema.
/tmp Directorio temporal que puede usar cualquier usuario como directorio transitorio.
/usr Contiene archivos de programa, de datos y de libreras asociados con las actividades de los
usuarios.
/var Contiene archivos temporales y de trabajo generados por programas del sistema. A diferencia
de /tmp, los usuarios comunes no tienen permiso para utilizar los subdirectorios que contiene
directamente, sino que deben hacerlo a travs de aplicaciones y utilidades del sistema.
32
Historia de la shell
En los tiempos en los que Dennis Ritchie y Ken Thompson de AT&T diseaban UNIX, quisieron
crear un medio para que las personas interactuaran con el sistema.
Los sistemas de entonces venan con intrpretes de comandos, que aceptaban comandos de los
usuarios y los interpretaban para que los utilizara la mquina.
Pero Ritchie y Thompson queran ms, algo que ofreciera ms que los intrpretes de comandos del
momento. As naci la Bourne shell (conocida como sh), creada por S.R. Bourne. Desde la
creacin de la shell de Bourne se han desarrollado otras shells, tales como la C shell (csh) y la
Korn shell (ksh).
Cuando la Free Software Foundation buscaba una shell sin patentes, los desarrolladores
empezaron a trabajar en el lenguaje de la Bourne shell y en caractersticas de otras shells del
momento.
El resultado fu la Bourne Again Shell o bash. Aunque su sistema Red Hat Linux tenga diferentes
shells, bash es la shell predeterminada. Se puede aprender algo ms sobre bash leyendo su
pgina man bash (escriba man bash en el intrprete de comandos).
33
34
Recuerde que los recorridos absolutos le conducirn a cualquier directorio desde cualquier
directorio y los recorridos relativos tan slo le conducirn a los directorios debajo del suyo.
El comando cd .. le indica a su sistema que suba un directorio inmediatamente arriba del actual.
Para subir dos niveles, use el comando cd ../...
Use el siguiente ejercicio para evaluar lo que ha aprendido sobre recorridos absolutos y relativos.
Teclee el recorrido relativo desde un directorio principal:
cd ../../etc/X11
Despus de usar el comando completo en el ejemplo, debera estar en el directorio X11, que es
donde encontrar archivos de configuracin y directorios relacionados al sistema X Window.
Observe el ltimo comando cd. Le indic a su sistema que:
1.
2.
3.
4.
Por otro lado, usando recorridos absoluto le llevara al directorio /etc/X11 ms rpidamente. Teclee:
cd /etc/X11
Los recorridos absolutos comienzan en el directorio raiz (/) y descienden al directorio que
especifique.
Nota
Asegrese siempre de que sabe en que directorio est antes de que establezca un recorrido
relativo al directorio o archivo al que quiere llegar. No se preocupe de la localizacin de su
sistema de archivos, al establecer el recorrido absoluto a otro directorio o archivo. Si no est
seguro, escriba pwd y se mostrar su directorio actual, el cual le puede dar una gua para
moverse hacia arriba o abajo usando recorridos relativos.
Comando
Funcin
cd
cd ~
cd /
cd /root
cd /home
cd ..
cd ~otheruser
cd /dir1/subdirfoo
35
Nota
recorrido absoluto le llevar directamente a subdirfoo,
un subdirectorio de dir1
cd ../../dir3/dir2
Ahora que ya sabe cmo cambiar de directorios, vea lo que sucede cuando cambia al directorio
login de root (cuenta del superusuario). Teclee:
cd /root
Si no est registrado como root, recibir un mensaje de denied permission, acceso denegado, al
directorio.
Su sistema Linux niega el acceso al root y a otras cuentas de usuario (o directorios login) para
prevenir daos accidentales o deliberados.
Para cambiar el login de root, utilice el comando su.
su
Sugerencia
El comando su significa usuario substituto y le permite cambiar el login temporalmente como
un usuario diferente. Cuando escribe su solo y presiona [Intro], se convierte a root (tambin
llamado superusuario) mientras que todava se mantienen en su login shell (el directorio
principal del usuario). El comando su - lo convierte a root con su login shell original.
Tan pronto como d su contrasea de root, ver los cambios en su intrprete de comandos de root
que le mostrarn su nuevo estado de superusuario: la designacin de la cuenta root delante del
intrprete de comandos y "#" al final.
Cuando haya acabado de trabajar como root, teclee exit en el intrprete de comandos para volver a
la cuenta de usuario.
Visualizacin de los contenidos con ls
Ahora que ya sabe cmo cambiar de directorios, ha llegado el momento de echar un vistazo al
contenido de los directorios con el comando ls.
Hay muchas opciones disponibles con el comando ls. Por s solo ls no le mostrar todos los
archivos de su directorio. Algunos archivos estn ocultos (tambin conocidos como archivos dot) y
slo se pueden ver con una opcin adicional del comando ls
Escriba el comando ls -a. Ver archivos que empiezan con puntos llamados archivos ocultos o
archivos dot.
36
Los archivos ocultos son, en su mayora, archivos de configuracin que establecen preferencias en
los programas, gestores de ventana, shells y mucho ms. El motivo por el que estn ocultos es
para evitar cualquier error accidental por parte del usuario. Adems, cuando busca en un directorio,
habitualmente no busca estos archivos de configuracin, por lo que mantenerlos ocultos le ayudar
a evitar confusin en la pantalla.
La posibilidad de poder ver todos los archivos usando ls -a le aportar una informacin detallada.
No obstante, podr acceder todava a ms informacin aadiendo ms de una opcin.
Si quiere ver el tamao de un archivo o un directorio, al crearse, aada la opcin long, (-l) al
comando ls -a. Este comando le muestra la fecha de creacin del archivo, su tamao, propietario,
permisos, etc.
No es necesario que est en el directorio cuyos contenidos quiere ver para el uso del comando ls.
Para ver el contenido del directorio /etc/ desde su directorio principal, escriba:
ls -al /etc
A continuacin le ofrecemos una lista de algunas de las opciones ms populares de ls. Recuerde,
puede ver la lista completa leyendo las pginas de manual de ls, (man ls).
-a todos. Lista todos los archivos en el directorio, incluyendo los archivos ocultos
(.filename). El .. y . al inicio de la lista, hacen referencia al directorio padre y al directorio
actual, respectivamente.
-l largo. Lista los detalles sobre el contenido, incluyendo los permisos (modos), el
propietario, el grupo, el tamao, la fecha de creacin, si el archivo es o no un enlace de
algn sitio del sistema y cul es.
-F tipo de archivo. Aade un smbolo al final de cada listado. Estos smbolos incluyen /
para indicar un directorio; @ para indicar un enlace simblico a otro archivo y * para indicar
un archivo ejecutable.
37
-r inverso (en ingls "reverse"). Lista los contenidos del directorio desde el final hasta el
inicio.
-R recursive. La opcin recursive lista los contenidos de todos los directorios (bajo el
directorio actual)
-S tamao (del ingls "size"). Clasifica los archivos por su tamao
38
El comando cat visualizar tambin los contenidos de un archivo entero en la pantalla (por ejemplo,
teclee cat filename.txt). Si un archivo es bastante largo, se deplazar rpidamente y por completo
por la pantalla. Para evitar esto, use el comando cat filename.txt | less.
El uso de tuberias (|) y del comando less juntos, le permite visualizar el archivo pgina a pgina.
Luego puede usar las flechas para pasar de una pgina a otra.
Uso de redireccionamiento
El redireccionamiento significa hacer que la shell cambie lo que est considerado como entrada
estndar o el lugar donde va a parar la salida estndar.
Para redireccionar la salida estndar, usaremos el smbolo >. Al colocar > tras el comando cat (o
tras cualquier utilidad o aplicacin que escriba la salida estndar) reorientar su salida al nombre
de archivo que siga al smbolo.
Por ejemplo, solamente con el uso de cat puede ver en la pantalla lo que introdujo como si se
repitiera la lnea que acaba de introducir. El siguiente ejemplo de cat lo muestra:
[root @CEPS root]$ cat descansar
comer
leer
comer
comer
leer
nadar
nadar
descansar
descansar
[root @CEPS root]$
Para redirigir la salida cat a un archivo, escriba lo siguiente en el intrprete de comandos (si
presiona la tecla [Intro] lo llevar a la siguiente lnea en blanco):
cat > descansar
Ha observado la diferencia?. Para una cosa, no existen entradas dobles. Esto se debe a que la
salida estndar desde cat, ha sido redireccionada. Esta redireccin era de un archivo nuevo que ya
haba creado, llamado descansar.
39
Puede encontrar el archivo en el directorio en el que estaba cuando empez cat (teclee ls si lo
quiere ver listado).
Como vi anteriormente, puede usar cat para leer el archivo, al escribir:
cat descansar
Atencin
40
41
Tuberias y paginadores
En el mundo Linux, las tuberias (tambin conocidas como pipes) relacionan la salida estndar de
un comando con la entrada estndar de otro comando.
Considere el comando ls discutido anteriormente. Existen varias opciones disponibles con el
comando ls, pero qu pasa si la visualizacin del contenido de un directorio es demasiado rpida
como para verla?
Vamos a ver el contenido del directorio /etc/ con el comando:
ls -al /etc
Cmo podemos visualizar tranquilamente la salida antes de que desaparezca de la pantalla?
Una forma es entubando la salida a una utilidad llamada less, un paginador que permite ver la
informacin por pginas (en la pantalla).
Use la barra vertical (|) para entubar comandos.
ls -al /etc | less
De esta manera ver el contenido de /etc en una pantalla a la vez. Para acceder a la pantalla
siguiente, pulse [Barra espaciadora]; para volver a la pantalla anterior, pulse [B]; para salir, presione
[Q]. Tambin puede usar las flechas direccionales para navegar con less.
Para buscar palabras dentro de un archivo de texto usando less, presione [/] y luego escriba la
palabra que quiere buscar. Por ejemplo:
/Linux
Sugerencia
Para leer los mensajes de arranque con ms detenimiento, en el intrprete de comandos de
la shell, teclee dmesg | less. Ser capaz de leer el archivo en una pantalla a la vez. Para
moverse en el archivo, use las teclas con las flechas; para buscar por una salida particular en
el archivo, presione [/] y luego la cadena a buscar.
Las tuberias tambin se pueden usar para imprimir solamente determinadas lneas de un archivo.
Teclee lo siguiente:
grep coffee descansar | lpr
Este comando imprime cada lnea en el archivo descansar que menciona la palabra "coffee".
El comando more
La diferencia principal entre more y less es que less le permite ir hacia adelante y hacia atrs en un
archivo usando las flechas direccionales, mientras que more realiza la navegacin usando la [Barra
espaciadora] y la tecla [B].
42
4096
4096
15228
2562
46
4096
1343
2288
oct
oct
ene
ene
oct
oct
feb
oct
7 18:21 .
7 16:53 ..
24 2003 a2ps.cfg
24 2003 a2ps-site.cfg
7 16:50 adjtime
2 14:02 alchemist
24 2003 aliases
7 16:54 aliases.db
Para buscar ciertas palabras dentro de un archivo de texto usando more, presione [/] y luego
escriba la palabra que desea encontrar en el archivo. Por ejemplo:
/foo
Use la [Barra espaciadora] para pasar de una pgina a otra. Pulse [q] para salir.
Comandos bsicos adicionales para la lectura de archivos de texto
Ya conoce algunos comandos bsicos del intrprete de comandos de la shell para la lectura de
archivos por los editores de texto. Aqu tiene algunos ms.
El comando head
Puede utilizar el comando head en caso de que desee ir al inicio de un archivo. El comando es:
head <filename>
head puede ser muy til, pero como est limitado a las primeras lneas, no podr ver el largo del
archivo. Por defecto, slo puede leer las primeras diez lneas de un archivo, aunque puede cambiar
este nmero especificndolo, como en el comando a continuacin:
head -20 <filename>
El comando tail
El contrario de head es tail. Usando tail, puede volver a ver las diez ltimas lneas de un archivo.
Esto puede ser muy til para ver las ltimas lneas de un archivo de registro y as ver los mensajes
importantes del sistema. Tambin puede usar tail para vigilar cmo se actualizan los archivos de
registro (log). Usando la opcin -f, tail imprimir automaticamente los nuevos mensajes desde un
archivo abierto a la pantalla en tiempo real. Por ejemplo, para vigilar activamente
/var/log/messages, escriba lo siguiente en el intrprete de comandos shell como usuario root:
tail -f /var/log/messages
43
El comando grep
El comando grep es til para encontrar una cadena de caracteres especfica en un archivo. Por
ejemplo, si quiere encontrar cada referencia que se haya hecho a "coffee" en el archivo descansar,
debera escribir:
grep coffee descansar
Ver cada una de las lneas donde aparece la palabra "coffee".
Sugerencia
A menos que se especifique lo contrario, las bsquedas de grep son sensibles a maysculas
y minsculas. Lo cual significa que Coffee no es lo mismo que coffee. Entre las opciones de
grep est -i, que le permite hacer una bsqueda insensible a maysculas y minsculas a
travs de un archivo. Lea la pgina de manual grep ms informacin sobre este comando.
Redireccionamiento de E/S y tuberas
Puede usar el redireccionamiento de la salida y tuberas cuando desee guardar y/o imprimir la
informacin para leerla despus.
Por ejemplo, puede usar grep para buscar contenidos especficos de un archivo y posteriormente
guardar estos resultados como un archivo o imprimirlos.
Para imprimir la informacin sobre todas las referencias a "coffee" en descansar, escriba:
grep coffee descansar | lpr
Comodines y expresiones regulares
Qu sucede si olvida el nombre de un archivo que est buscando? Mediante el uso de caracteres
de sustitucin o expresiones regulares, puede ejecutar acciones en un archivo o archivos sin saber
el nombre de archivo completo. Rellene lo que sabe y sustituya lo restante con un comodn. Los
comodines son smbolos especiales que puede usar para sustituir letras, nmeros y smbolos lo
que permite encontrar directorios y archivos ms fcil que leer listados largos para encontrar lo que
est buscando.
Sugerencia
Para obtener ms informacin sobre comodines y expresiones regulares, vea la pgina de
manual de bash (man bash). Recuerde que puede guardar el archivo como archivo de texto,
tecleando man bash | col -b > bash.txt. Luego, podr abrir y leer el archivo con less o vi (vi
bash.txt). Si desea imprimir el archivo, sepa que es bastante largo.
Sabemos que el archivo se llama "des____," teclee:
ls des*
44
45
.tar archivo guardado con tar (iniciales de tape archive), tambin conocido como archivo
tar
46
Formatos de archivos
.pdf imagen electrnica de un documento; PDF son las siglas de Portable Document
Format
.rpm archivo del gestor de paquetes de Red Hat que se usa para instalar soft
47
1 sam
sam
Copiar archivos
Como otras tantas caractersticas de Linux, hay una variedad de opciones a la hora de manipular
archivos y directorios. Tambin puede usar comodines para hacer los procesos de copiar, mover o
borrar mltiples archivos y directorios ms rpido.
48
Ahora que ya tiene un archivo serpienets.txt en el directorio tigres, use el comando cp -i para copiar
el archivo otra vez a la misma ubicacin.
cp -i serpientes.txt tigres
cp: overwrite 'tigres/serpientes.txt'?
Para sobreescribir el archivo ya existente, pulse [Y] y a continuacin [Intro]. Si no quiere
sobreescribir el archivo, presione [N] y despus [Intro].
Mover archivos
Para mover archivos use el comando mv. Para ms informacin sobre mv, vea la pgina del
manual de mv (escriba man mv).
Las opciones comunes para mv incluyen:
49
Si quiere desplazar un archivo fuera de un directorio principal a otro directorio, escriba lo siguiente
(debe estar en su directorio principal):
mv pepe.txt jose/
Alternativamente, el mismo comando usando nombres de ruta absolutos se parece a
mv pepe.txt /home/jose/
-i interactivo. Le pide confirmar la eliminacin del archivo. Esta opcin le previene borrar
archivos por equivocacin.
-f forzar. Sobreeescribe el modo interactivo y elimina los archivos sin notificar. Puede
que no sea una buena idea, a menos que sepa exactamente lo que est haciendo.
50
El comando anterior suprimir todos los archivos en el directorio que comienzan con las letras tex.
Tambin puede eliminar mltiples archivos usando el comando rm. Por ejemplo:
rm texto.txt asunto.txt
Puede usar rmdir para eliminar un directorio (rmdir foo, por ejemplo), pero slo si el directorio est
vaco. Para eliminar directorios con rm, debe especificar la opcin -r.
Por ejemplo, si desea suprimir recursivamente el directorio tigres debera escribir:
rm -r tigres
Si quiere puede tambin combinar opciones, tal como forzar un borrado recursivo, necesita escribir:
rm -rf tigres
Una alternativa ms segura que rm para eliminar directorios es usando el comando rmdir. Con este
comando, no se permite el borrado recursivo, por lo tanto un directorio con archivos no ser
borrado.
Aviso
El comando rm puede borrar su sistema de archivos completo, as que tenga mucho
cuidado!. Si est registrado como usuario root y escribe el comando rm -rf /, est en
problemas; este comando borrar recursivamente todo lo que se encuentra en su sistema.
Aadir un usuario
Para aadir un usuario al sistema:
51
Opcin
Descripcin
-c comentario
-d home-dir
-e fecha
-f das
-g nombredegrupo
-G listadegrupo
-m
-M
-n
-r
Crea una cuenta de sistema con un UID menor que 500 y dentro del
directorio principal.
-p contrasea
-s
-u uid
Aadir un grupo
Para agregar un grupo al sistema, use el comando groupadd:
groupadd <nombredegrupo>
Las opciones de lnea de comando para groupadd estn en la siguiente tabla:
Opcin
Descripcin
-g gid
-r
-f
52
Opcin
Descripcin
especifica -g y -f, pero el grupo ya existe, la opcin -g es ignorada.
Vencimiento de la contrasea
Si las contrasea dentro de la organizacin son creadas centralmente por el administrador, al
agregar nuevos usuarios significa que el administrador debe configurar la cuenta del usuario de
manera que cuando el usuario se conecte por primera vez, el sistema le pedir que cree una
contrasea. Esto se puede hacer cuando se aade o modifica un usuario en la pestaa
Informacin de contrasea del Administrador de usuarios.
Para configurar el vencimiento de la contrasea para un usuario desde el intrprete de comandos,
use el comando chage, seguido de una opcin desde la siguiente tabla, seguido por el
'nombredeusuario' del usuario.
Importante
La contrasea oculta debe estar activada para poder usar el comando chage.
Opcin
Descripcin
-m das
-M das
-d das
-I das
-E fecha
-W das
Sugerencia
Si el comando chage est seguido directamente por un nombre de usuario (sin opciones), se
53
o
o
54
usermod -p "contrasea-encriptada"
nombredeusuario
6. En vez de asignar una contrasea inicial, se puede asignar una contrasea nula con el
comando:
usermod -p "" username
Atencin
A pesar de que el uso de una contrasea nula es conveniente tanto para el
administrador como para el usuario, existe el pequeo riesgo de que un tercero se
conecte primero y accese el sistema. Para minimizar esta amenaza, se recomienda
que los administradores verifiquen que el usuario est listo para conectarse cuando
desbloqueen la cuenta.
8. En cualquier caso, luego de la conexin inicial, se le pedir al usuario una nueva
contrasea.
55
56
Propiedades y permisos
Al principio de este captulo ha recibido el siguiente mensaje, cuando intent cambiarse al
directorio login de root:
cd /root
bash: /root: Permission denied
Esto es un ejemplo de las caractersticas de seguridad de Linux. Linux, como UNIX, es un sistema
multiusuario y los permisos para tener acceso a los archivos presentan una solucin para proteger
la integridad del sistema de cualquier dao.
Una manera de tener acceso cuando se le deniega el permiso es ejecutando su a root, como vi
anteriormente. Esto es porque quien conoce la contrasea de root tiene acceso completo al
sistema.
Pero cambindose al superusuario no siempre es lo ms conveniente o recomendado, pues es
posible cometer errores y alterar archivos de configuracin importantes como superusuario.
57
Todos los archivos y los directorios pertenecen a la persona que los ha creado. Hemos creado el
archivo serpientes.txt en su directorio login, por ello serpientes.txt le pertenece.
Esto quiere decir que podemos especificar quin puede leer o escribir un archivo. Adems en el
caso de que un archivo sea ejecutable es posible especificar quin tiene el derecho a ejecutarlo.
Lectura, escritura, y ejecucin son las tres configuraciones principales de permisos. Como cada
usuario del sistema est incluido en un grupo, podemos tambin especificar qu grupos pueden
leer, escribir o ejecutar un archivo.
Tome como ejemplo el archivo serpientes.txt con el comando ls utilizando la opcin l:
[pepito@CEPS pepito]$ ls -l
total 6
drwxrwxr-x 2 pepito pepito
drwxrwxr-x 2 pepito pepito
drwxrwxr-x 2 pepito pepito
drwxrwxr-x 2 pepito pepito
drwxrwxr-x 2 pepito pepito
-rw-rw-r-1 pepito pepito
[pepito@CEPS pepito]$
archivos
bin
data
docs
rpms
serpientes.txt
Hay mucha informacin aqu. Con esta opcin se visualizan muchos de los detalles. Podemos ver
quin puede leer (r) y escribir (w) el archivo, el creador del archivo (pepito) y a qu grupo de
usuarios pertenece (pepito). Recuerde que por defecto, el nombre de su grupo es el mismo que su
nombre de login.
Entre el nombre del grupo y el nombre del archivo hay informaciones relativas al tamao del
archivo, a la fecha y a la hora de creacin.
La primera columna muestra los permisos actuales; tiene diez espacios. El primer espacio
representa el tipo de archivo. Los nueve restantes son, de hecho, tres grupos de permisos de tres
categoras de usuarios diferentes.
Por ejemplo:
-rw- rw- r-Hemos separado a proasito cada grupo de permisos. Estos tres grupos se refieren
respectivamente al propietario del archivo, al grupo al que pertenece el archivo y "otros", o sea
todos los dems usuarios del sistema.
|
type
(rw-) (rw-)
|
|
owner group
El primer elemento, que especifica el tipo de archivo, puede tener uno de los siguientes valores:
d un directorio
-(dash) un archivo normal (ms que un directorio o enlace)
58
l un enlace simblico a otro programa o archivo en algn otro lugar del sistema.
Despus del primer carcter, en cada uno de los tres grupos que siguen es posible especificar uno
entre los siguientes valores:
Cuando aparece un guin en propietario, grupo u otros, quiere decir que no se ha concedido un
permiso en particular. Mire otra vez la primera columna del archivo serpientes.txt e identifique sus
permisos.
ls -l serpientes.txt
-rw-rw-r-1 pepito pepito
El propietario del archivo, (en este caso, pepito) tiene los permisos para escribir y leer el archivo. El
grupo, pepito, tiene los permisos para escribir y leer serpientes.txt. El archivo no es un programa
por lo que ni el propietario (owner) ni el group tienen permiso para ejecutarlo.
13.14.1. El comando chmod
Puede utilizar el comando chmod para cambiar los permisos en serpientes.txt.
En el archivo original estn presentes los siguientes permisos:
-rw-rw-r--
1 pepito pepito
Si es el propietario del archivo o est registrado en la cuenta de root, puede cambiar cualquier
permiso para el propietario, grupo u otros.
Por el momento, el propietario y el grupo pueden leer y escribir el archivo. Cualquiera fuera del
grupo, slo puede leer el archivo (r--).
Atencin
Recuerde que los permisos de los archivos son muy importantes para la seguridad. Cada vez
que permite a todo el mundo leer, escribir o ejecutar un archivo, est arriesgando la
integridad del sistema. Como regla general, le aconsejamos que slo otorgue permisos de
lectura y escritura a aquellos que realmente los necesiten.
59
En el siguiente ejemplo, suponga que quiere conceder a todo el mundo el permiso de escritura en
un archivo, de forma que puedan leerlo, escribir en l y grabarlo. Esto quiere decir que tendr que
cambiar la seccin "otros" en los permisos de archivos.
De un vistazo al archivo primero. En el intrprete de comandos de la shell, escriba:
ls -l serpientes.txt
El comando previo visualiza la informacin de este archivo:
-rw-rw-r--
1 pepito pepito
Teclee lo siguiente:
chmod o+w serpientes.txt
El comando o+w le dice al sistema que desea dar a "otros" el permiso para escribir en el archivo
serpientes.txt. Para controlar los resultados, puede nuevamente listar los detalles relativos al
archivo (ls l):
-rw-rw-rw-
1 pepito pepito
1 pepito pepito
Piense que estas configuraciones usando chmod, es como un tipo de taquigrafa para cambiar los
privilegios de acceso, porque todo lo que debe hacer realmente es recordar unos pocos smbolos y
letras para usar con chmod.
A continuacin tiene una lista de la taquigrafa utilizada y sus correspondencias:
Identidades
u es el usuario propietario del archivo
g es el grupo al que el usuario pertenece
o otros, el resto del mundo (ni el propietario, ni su grupo)
a todo el mundo (u, g, y o)
60
Permisos
r acceso a lectura
w acceso a escritura
x acceso de ejecucin
Acciones
+ aadir los permisos
- elimina los permisos
= hace que sea el nico permiso
Quiere comprobar sus habilidades de permisos? Suprima todos los permisos de serpientes.txt
para todo el mundo.
chmod a-rwx serpientes.txt
Ahora vea si puede leer el archivo con el comando cat serpientes.txt, que debera devolver lo
siguiente:
cat: serpientes.txt: Permission denied
Funciona! al remover todos los permisos, incluyendo los suyos, ha bloqueado el archivo. No
obstante, como el archivo le pertenece, siempre puede cambiar sus permisos con el comando
siguiente:
chmod u+rw serpientes.txt
Use el comando cat serpientes.txt para verificar que usted como propietario del archivo, lo puede
leer otra vez.
He aqu algunos ejemplos comunes de configuracin que se pueden realizar con chmod:
Aadiendo la opcin -R puede cambiar los permisos para el rbol entero del directorio donde se
encuentra.
61
De todas formas puesto que no podemos "ejecutar" un directorio como si fuera una aplicacin;
cuando aada o elimine los permisos de ejecucin para un directorio, estar concediendo (o
denegando) los permisos de bsqueda en el interior de este directorio
Si no le permite a otros tener permiso de ejecucin sobre data, no importa quin tenga permiso de
lectura o escritura. Nadie podr acceder el directorio a menos que conozca exactamente el nombre
del archivo.
Por ejemplo, escriba:
chmod a-x data
para quitarle a todos los permisos de ejecucin.
Esto es lo que ocurre cuando intenta de ejecutar cd en data:
bash: data: Permission denied
Luego, restaure su propio acceso y el del grupo:
chmod ug+x data
Ahora, si verifica su trabajo usando ls -l ver que solamente otros tendrn el acceso denegado para
el directorio data.
1 pepito pepito
Cada configuracin del permiso puede estar representada por un valor numrico:
r=4
w=2
x=1
-=0
Si se suman estos valores, el resultado se utiliza para especificar los permisos. Por ejemplo, si
quiere leer y escribir permisos, tendr un valor de 6; 4 (leer)+ 2 (escribir)= 6.
Para el archivo serpientes.txt, aqu tiene un ejemplo de los permisos codificados en nmeros:
- (rw-) (rw-) (r--)
62
|
|
|
4+2+0 4+2+0 4+0+0
El total para los usuarios es seis, el total para los grupos es seis y el total para para los dems es
cuatro. El cdigo de permisos ser 664.
Si quiere cambiar el archivo serpientes.txt para que aquellos en su grupo no tengan acceso a
escritura, pero si lo puedan leer, quite el acceso eliminando dos (2) de ese grupo de nmeros.
Los valores numricos sern seis, cuatro y cuatro (644).
Para llevar a cabo los nuevos valores, escriba:
chmod 644 serpientes.txt
Para controlar los cambios, teclee:
ls -l serpientes.txt
El resultado debera ser:
-rw-r--r--
1 pepito pepito
Ningn usuario, a parte del propietario, puede escribir el archivo (ni el grupo ni otros) serpientes.txt.
Para reestablecer los derechos de escritura del grupo en el archivo, puede aadir el valor de w (2)
al segundo grupo de permisos.
chmod 664 serpientes.txt
Aviso
Los permisos a 666 (cualquiera puede leer o escribir) o 777 (cualquiera puede leer, escribir y
ejecutar) dan la posibilidad a todos de leer o escribir un archivo o un directorio. Estos
permisos pueden daar los archivos, por ello utilizarlos no es buena eleccin.
Aqu tiene una lista de algunos valores numricos y de los significados relativos:
-rwx------ (700) Slo el propietario tiene los derechos de leer, escribir y ejecutar el
archivo.
-rwxr-xr-x (755) El propietario tiene los derechos de leer, escribir y ejecutar; el grupo y
los dems slo pueden leer y ejecutar.
63
-rw-rw-rw- (666) Todo el mundo puede leer y escribir en el archivo. No es una buena
eleccin!
-rwxrwxrwx (777) Todo el mundo puede leer, escribir y ejecutar. Otra mala eleccin!
entonces:
666
640
---------026
17:29
documento
Observe la columna de permisos. Coincide con los valores deseados (rw- r-- ---)
64
Administracin de paquetes
Todo el software en un sistema Red Hat Linux est dividido en paquetes RPM los cuales pueden
ser instalados, actualizados o eliminados. Esta parte describe como manejar los paquetes RPM en
un sistema Red Hat Linux usando herramientas grficas y de lnea de comandos.
65
Consultas poderosas
RPM fue ideado para proporcionar opciones de consulta poderosas. Se pueden efectuar
bsquedas por toda su base de datos para encontrar un paquete o slo algn archivo.
Tambin es posible averiguar a cul paquete pertenece un determinado archivo y de dnde
proviene el paquete. Los archivos contenidos en el paquete RPM estn en un archivo
comprimido, con un encabezado binario personalizado que contiene informacin til sobre
el paquete y su contenido, permitindole consultar paquetes individuales rpida y
sencillamente.
Verificacin de sistema
Otra caracterstica poderosa es la de verificar paquetes. Si est preocupado porque borr
un archivo importante para algn paquete, verifique el paquete. Se le notificar si hay
anomalas. En este punto, puede reinstalar el paquete si es necesario. Cualquier archivo
de configuracin que haya modificado ser preservado durante la reinstalacin.
Fuentes originarias
Un objetivo crucial ha sido el de permitir el uso de fuentes de software originario, tal y como
ha sido distribuido por los autores originales del software. Con RPM tendr las fuentes
originarias junto con cualquier parche que haya sido usado adems de las instrucciones de
construccin completas. Esta es una ventaja importante por varios motivos. Si por ejemplo
sale una versin nueva de un programa, no necesariamente necesita empezar desde cero
para que se compile. Puede revisar el parche para ver lo que tal vez necesitara hacer.
Usando esta tcnica se ven fcilmente todos los elementos predeterminados y compilados
en el programa y todos los cambios que se le han hecho al software para construir
adecuadamente.
El objetivo de mantener las fuentes originarias podra parecer importante slo para los
desarrolladores, pero el resultado tambin sera software de ms alta calidad para los
usuarios finales. Quisiramos dar las gracias a la gente de distribucin de BOGUS por
haber ideado el concepto de la fuente originaria.
El uso de RPM
RPM tiene cinco modos de operacin bsicos (sin contar la construccin de paquetes): instalacin,
desinstalacin, actualizacin, consulta y verificacin. Esta seccin contiene una visin de conjunto
de cada modo. Para obtener detalles y opciones lance el comando rpm --help.
Encontrar paquetes RPM
Antes de usar un RPM debe saber dnde encontrarlo. Con una bsqueda en Internet obtendr
varios depsitos de RPM, pero si est buscando paquetes RPM construidos por Red Hat, se
pueden encontrar en los siguientes sitios:
66
Instalacin de RPM
Los paquetes RPM normalmente tienen nombres de archivo como foo-1.0-1.i386.rpm. El nombre
de archivo incluye el nombre de paquete (foo), versin (1.0), lanzamiento (1) y arquitectura (i386).
La instalacin de un paquete es tan simple como teclear el siguiente comando en el intrprete de
comandos de shell:
rpm -Uvh foo-1.0-1.i386.rpm
Si la instalacin es correcta ver lo siguiente:
Preparing...
1:foo
########################################### [100%]
########################################### [100%]
Como podr ver, RPM imprime el nombre del paquete y luego imprime una serie de almohadillas
(#) mientras se instala el paquete como una especie de medidor de progreso.
Si empieza con la versin 4.1 del RPM, la firma del paquete se autentica en el momento de la
instalacin o de la actualizacin del paquete. Si la verificacin de la firma falla, ver el siguiente
mensaje de error:
error: V3 DSA signature: BAD, key ID 0352860f
Si se trata de una nueva firma en el cabezal, ver el siguiente error:
error: Header V3 DSA signature: BAD, key ID 0352860f
Si no tiene instalada la clave apropiada para verificar la firma, el mensaje dir NOKEY y ser como
lo siguiente:
warning: V3 DSA signature: NOKEY, key ID 0352860f
Para mayor informacin sobre la verificacin de la firma del paquete, consulte la correspondiente.
Nota
Si est instalando un paquete del kernel, use el comando rpm -ivh.
La instalacin de paquetes est ideada para ser sencilla, pero de vez en cuando podra haber
errores.
Paquete ya instalado
Si ya est instalado un paquete de la misma versin, ver:
67
Preparing...
########################################### [100%]
package foo-1.0-1 is already installed
Si desea instalar el paquete de todos modos y la versin que est intentando instalar ya est
instalada, podr usar la opcin --replacepkgs, la cual le dir a RPM que ignore el error:
rpm -ivh --replacepkgs foo-1.0-1.i386.rpm
Esta opcin es til si se borraron los archivos instalados del RPM o si desea que se instalen los
archivos de configuracin originales del RPM.
Archivos en conflicto
Si intenta instalar un paquete que contiene un archivo que ya ha sido instalado por otro paquete o
una versin ms antigua del mismo paquete, ver lo siguiente:
Preparing...
########################################### [100%]
file /usr/bin/foo from install of foo-1.0-1 conflicts with file from package
bar-2.0.20
Para hacer que RPM ignore este error, use la opcin --replacefiles:
rpm -ivh --replacefiles foo-1.0-1.i386.rpm
Dependencias no resueltas
Los paquetes RPM pueden "depender" de otros paquetes, lo cual significa que requieren de la
instalacin de otros paquetes para poder ejecutarse adecuadamente. Si intenta instalar un paquete
que tiene una dependencia no resuelta, ver lo siguiente:
Preparing...
########################################### [100%]
error: Failed dependencies:
bar.so.2 is needed by foo-1.0-1
Suggested resolutions:
bar-2.0.20-3.i386.rpm
Si est instalando un paquete oficial de Red Hat, se le sugerir resolver la dependencia de este
paquete. Encuentre este paquete en los CD-ROMs de Red Hat Linux o en el sitio FTP (o espejo) y
adalo al comando:
rpm -ivh foo-1.0-1.i386.rpm bar-2.0.20-3.i386.rpm
Si se realiza la instalacin correctamente, ver lo siguiente:
Preparing...
1:foo
2:bar
########################################### [100%]
########################################### [ 50%]
########################################### [100%]
68
69
almacenado su archivo original y ha instalado uno nuevo. Debera averiguar cules son las
diferencias entre los dos archivos de configuracin y resuelva el problema tan pronto como le sea
posible para asegurarse que su sistema contine funcionando correctamente.
La actualizacin es en realidad una combinacin de las actividades de desinstalacin e instalacin,
as que durante una actualizacin RPM, podr encontrar errores de desinstalacin e instalacin,
adems de cualquier otro tipo de error. Si RPM cree que usted est tratando de actualizar a un
nmero de versin de paquete ms antiguo, aparecer lo siguiente:
package foo-2.0-1 (which is newer than foo-1.0-1) is already installed
Para hacer que RPM "actualice" de todos modos, use la opcin --oldpackage:
rpm -Uvh --oldpackage foo-1.0-1.i386.rpm
Refrescamiento
Refrescar un paquete es parecido a actualizarlo. Teclee el siguiente comando en un intrprete de
comandos shell:
rpm -Fvh foo-1.2-1.i386.rpm
La opcin de refrescamiento RPM compara las versiones de los paquetes especificados en la lnea
de comandos con las versiones de los paquetes que ya han sido instalados en su sistema. Cuando
la opcin de refrescamiento de RPM elabora una versin ms reciente de un paquete ya instalado,
ste ser actualizado a la versin ms reciente. Sin embargo, la opcin de refrescamiento de RPM
no instalar un paquete si no existe un paquete previamente instalado del mismo nombre. Esto no
es igual a la opcin de actualizacin de RPM, ya que una actualizacin s instalar paquetes, no
importa si ya est instalada una versin ms antigua de un paquete.
La opcin de refrescamiento de RPM funciona ya sea para paquetes individuales que para un
grupo de paquetes. Si usted acaba de descargar una gran cantidad de paquetes diferentes y slo
desea actualizar los paquetes que ya estaban instalados en su sistema, la solucin es el
refrescamiento. Si utiliza la opcin de refrescamiento, antes de usar RPM no tendr que eliminar
ningn paquete indeseado del grupo que ha descargado.
En este caso, puede ejecutar el comando siguiente:
rpm -Fvh *.rpm
RPM actualizar automticamente slo los paquetes que ya estn instalados.
Consultas
Use el comando rpm -q para hacer consultas a la base de datos de los paquetes instalados. El
comando rpm -q foo imprimir el nombre de paquete, versin y nmero de lanzamiento del paquete
foo instalado:
70
foo-2.0-1
Nota
Observe que hemos utilizado el nombre foo del paquete. Al hacer una consulta sobre un
paquete, necesitar sustituir foo con el verdadero nombre del paquete.
En vez de especificar el nombre del paquete, se pueden usar las siguientes opciones con -q para
especificar lo(s) paquete(s) que desea consultar. Se llaman Opciones de especificacin de
paquetes.
Hay varias maneras de especificar qu informacin mostrar sobre los paquetes consultados. Las
siguientes opciones sirven para seleccionar el tipo de informacin que usted est buscando. Se
llaman Opciones de seleccin de informacin.
-c muestra una lista de archivos marcados como archivos de configuracin. Estos son los
archivos que usted cambia despus de la instalacin para adaptar el paquete a su sistema
(como sendmail.cf, passwd, inittab, etc.).
Para acceder a opciones que muestran listas de archivos, puede aadir -v al comando para que
muestre las listas en un formato ls -l conocido.
Verificacin
La verificacin de un paquete tiene que ver con comparar la informacin sobre archivos instalados
de un paquete con la misma informacin del paquete original. Entre otras cosas, la verificacin
compara el tamao, la suma MD5, los permisos, el tipo, el dueo y el grupo de cada archivo.
El comando rpm -V verifica un paquete. Usted puede utilizar cualquiera de las Opciones de
seleccin de paquete de la lista para pedir que se especifiquen los paquetes que desea verificar.
Un modo sencillo de verificar es rpm -V foo, que verifica si todos los archivos en el paquete foo se
encuentran en el mismo estado en que estaban cuando originalmente fueron instalados. Por
ejemplo:
71
rpm -Va
Para verificar un paquete instalado contra un archivo de paquete RPM
L enlace simblico
D dispositivo
U usuario
G grupo
Si ve alguna salida, use su buen juicio para determinar si debera quitar o reinstalar el paquete o
resolver el problema de otra manera.
72
Por otra parte, cunto es de fiable el desarrollador que cre el paquete? Si el paquete est
firmado con la clave GnuPG del desarrollador, sabr que el desarrollador de verdad es quien dice
ser.
Se puede firmar un paquete RPM usando la Gnu Privacy Guard (o GnuPG), para ayudarle a
asegurarse que el paquete descargado es de fiar.
GnuPG es una herramienta para comunicacin segura; reemplaza completa y gratuitamente la
tecnologa de encriptacin de PGP, un programa electrnico de privacidad. Con GnuPG usted
puede autentificar la validez de los documentos y encriptar/descifrar datos de y hacia otros
destinatarios. Adems, GnuPG es capaz de descifrar y verificar archivos PGP 5.x.
Durante la instalacin de Red Hat Linux, GnuPG est instalado por defecto. De este modo podr
usar inmediatamente GnuPG para verificar cualquier paquete que reciba desde Red Hat. En primer
lugar necesitar importar la clave pblica privada de Red Hat.
Importar claves
Para verificar los paquetes de Red Hat tiene que importar las claves de GPG de Red Hat. Para ello,
ejecute el siguiente comando en el intrprete de comandos de la shell:
rpm --import /usr/share/rhn/RPM-GPG-KEY
Para ver la lista de todas las claves instaladas para la verificacin de RPM, ejecute el comando:
rpm -qa gpg-pubkey*
Para la clave de Red Hat, la salida incluye:
gpg-pubkey-db42a60e-37ea5438
Para mostrar ms detalles sobre una clave determinada, use rpm -qi seguido de la salida del
anterior comando:
rpm -qi gpg-pubkey-db42a60e-37ea5438
73
Tal vez usted haya borrado algunos archivos accidentalmente, pero no est seguro de lo
que ha eliminado. Si desea verificar su sistema entero y ver lo que podra hacer falta,
podra intentarlo con el siguiente comando:
rpm -Va
Si faltan algunos archivos o parecen daados, probablemente debera o reinstalar el
paquete o desinstalarlo y luego reinstalarlo.
Tal vez alguna vez ver un archivo que no reconoce. Para saber a qu paquete pertenece,
tecleara:
rpm -qf /usr/X11R6/bin/ghostview
La salida es parecida a lo siguiente:
gv-3.5.8-22
Podemos combinar los dos ejemplos de arriba en la siguiente hiptesis. Digamos que est
teniendo problemas con /usr/bin/paste. Le gustara verificar el paquete al cual pertenece
ese programa, pero no sabe a cul paquete pertenece paste. Simplemente teclee el
siguiente comando:
rpm -Vf /usr/bin/paste
y se verificar el paquete correcto.
Desea encontrar ms informacin sobre un determinado programa? Puede intentar el
siguiente comando para localizar la documentacin que acompaaba el paquete al cual
pertenece ese programa:
rpm -qdf /usr/bin/free
La salida debera ser parecida a la siguiente:
/usr/share/doc/procps-2.0.11/BUGS
/usr/share/doc/procps-2.0.11/NEWS
/usr/share/doc/procps-2.0.11/TODO
/usr/share/man/man1/free.1.gz
/usr/share/man/man1/oldps.1.gz
/usr/share/man/man1/pgrep.1.gz
/usr/share/man/man1/pkill.1.gz
/usr/share/man/man1/ps.1.gz
/usr/share/man/man1/skill.1.gz
/usr/share/man/man1/snice.1.gz
74
/usr/share/man/man1/tload.1.gz
/usr/share/man/man1/top.1.gz
/usr/share/man/man1/uptime.1.gz
/usr/share/man/man1/w.1.gz
/usr/share/man/man1/watch.1.gz
/usr/share/man/man5/sysctl.conf.5.gz
/usr/share/man/man8/sysctl.8.gz
/usr/share/man/man8/vmstat.8.gz
Podra encontrar un RPM nuevo y no saber para qu sirve. Para encontrar informacin
sobre l, use el siguiente comando:
rpm -qip crontabs-1.10-5.noarch.rpm
La salida es parecida a lo siguiente:
Name : crontabs Relocations: (not relocateable) Version : 1.10 Vendor: Red Hat, Inc.
Release : 5 Build Date: Fri 07 Feb 2003 04:07:32 PM EST Install date: (not installed) Build
Host: porky.devel.redhat.com Group : System Environment/Base Source RPM: crontabs1.10-5.src.rpm Size : 1004 License: Public Domain Signature : DSA/SHA1, Tue 11 Feb
2003 01:46:46 PM EST, Key ID fd372689897da07a Packager : Red Hat, Inc.
<http://bugzilla.redhat.com/bugzilla> Summary : Root crontab files used to schedule the
execution of programs. Description :The crontabs package contains root crontab files.
Crontab is the program used to install, uninstall, or list the tables used to drive the cron
daemon. The cron daemon checks the crontab files to see when particular commands are
scheduled to be executed. If commands are scheduled, then it executes them.
Quizs desea ver qu archivos instala el RPM crontabs. Ingrese lo siguiente:
Estos son solamente algunos ejemplos. Al usarlo, descubrir muchos ms usos para RPM
PERMISOS ESPECIALES
75
Significado
Sin permisos especiales (pretederminado)
Activar el bit de persistencia (t)
Activar el bit suid de grupo (s)
Activar el bit suid de grupo y el de persistencia
Activar el bit suid de propietario
Activar el bit suid de propietario y el de persistencia
Activar el bit suid de propietario y el de grupo
Activar el bit suid de propietario, de grupo y el de persistencia
76
77
Consejo
El comando chown se puede utilizar para modificar tanto el indicador de propietario como el
indicador de grupo, especificando ambos y separndolos con uno o dos puntos:
chown pepito.ing /tmp/archivo-de-prueba
Xlib proporciona servicios bsicos como crear ventanas, primitivas de dibujo como
lneas, crculos, arcos, rectngulos, etc., as como el control de dispositivos
(teclado y ratn) y comunicacin entre diferentes programas. Los Toolkit son
servicios ms avanzados basados en el modelo de programacin orientada a
objetos. Estas bibliotecas permiten la creacin de ventanas de diferentes tipos:
ventanas de dibujo, ventanas de men desplegables, de men de botones, etc.
Tambin permiten dotar a las ventanas de una decoracin con objeto de poder
manipularlas ms cmodamente.
La figura muestra como es la estructura del sistema X Window. En la parte ms
superior se encuentra la aplicacin, la cual puede hacer uso de todos los servicios
X Window, los cuales a su vez pueden apoyarse en los servicios de red.
Clientes y servidores X
X Display Manager (XDM)
79
80
Desde la maquina con Windows XP, abra una conexin telnet o ssh utilizando el
cliente putty hacia la mquina Linux. Debe tener una cuenta de usuario registrada
en dicha mquina. Luego, utilizando la variable de entorno DISPLAY, exporte la
pantalla del cliente Linux hacia la mquina que ejecute el servidor MIX. Para lo
cual, una vez en el shell de Linux, ejecute lo siguiente:
export DISPLAY=[valor de la IP de la mquina Win XP]:0.0
si la mquina tuviera ip=192.168.1.1, entonces el comando sera:
export DISPLAY=192.168.1.1:0.0
De esta manera, la salida grafica se enva a la mquina Win XP y no se ejecuta en
forma local.
Una vez ejecutado esto, instale el software en la mquina Win XP, nos referimos al
programa MIX. Una vez instalado, ejecutelo y vera una pantalla similar a la
siguiente:
81
82
Note como se observa claramente el boton de inicio de Windows XP; sin embargo
la pantalla mostrada es el escritorio de Linux, y encima de el, el navegador
mozilla. Esto se muestra como si usted estuviera sentado al frente de la
mquina Linux. Esto es un escritorio remoto.
83
84
86
87
Nota
Si se tiene suficiente espacio en disco, es til guardar el rbol de archivos d
cdigo fuente para las distribuciones tar generadas por autoconf. Si se dirige
al directorio de archivos de cdigo fuente y escribe make uninstall, se puede
normalmente eliminar el paquete del sistema sin dejar huella. Para guardar el
rbol pero ahorrando mucho espacio en disco, se puede ejecutar make clean.
Esto borrar los archivos del rbol que haya instalado en otro lugar de su
sistema, y borrar tambin varios archivos derivados.
COMPATIBILIDAD ENTRE BIBLIOTECAS
Esta seccin, aclara la forma de resolver el problema de incompatibilidad entre los
programas y las bibliotecas compartidas que hay instaladas en su sistema.
La mayor parte del software que se instala en el sistema hace uso de bibliotecas
compartidas. Estas bibliotecas son archivos con subrutinas compartidas y
funciones que los programas usan para realizar sus operaciones. Cuando un
programa se compila para usar bibliotecas compartidas, como ocurre casi
siempre, el montador graba la informacin del nmero de versin de la biblioteca
compartida con la que el programa necesita ejecutarse.
Algunas veces se encontrar software que se compil para versiones de
bibliotecas compartidas diferentes a las que tiene en su sistema. Por fortuna, hay
formas sencillas de tratar este problema.
Como se asignan nmeros de versin las bibliotecas compartidas
Primero, necesita conocer cmo se determinan las versiones de las bibliotecas
compartidas, y como se expresan en el sistema de archivos.
Los nmeros de versin de las bibliotecas, ofrecen al menos dos y algunas veces
tres niveles de nmeros de versin. Por ejemplo, una instancia de la biblioteca
compartida libc tiene el nmero de versin 5.4.38. La versin principal de software
es la que ms cuenta respecto a la compatibilidad de software. Si mira en los
directorios /lib/gnulibc1 y /lib, se dar cuenta de que libc.so.5 es un enlace
simblico (una referencia) a libc.so.5.4.46, y que libc.so.6 es un enlace simblico a
libc-2.1.1.so, que es la principal biblioteca compartida C de su sistema. Esta
biblioteca es por s misma la ms importante y la ms ampliamente usada en su
sistema.
El sistema de bibliotecas compartidas se mantiene con ldconfig. Cada vez que se
instala una biblioteca compartida en su sistema, ldconfig se ejecuta y se aade
una nueva entrada al archivo /etc/ld.so.cache. entonces se crea un enlace
88
89