Sie sind auf Seite 1von 129
r ag = ag Pa, USERS Wearing vt nT Cr rp |S UE 7 Wi ww ELURC | | | = ' EVITAR BORRADOS ACCIDENTALES | CREAR 2/0 DE Wak ‘ARCHIVOS DE CONFIGURACION | DESH TSS\rc9 @ | BORRAR ARCHIVOS SEGUN UNA DETER ; PERSONALIZADOS CON LILO | HABILI UBUNTU | ESCUCHAR ARCH\Y 8223 OBS ARCHIVOS GRANDES / INSTALAF CREARsIMAGENES ISOM EQUIPO | INICIAR LINUX SIN =D480S'] CONFIGURAR IPTABLE 1 EQUIPOS CON POCOS RECUR >RGAR NUESTRA PROPIA DIS AKE | AUMENTAR LA SEGURIDAG “OBO SOBRE NETCAT |/ESCAN 7 art aa si PINGUIND! a déctor Facundo Arena Consultor de temas relativos al sistema operativo GNU/Linux y otras aplicaciones de Software Libre desde 1998. A lo largo de su carrera edité diez libros, lideré varios proyectos de desa- rrollo relacionados con el sistema y sirvié de consultor a usua- rios, empresas y organismos gubernamentales. Es el principal editor de la primera revista de GNU/Linux de Argentina (Linux USERS) y posee su propio sitio de noticias tecnolégicas en http://alternaria.blogspot.com. Allf publica semanalmente un podcast y un programa de TV por Internet sobre tecnologia y vida digital. ‘Ademds, es director de su propio centro de capacitacién en tec- nologlas de Software Libre (Linux A Distancia) y ha dictado de- cenas de cursos y seminarios en diferentes puntos del pais. En su tiempo libre gusta de la investigacién de las tecnologfas alternativas, como el sistema operative Mac OS X y las com- putadoras Atari. ‘ ‘Aparte de las computadoras, tiene otras pasiones como la mtisica (es autor de un libro de produccién musical publicado por esta misma editorial), el Karate-DO y otros deportes. Puede ser contac- tado en su direccién de correo electrénico, hfarena@gmail.com. Agradecimientos y dedicatoria A todos los colaboradores de Ia revista Linux USERS por haber compartido sus conocimientos y ayudar a la existencia de este libro. ‘A todos los lectores que nos han enviado sus trucos. ‘A Daniel Benchimol y Diego Spaciuk por la paciencia que me han tenido durante el proceso de redaccién. ‘A mis amigos y a mi familia, por haberme soportado durante algunos meses sumido en la més aislada concentraci cionando el contenido de este libro. c- PROLOGO Hace aproximadamente siete afios que trabajo en la gencracidn y seleccién di contenidos (notas para revistas, libros, sitios web) relacionados con GNU/Linuy y su conjunto de herramientas de software libre. Un dia me di cuenta de que te nfa un montén de material interesante y se me ocurtié la idea de hacer una re copilacién de todo ese material Cuando mi editor me propuso escribir un libre de trucos y soluciones para los usuarios de Linux, consideré que ésa era una grat oportunidad para llevar a cabo ese proyecto. Por mi trabajo como generador de contenidos y profesor en cursos, tengo una idea bastante clara de cudles son los puntos mds crfticos para los usuarios de Linux. Pre- guntas del tipo :cémo habilito la clave de root en Ubuntu2, zcémo extiendo la me. moria swap? o chay alguna forma de imprimir lo que me aparece en pantalla? Ile gan diariamente a mi casilla de correo clectrdnico, Es por es0 que en este libro in- tenté reunir las soluciones a los problemas més populares que tienen los usuarios de Linux hoy en dia. Ademés, est4 condimentado con experiencias propias, sugeren- cias y tutoriales para que los usuarios mejoren exponencialmente su experiencia de usabilidad del sistema operativo GNU/Linux. Quiero destacar que, si bien el contenido de este libro esta compuesto en gran par te por material de mi autorfa, también he seleccionado los mejores trucos y solucio- nes de los colaboradores de la revista que edito hace varios afios (Linux USERS) y de los lectores que tan gentilmente nos han enviado sus trucos. Por eso quiero agra: decet a todos los colaboradores y usuarios que en algiin momento han compartido sus soluciones y de esa forma ayudaron a dar lugar a la existencia de este libro, ;Grae cias a todos por compartir sus conocimientos! Finalmente, permitanme hacetles una recomendacién. Hay dos formas de leer este libro. En primer lugar, esté la forma tradicional, comenzando por el primer capfeu- lo y avanzando hasta el diltimo, como lo harfamos con cualquier libro convencio- nal. La segunda, es abrirlo en cualquier pdgina y ver si la solucién o el truco all ex: plicado nos resulta de utilidad. Me gusta pensar en los libros de trucos como gran- des tesoros de soluciones, y la sensacién de descubrir algo nuevo cada vez, que abro tuna pagina al azar es realmente emocionante. Ténganlo en cuenta. Héctor Facundo Arena L LIBRO DE UN VISTAZO este libro encontraremos trucos para las distintas distribuciones de Linux. Estan organizados juin el tipo de tarea que nos permiten realizar o por su utilidad especifica. En algunos casos, incluye un breve tutorial al comienzo del capitulo para que los usuarios primero se familiari- 1 con el lenguaje y luego puedan llevar a cabo los trucos. Para finalizar, veremos la forma de swencer a otros de migrar a Linux y una serie de sitios y aplicaciones recomendados. eC UCOS PARA LA CONSOLA este primer capitulo det libro scubriremos aquellas funcionalidades ultas en los comandos de la consola que 's permitiran sacarle el maximo provecho sistema operativo. Se trata de una leccién de trucos ideales para comenzar. UCOS AVANZADOS PARA LA CONSOLA te capitulo es una seleccién de trucos para consola de Linux que requieren un poco is de experiencia y atencién} por parte de usuarios, pero que resultan muy tiles. {UCOS PARA LA CONSOLA ‘L ADMINISTRADOR te capitulo incluye una seleccién de los ajores y més iitiles trucos especialmente ientados a los administradores de itemas GNU/Linux en entornos de red. !UCOS PARA KDE Y GNOME \ este capitulo encontraremos una mpleta seleccién de trucos especiales ra mejorar el aspecto visual y para timizar el rendimiento de los dos stores de escritorios més populares el mundo de GNU/Linux. ‘TRUCOS PARA LAS APLICACIONES Seleccién de trucos para sacarles el méximo provecho a las aplicaciones mas populares de Linux como Firefox, OpenOffice, Amarok, Thunderbird, etcétera. TRUCOS PARA VI Y EMACS Se trata de los dos editores de texto mas populares en el Ambito UNIX. En este capitulo incluimos dos tutoriales para aprender a utilizarlos répidamente, y una completa seleccién de trucos y sugerencias para dominar cada uno de ellos, OPTIMIZAR EL RENDIMIENTO Y LASEGURIDAD Consejos y sugerencias para optimizar et rendimiento y el funcionamiento del sistema operativo, Ademés, en este capitulo incluimos. soluciones {como un tutorial de iptables) para aumentar la seguridad det sistema, SCRIPTS EN BASH PARA AUMENTAR LA PRODUCTIVIDA Bash es el Lenguaje de scripting por excelencia, Por eso, este capitulo incluye un tutorial répido para dar nuestros primeros pasos en él y una completa seleccién de {yuicos y scripts para automatizar al maximo [ns loreas més tediosas que debemos realizar. BEY DE SCRIPTS EN PERL PERL 08 et otro lenguaje de scripting etegido por los administradores. Este capitulo incluye in lutorial de primeros pasos y una completa oleccién de sugerencias para generar Mpjores scripts de administracién, Bia 10S GONSEJOS PARA LA MIGRACION A LINUX Soloccién de consejos, trucos y soluciones piso a paso para llevar a cabo un proceso xitoso de migracién a Linux, tanto en et hogar como en la empresa. Boi i ay DISTRIBUCIONES, Como hay muchas distribuciones disponibles, fn este capitulo haremos un repaso de las Inds conocidas 0 recomendadas segiin el tipo de uso que les quiera dar el usuario. Asi, veremos distros especiales para el hogar o la oficina, para los servidores y para llevar en un CD 0 pendrive. SITIOS WEB DE INTERES: En este apéndice conoceremos las direcciones de muchos sitios recomendados para conocer mas sobre Linux y para informarse sobre las novedades de este sistema operativo, ademds de aquellos en os que podemos realizar descargas. APLICACIONES QUE NO TODOS CONOCEN Aqui veremos una serie de aplicaciones que, ‘aunque no sean muy conocidas, resultan de mucha utilidad para realizar tareas cotidianas y para simplificar aquellas que consideramos muy complojas o que pensamos que no se pueden hacer. A, TRUCOS PARA LA CONSOLA Desplazamiento por paginas en la terminal Toda la informacién que aparece en la pantalla de nuestra terminal se almacena en un buffer que se puede consultar co- mo historial en cualquier momento. Pa- ra hacerlo, se debe usar la combinacién de teclas SHIFT+AVPAG o SHIFT+RETRPAG para navegar por todas las lineas que han aparecido en la terminal como si se tratara de un archivo de texto. Luego, con tan sélo presionar la tecla ENTER, estaremos de nuevo en la I{nea de co- mandos del sistema. Evitar borrados accidentales El comando xm (borrar archivos y car- petas) cs un comando bastante insolen- te que actia por s/ solo sin pedirle con- firmacién al usuario sobre el crimen que va a cometer. Para evitar inconvenien- tes, muchos usuarios lo utilizan en con- junto con el pardmetro =i, que se encar- ga de pedir confirmacién antes de Ile- var a cabo la tarea de climinacién del ar- chivo o la carpeta en cuestién. Es posible definir que cada vez que se ingrese el comando mm en realidad se ejecute rm -i, ;Cémo se logra esto? Por medio de un alias como el siguiente: alias rm="rm -i” Este alias s6lo funcionaré mientras la se~ sién del usuario esté abierta y cuando se cierre la sesién, el alias seré eliminado. Pa- ra hacer que se cargue cada vez que inicia el sistema, sélo debemos agregar la linea al archivo .bash_profile (o .bashre) ubica- da en nuestro directorio personal. Correcci6n ortografica de archivos de texto desde la consola El mundo de los comandos de Linux no tiene limites, y una de las tantas aplica- ciones disponibles para los usuarios de este entorno operativo es el comando is- pell, que permite corregir la ortografia de los archivos de texto (Figura 2). Su for- ma de utilizacién es la siguiente: ispell -d spanish [archivo] Terminal — bash —7aa4 Figura 1. El comando alias nos permite crear nuevos nombres para los comandos Auleinids, es util la posibilidad de cam- War el pardmetro spanish por cual- iiiler otro idioma en el que se quiera Tiitegir el archivo de texto. Una vez Varpdo, se presentardn en pantalla las peiones de correccién (tal como lo Wie, por ejemplo, Microsoft Word) y $i) Alo indicar el ndimero que identi- Tea una de las palabras sugeridas po- Wiemos corregir la palabra que se en- Wientra escrita de forma incorrecta. Hontador de palabras ‘Hi archivos de texto Dio de los comandos que nos facilita la Hijo de trabajar con archivos de texto #4) |i consola es el comando we, que nos Wiveee estadisticas sobre su contenido, Veamos un ejemplo: Hithook-de-Facu:~ hfarena$ we .bash- “History 800 988 8663 .bash_history Hithook-de-Facu:~ hfarenas Contador de palabras en archivos de texto wo BUSCAR ARCHIVOS RAPIDO Muchas veces, en el uso de nuestro siste~ ma nos encontramos con la necesidad dt buscar algiin archivo alojado en un direc- torio especifico que no tenemos la mas minima idea de cual es, Para esto, el co- mando find viene a nuestra ayuda. : Utilizarlo es muy simple y sélo basta con hacerlo como enel siguiente ejemplo: ‘il find / -name “nombre” i ah EL simbolo / hace referencia al directorio inicial de ta’ busqueda, que en el caso del ejemplo es la raiz del sistema (no sélo bus cara en la raiz sino en todos los directorios alli contenidos, a forma de drboll. Finals mente, el parémetro -name nos permite definir el nombre del archivo a buscar. El primer valor que oftece correspon- dea la cantidad de Iineas que hay en el archivo de texto. El segundo valor in- dica la cantidad de palabras y final: Figura 2. En Linux contamos con ispell, una herramienta para la consola mente, el tercer valor corresponde a la cantidad de caracteres. Cémo formatear disquetes rapidamente GNU/Linux nos ofrece la facilidad de dar formato a disquetes para diferentes siste- mas operativos. Por ejemplo, para dar formato MS-DOS a un disquete (lo que nos permitird utilizarlo en un equipo con Microsoft Windows), se puede utilizar del siguiente modo el comando mformat que se encuentra en el paquete mtools (in- cluido en casi todas las distribuciones): mformat a: Formatear un disquete para ser utilizado en GNU/Linux requiere de dos pasos: faformat /dev/f40H1440 mkfs.ext2 /dev/fd0 El primer comando se encarga de for- matear el disquete A (/dev/fd0) en 1.44MB (cl tamafio estdndar). Por tlti- mo, el segundo comando se encarga de crear un sistema de archivos EXT2 (el esténdar para disquetes) en el disco re- cientemente formateado, Como matar procesos que no responden En el uso cotidiano de GNU/Linux se presenta la particularidad de tener al- giin proceso corriendo al cual necesita~ mos matar (cerrar, eliminar, etcétera). Esto se puede llevar a cabo de varias formas. En nuestro ejemplo, la aplica~ cién Mozilla esta colgada y queremos cerrarla porque no responde. Para esto procedemos de la siguiente manera: vamos a una consola y busca- ‘mos su entrada correspondiente en el registro de procesos. ingee mozilla ieee 16914 1 O DEFINIR LA REGLA EN VI Eletitor de textos Vi es muy completo, aunque @ veces su nterlaz es muy austera y no pode ‘mos obtener datos fécilmente, como el numero de linea en el que estamos trat modificar el archivo -vimre y agregar al final la linea set rule | Esto mostrara la regla la préxima vez que se abra el editor. ‘e let 4 modificar esto, s6lo debe 1) el ejemplo nos encontramos con dos Hien: tina que nos devuelve el valor de Jifoeoso con el cual esté corriendo y la Wif que nos muestra la consulta que in- jumos. Para poder cerrar Mozilla de- ct hacer uso del comando kill se- illo del niimero PID o Process Id (en wuso del ejemplo, 16914): Whilt -0 16914 Dinu opcidn es utilizar el comando ki- Wall para marar a todos los procesos que Jhgan un determinado nombi HP Weillatt mozitta Vilite una herramienta Mamada xkill {le nos permite matar una aplicacién 0 slo hacer clic sobre su ventana en ¥] modo grafico. Podemos ejecutarla dlendle cl panel de ejecucién de coman- Hoy (con la combinacién de teclas Aity?2 en KDE o GNOME). Aaa var Tae TAD USE ane) PROMI Hes sts x0°U TER Otra alternativa para buscar archivos Buscar archivos por su nombre 5 una de las tareas que con més frecuencia se lleva a cabo en un sistema Linux. Y co- mo siempre, tenemos varias opciones para hacerlo, En Linux contamos con un comando poco utilizado llamado lo: cate, que nos permite consultar en una base de datos con los nombres y las ubi- caciones de todos los archivos de nues: tro sistema. Su uso es muy simple: con solo ingresar locate y el nombre del a chivo, el sistema comenzar4 a buscar. Cuando nos registramos en una termi nal virtual de texto, un mensaje de bienvenida aparece frente a nosotros antes del login y luego, una vez que Tne CORT a0 Penner Figura 3. Top es una herramienta que nos permite monitorear el estado de los procesos desde la consola. Si presionamos la tecla K mientras estén en ejecucién, podemos eliminar un proceso determinado. nos registramos en el sistema con usua- rio y contrasefia, otro mensaje de bien- venida puede aparecer. Esto en reali- dad depende de la distribucién, ya que algunas no muestran un mensaje en absoluto. Pero las herramientas para definir estos dos comunicados estén presentes en todas las distribuciones. Ahora bien, gpara qué sirve esto? Co- mo administradores de sistemas, el mensaje que podemos definir antes del login nos serviré para brindarles co- municados colectivos a todos los 101 LA LINEA DE COMANDOS ini a Unea de comandos comp dentro Sooner apeneacemijosieeitayhn) tl simbolo | entre los dos co- iyi, HI resultado de esta operacién Jy devolucién del directorio /ust/ 901) pausas en cada pantalla, El shell ‘expresin por expresién en toda de comandos. La primera ex- in 04 cl comando Is y la segunda purdinetro /usr/doc, La tercera.ex- inv con la que se encuentra es el entre el comando Is y Wilente (more), que se encarga de ausas en la panealla. La salida del comando eat sirvid com usuarios que se conecten al sistema. Por su parte, el mensaje que podemos definir para después del login nos per- hen ejemplo para entender este limiento es el uso de los coman- Tuberias: conexion de flujos Wit y grep combinados, El comando entrada del comando grep para busca coincidencias de la palabra Other den tro de ese archivo. mitiré brindarles comunicados sélo a los usuarios que entraron correcta~ mente al sistema (Figura 4). Para ambos mensajes tenemos archivos disponibles. Para el mensaje general tendremos que editar el archivo /ete/ issue, y para el mensaje exclusivo para los usuarios tenemos a nuestra disposi- cién el archivo /ete/motd (Message of the day). Con sélo editar esos archivos con nuestro editor de texto favorito podremos modificarlos. eects i de procesos GNU/Linux provee un método muy. sofisticado para la comunicacién de da- tos entre procesos denominado pipes (tuberfas). Estas tuberias permiten to- mar la salida de un proceso y envidrse~ Jaa otro como entrada. Para entender lo mejor, veamos un ejemplo de esto en la siguiente linea: 1s /ust/doc | more Figura 4. Podemos utilizar el archivo motd para dar la bienvenida al sistema, por ejemplo, en GoboLinux. un archivo en pantalla y el winclo grep busca coincidencias entre Wis, De esta manera, si queremos va palabra Other dentro del archi- Jite/lynx.cfg, sélo habré que tipear: Como instalar paquetes RPM RPM es el formato de empaquetamier to creado por Red Hat, y actualment se utiliza en distribuciones como Fedo ra, SuSE y Mandriva, Siempre hay qu tener en cuenta lo siguiente antes de ins talar un paquete en formato RPM: * Que la distribucién que usemos ten ga soporte para ese paquete (Mar diva, Red Hat y Fedora lo tiener por ejemplo). + Que los componentes necesarios par ese programa (librerfas u otros progr: mas) estén instalados. Si no lo estar /ote/lynx.cfg | grep “Other” COMO DESINSTALAR EROGEAMAS RPM entonces deberemos empezar por ins- talar esos componentes. * Que el archivo RPM que vamos a ins- talar sea para la versin de la distribu- cidn que estamos usando. Una vez que todo esto se cumple, po- demos proceder a instalar el archivo RPM. En el modo gréfico, con tan s6- lo hacer clic sobre él, KDE nos abrird un programa de instalacién que hard todo el trabajo de manera automética, En el modo texto, podemos instalarlo con el siguiente comando: 1pm ~i archivo.rpm. Si el programa que hemos descargado viene en varios archivos RPM y estamos segutos de que en el directotio de pax quetes estd todo lo necesario para que el programa funcione, entonces podemos realizar una instalacién forzosa de to- dos los paquetes de la siguiente manera: xpm ~i —force —nodeps *.xpm Por su parte, Mandriva tiene un siste- ma llamado urpmi que permite instalar aplicaciones desde los servidores repo- sitorios de archivos muy fécilmente. Para utilizarlo, debemos configurar nuevos medios de paquetes porque por defecto el sistema sélo buscard paque- tes de aplicaciones en los CDs de I distribucién. Podemos acceder a ul listado de repositorios interactivo en sitio http://easyurpmi.zarb.org (Fi ra 8). Alli se nos consultaré por la p taforma, los tipos de paquetes q quetemos y la versién de Mandri que tenemos. Luego nos dar4 un mando para que ejecutemos en la co sola que tiene la siguiente estructura: uxpmi.addmedia [tipo_de_paquetes] [direccion_fuente] Cuando seleccionemos los tipos de p: quetes que queremos, tendremos siguientes alternativas: * Main: éstos son los paquetes oficial de la distribucién. 1 * Update (también oficiales). * Contrib: son programas no oficiales de la distribucién y que se encuen- tran allf como colaboracién. MA se conectard al servidor de 108, bajard todas las dependencias las y se encargaré de instalar el solicitado. Podemos agregar repositorios a los tres tipos de paquetes para tener més alter nativas a la hora de instalar un progra: ma si no sabemos en cul de ellos se encuentra. Luego, para instalar paque- tes de manera automdtica, usamos el comando urpmi del siguiente modo: instalar paquetes DEB ‘iy distribuciones Debian, Ubuntu y slerivados, tenemos varias herramien- ile \nstalacién de paquetes. La més le de ellas es dpkg, que se utiliza de urpmi [paquete.rpm] farchivo.deb 0 he encargaré de manera automati- le descomprimir el paquete y co- / Gada cosa a su lugar. Para desins- liv, simplemente debemos tipear: «{ nombre_paquete Figura 5. En http://easyurpml.zarb.org podemos encontrar un listado de los repositorios del sistema urpmi. Ademéas, los usuarios de Debian cuen- tan con un comando apt-get que fun- ciona de manera similar al urpmi que vimos antes. Para instalar aplicaciones se usa del siguiente modo: apt-get ins: tall [paquete]. Pero antes, siempre ¢: conveniente actualizar la base de datos de paquetes disponibles con el coman- do apt-get update. También existe una aplicacién llamada select para el modo texto que nos per- mite navegar por toda la base de aplica- ciones y seleccionar las que queramos instalar, desinstalar o actualizar (Figura 6), Lo primero que debemos hacer cuando trabajamos con paquetes en Debian y sus derivados es acceder a la opcién Ac- cess y definir las fuentes de paquetes (pueden ser los CDs de Debian, un si- tio web o servidores FTP). Luego, de- bemos seleccionar la opcién Update pa- ra descargar la lista de aplicaciones ac- tualizada y luego sf, proceder a la sec- cidn Select para seleccionar las aplica- ciones que queramos insralar. Archivos de configuracion de BASH BASH (Bourne Again $Hell) lee un ar- chivo de configuracién ubicado en el di- rectorio personal de cada usuario para ge- nerar un entorno de trabajo. ;Qué es un entorno de trabajo? Sencillo: una confi- guracién de la linea de comandos y un set de variables de entorno utiles para cho usuario, Este archivo se llama .bashre (es un archivo oculto ya que comienza con un punto) y como mencionamos an- tes estd ubicado en el directorio personal de cada usuario. Es posible editarlo con cualquier editor de textos y crear o elimi- nar configuraciones de variables de en- tomo segtin lo deseado. Para definir va- tiables de entorno nuevas, usamos: Ree Caco irene rear thn Paver leas ctl Bear rrret ete Te ore er ery Para obtener un listado completo de tos comandos presentes en la distribucl sélo tenemos que pulsar dos veces la te ‘TAB y a continuacién la letra ¥. export [nombredelavariable Como cambiar los permisos de los archivos sin recordar el significado de los bits Seguramente nos ha pasado que nos ol vidamos la forma de armar el pardmex tro de permisos del comando chmod: ae: ey Cr ect e LISTADO DE COMANDOS Existe un archivo que nos permite de nir variables de entorno validas para to: dos los usuarios de bash, cuya estructth a ¢s exactamente igual a la recién vis y se ubica en /ete/bash.bashre, rota [valor] | 00, 776 jdemasiado dificil! Aqui 04 ina forma més fécil oibilidades que tiene el usuario Who 0 cl grupo duciio de realizar dif jeclones con el archivo son tre: Wt (1), Escritura (w) y Ejecucién | Tato permisos pueden ser person: Jip para cl usuario duefio, para el W0 duefo y para los otros usuarios sitema. Para cambiar los permisos Wii archivo sin usar la nomenclatura Hits, tenemos que utilizar el coman- Himod del siguiente modo: {quien} [+/-][permiso] [usuario] Jirlmer parimetro (quien) nos permi- Wofinir a quién vamos a modificarle Jjormisos de acceso. El usuario due- Ji letra u, el grupo duefo es la le- j lov demas usuarios del sistema son Join o y todos los usuarios del sistema Witluldos el usuario duefio y el grupo iiefio) son la letra a. Luego, con los sig- Wo) + y= asignamos 0 quitamos el per- Wilio definido en el tercer pardmetro. Es Wily Importante que no haya espacios iire los parimetros. Veamos algunos Senplos para aclarar las cosas: ‘phmod u+x archivo.pl re Me ieee eee aera ieee nearer ec re es eee re ee Wnur-xr-x 2 root root 096 2007-04-02 ete es Serene ase ey ee estan are te Hrateesiar meer ate Saree eT PROCESOS CON NOHUP Para lanzar un proceso y luego poder tar el shell padre, debernos hacerlo de siguiente manera: nohup proceso & "t ‘Ahora, el proceso seguira funcionando por més que la terminal en la que se encuentra se haya cerrado. La salida del comando po- demos verla en el archivo nohup.out, Es importante tener en cuenta que si elimi amos el archivo nohup.out mientras el proceso sigue activo, no volverd a crearse, | Mediante la Iinea de este ejemplo el usuario duefio del archivo podré eje- cutar el archivo archivo.pl. chmod go-w datos.txt Con este comando, el grupo duefio del archivo y los demas usuarios del sistema no podran escribir el archivo datos.txt. chmod a+w datos.txt Ahora, todos los usuarios del sistema podrin escribir el archivo datos. ae or ac rc ey Figura 6. Dselect es un gestor de paquetes para Debian que esta incluido en Ia instalacién bésica. Figura 7. Podemos visualizar los permisos de los archivos con ef comando Is -1 (es la primera columna). Como generar un archivo comprimido .tar.gz Para generar este tipo de paquetes se uti- lizan dos herramientas. La primera de ellas es tar, que se encarga de empaque- tar muchos archivos en uno solo, pegén- dolos todos cola con cabeza uno debajo del otro. Tar no comprime absolutamen- te nada, por lo que necesitaremos de otra herramienta para realizar esta tarea: ha- blamos de gzip. Con gzip comprimimos al paquete generado con Tar para que ocupe menos espacio. Para generar este tipo de paquetes debemos ubicarnos en A directorio que contiene los paquetes jue queremos empaquetar. Alli tenemos ue tipear el siguiente comando: tar -evé [archivo.tar] * Esto generar un archivo empaquetado, que ademas podemos comprimir con el siguiente comando: gzip archivo.tar Como deshabilitar el PC-Speaker En muchas ocasiones (por no decir siempre) es bastante molesto el muy co- nocido beep del PC-Speaker que suena con eventos, con el autocompletado, cuando nos equivocamos de tecla, de comando, y en tantas otras ocasiones. La solucién es muy simple. Sdlo tendre- mos que agregarle una linea a nuestro inicio o al sistema por medio de un script al re.local, boot-local. La linea es: set bell-style none Cuando ingresemos otra vez. en el siste- ma, éste no molestaré con el beep. Como instalar el plug-in de Java Primero debemos descargar la ultima versién de uno de los componentes UI} COMO CAPTURAR EL CONTENIDO DE UNA CONSOLA erenciales para todo usuario de Linux que navegue por Internet. Para eso te- iemos que dirigirnos a la direccién www.java.com/en/download/linux _manual.jsp (Figura 8). Alli, si hacemos clic en la versién no RPM, descargaremos el archivo bina- tlo de instalacién con un peso que tonda los 18 MB. Una vez descargado, jprocedemos a copiarlo en un nuevo di- tectorio llamado /usr/java. Siempre (mo usuario root tipeamos: # mkdir /usr/java Otorgamos permisos para ejecutarlo: W chmod 777 jre-1_5_0_04-linux- bin Njecutamos el binario: W /jre-1_5_0_04-tinux-i586.bin S ins Saar Esto va a crear un directorio llamado jre1.5.0_04. Dentro del subdirectorio /plugin/i386/ns7 encontraremos el plug-in especffico para cualquier nave- gador web. Ahora debemos buscar la ubicacién en la que nuestro navegador guarda el plug-in y crear un enlace: whereis mozilla mozilla: /usr/bin/mozilla /usr/lib/ mozilla /ust/share/man/mani/ mozilla.1.gz Entramos en el directorio: cd /usr/lib/mozilla ls Ubnssckbi.so plugins Y creamos el enlace: In -s /usr/java/jre1.5.0_04/plugin/i386/ ns7/libjavaplugin_oji.so Figura 8. La ltima versién de Java para Linux se puede descargar de www.java.com/en/download/linux_manual.jsp. De esta forma, el plug-in queda insta- lado. Sélo resta cerrar nuestro navega- dor y volverlo a abrir para ver su co- rrecto funcionamiento. Como instalar el de RealPlayer Sei Para instalarlo, primero debemos des- cargar la versién para GNU/Linux de www.real.com/linux?pcode=rn&sre= freeplayer_partner&opage=freeplayer —Partner (Figura 9). Una vez que lo hayamos descargado, debemos proceder a asignar permisos totales para root: chmod 755 RealPlayer10GOLD.bin Y luego tenemos que ejecutar el binario: Cuando se nos consulte sobre la destino, podemos optar por /usr, real o cualquier otra que nos guste, iit la aplicacién, la ejecutamos {ina terminal en modo gréfico 108 dudas sobre la ubicacién del ¢jecutable, podemos consultarle ma con el comando whereis: is realplay /ust/bin/realplay /usr/tib/ Ahora presionamos la F para que el /usr/share/realplay tema comience a copiar todos los a vos, cada uno en su lugar: Borrado de archivos segiin la fecha Seguramente, en alguna oportunidad se nos present la necesidad de borrar archi- vos segtin una determinada fecha y, por supuesto, recurtimos al comando Is -1 pa- ra verlas y luego proceder a borrar con am, Este método ¢s til con pocos archi- vos ya que con varios, la cosa se complica, Es por eso que incluimos un truco con el que podremos borrar los archivos de for- ma simple y con tan sélo una Ifnea, # find -mtime +60 -type f -exec rm "{}" ; Este comando buscar4 en nuestro sis- tema los archivos que tengan mds de 60 dias y procederd a borrarlos uno a uno con el comando mm. Debemos reemplazar el 60 por la cantidad de dias que necesitemos y listo. Soler mcree ‘Beat ou eta rac nwa what ‘ew Ut adopt you theme ‘Man be pe’ ott re rs neh en BSS ee Sed syste eereert ‘Advanced intalation cit scar Figura 9. La dltima versién de RealPlayer para Linux se puede descargar Wwww.real.com/linux?pcode=mé&sre=freeplayer_partner&opage=freeplayer_partner, Arranques personalizados con LILO Muchas veces tenemos la necesidad de bootear en forma especifica en un de- terminado nivel (runlevel) para reali- zar tareas de administracién (como chequear la parte fisica 0 légica del disco, operacién riesgosa en los nive- les 3 y 5). A veces puede ser necesario entrar en el nivel 1 para cambiar la clave de root olvidada. Esta operacién se realiza de forma muy simple con LI- LO, ya que sélo debemos teclear al ini- cio de nuestro sistema el ntimero de nivel en el que se quiere iniciar: boot: Linux 1 Ademds, desde el inicio podemos definir una determinada cantidad de memoria operativa en nuestro sistema, Esta opera- cidn se utiliza cuando queremos testear Figura 10. Si nuestra distribucién nos muestra un meni grafico de inicio, debemos Presionar la tecla ESC para pasar al modo de linea de comandos de LILO. WORD EN LA CONSOLA y f j y de la consola Existe una herramienta \lamada — {http://treshmeat.net/projects/anti Alinples neas podemos fijar " piniiestra distribucién segin yilware, utilizando el forma- / DD/bhimm. {MDPhhmmecyy smiite —systohe wenhow ‘versién de Debian, debemos con SOC atl ation. witrario, q\ debamos sin- {Mieytto equipo para que tome 4y hora de un determinado ser- W010 y esto se logra con el si- eomando: tuna determinada distribucién con mei recursos de los que realmente tiene el tema. La forma de hacerlo es simple: boot: Linux mem=128M server De esta manera, le decimos al sisten que inicie con 128 RAM de memo sin importar cudnta sea realmente cantidad de memoria fisica. 108 con una conexién perma- Jiternet, podemos incluir la linea 1) /ete/cron.daily. Esta operacién Witlizada en redes donde la sin- Toot, que parece ser una cuenta de usua- rio no habilitada. La cuestién es que es- ta distribucién utiliza un sistema llama- do sudo que permite que los usuarios ejecuten un comando con privilegios de root sin usar la cuenta del administrador (para evitar problemas). De todas for- mas, también podemos activar y asignar una clave al usuario root de forma muy simple y con un solo comando: sudo passwd root Cambiar la imagen de Grub Cambiar la imagen que muestra Grub al inicio puede ser una buena prictica cuando empezamos a aburritnos del esta- do general de nuestro sistema (Figura 11). El proceso no es complejo y requiere de algunas modificaciones a nuestra foto fa- vorita, Para lograrlo, debemos abrir Gimp y seleccionar una imagen que nos guste, Luego debemos cambiarle la reso- lucién a 640 pixeles de ancho por 480 pi- xeles de alto. Después de eso debemos hacer un clic con el botén derecho del mouse sobre esa imagen y seleccionar la opcién Imagen/Modo/Indexado. Dentro de la pantalla de indexado se- leccionamos del lado izquierdo la op- cién Generar gama de colores éptima y, en el lado derecho, (Nimero de colores) ingresamos el numero 14. Hacemos clic en el botén Aceptar y guardamos el archivo con extensién KPM. Si por cualquier razén Gimp no nos permitiera guardar el archivo con esta extensién, entonces debemos guardar- lo como PNG y luego convertirlo con el siguiente comando: rear un disco de arran- #0 Wend de GRUB convert nombre_imagen.png nombre_imagen.xpm @ btieno tener un disco de ini- Hieiita diseribucién para tener a SHH bao de que aparezcan proble- Hi et, primero debemos crear Wa de ficheros en un disquete fomando mke2fs /dev/fdo y tl disco en algtin directorio Aplo /mnt 0 /media). Luego de- Spplar las imagenes de GRUB al Wi) /iunt/boot/grub. Cabe aclarar stage2 y menu.lst son Wis, Finalmente, debemos des- wl dirco fle: ji Una ver creada Ia imagen, como ¥ gjecutamos los siguientes comandos: gzip nombre_imagen.xpm mv nombre_imagen.xpm.gz /boot/grul Paso seguido, editamos el archivo Ist ubicado en el directorio /boot g en el que indicaremos el nombre nuestra imagen. # Splash Image splashimage=(hd0,0)/grub/nombre_ imagen.xpm.gz Ahora sélo resta que reiniciemos 1 tro equipo para ver el inicio de Gi con nuestra imagen preferida. #scuchar archivos MP3 la consola Hike esti pensado para las perso- Hie No utilizan el entorno grafico de (ntinua. Con él podremos escu- Mehivos MP3 y OGG sin ningun ile problemas desde una consola. til, slo debemos tener instalada Wire equipo la aplicacién mpg123 Wifevar la siguiente linea: Figura 14. Es posible modificar el look de Grub para hacer, por ejemplo, que él mend de inicio de Ubuntu se vea como el de SuSE. 109 (archivo.mp3) tt RPM FORZADO Aveces sucede que queremos instalar un paquete RPM y el sistema nos devuelve un_ montén de mensajes de errores de de pendencias y componentes faltantes. Con frecuencia, esos componentes estdt instalados en el sistema y el problema se_ debe a que RPM no puede encontrartos,. En es0s casos, es bueno probar instalar el paquete de forma forzada al menos para saber si funcionard. Esto puede ser reali- zado con el siguiente comando: ! Si nuestro archivo MP3 tiene espacios en blanco en el nombre, deberemos usar comillas al inicio y al final. De cualquier manera, podemos escribirlas en todos nuestros archivos. Para dejar el archivo reproduciéndose y seguir usando la consola podemos usar: mpg123 -q “cancién.mp3” & Si pulsamos una vez la tecla ENTER, em- pezaremos a escuchar la cancién, pero la consola quedaré liberada para la intro- duccién de nuevos comandos. Con este formato no veremos los nom- bres de las canciones pero sf el numero de proceso que esté corriendo. Si quisié- ramos interrumpir la cancién, deberfa- mos ingresar el siguiente comando: kill -9 Seguramente, en algiin momento de- searemos escuchar toda una lista com- pleta de canciones. Para eso, tendre- mos que usar este comando: mpg123 -@ “lista.m3u” Si queremos dejar liberada la consola: mpgi23 -@ “lista.m3u” -q & Para crear una lista de un directorio completo de archivos: Vs -1 *.mp3 > lista.m3u Luego podemos cambiar el orden de las canciones con cualquier editor de texto. Por iiltimo, para manejar el vo- lumen de salida debemos utilizar el co- mando aumix (Figura 12). Instalar paquetes .DEB en Red Hat y .RPM en Debian En muchos casos, puede pasar que no encontremos paquetes compilados para nuestra distribucién preferida. Como bien lo informa el titulo, vamos a ver cémo instalar paquetes .DEB (de De- Figura 12, Aumix es una herramienta para controlar los niveles de la placa de sonido desde Ia terminal. generar un RPM Jiiyuesumos la siguiente linea: partir de un BUSQUEDA DE COMANDO: Command not found es un error tipice {a terminal de Linux cuando escribi hombre de un comando que'no exist distribuciones Ubuntu incluyen un ‘tramienta llamada command-not- que, al instalarla, reemplaza ese mer por un sistema de busqueda del co ‘en los repositorios de Ubuntu. Eni (orp paquete.deb wilo es cuestidn de instalar los Heh como lo harfamos si los hu- inh bajado directamente en el @ dle nuestra distro, Inatalar los archivos Jusrflocal. Para todo esto neci estar trabajando con la cuenta 10 ‘ma, Ubuntu intentara descargarto e in \arlo automaticamente. iy desalentador para los nuevos _ tar -jxvf man-pages-es-1.55.tar.bz2 de GNU/ he con los manuales del siste- Jnglds. Para bajarlos en espafol, 40s que ingresar a la siguiente inux el hecho de Ingresamos en el directorio que se cred y lo instalamos con los comandos make y make install. Por tiltimo, tendremos que editar el directorio /ete/profile para ¢s- pecificar que brinde prioridad al lengua- je espafiol agregando la siguiente linea: bian) en distribuciones basadas -RPM y el caso contratio, instalar pi quetes RPM en Debian. Esto lo 30 cionamos con un sistema llamado ali que viene incluido en muchas distrib \ ciones. Si no esté en la nuestra, lo pod mos descargar de heep://kitenet.ni ~joey/code/alien. html. Una vex instalado, se utiliza del | guiente modo. Para generar un .DEB partir de un .RPM: i scleccionar la descarga co- ullente a espafol: www.win.tue. /Ninux/man (Figura 13). ile descargarlo, debemos descom- el wichivo en un directorio como export LANG=es_ES Howie: ena sneCOC nested tea ellmtlenancace mts enn Oe in as a nd alien —to-deb paquete.rpm | av nies one u J a Figura 13. Entre todos los idiomas disponibles, podemos encontrar el espaiiol al final de Ia lista. Luego debemos salir del shell con el comando exit y volver a entrar para ver los resultados: todos los manuales de- berian estar en espafiol (Figura 14). Capturar el texto de la consola En muchos casos, puede ser muy titil poder enviar a la impresora los datos contenidos en la consola o imprimir un archivo de texto directamente sin abrir primero un editor. Para poder llevar a cabo estas tareas, debemos usar el si- guiente comando para guardar los da- tos en un archivo: script archivo.txt En cambio, para enviar los datos a una impresora conectada al puerto Ip0 de- bemos ingresar el siguiente comando (Ge debe reemplazar Ip0 por el archivo de conexién que corresponda): script /dev/Ip0 Figura 14. Las paginas del manual (accesibles con el comando man) son indispensables para aprender a dominar al maximo todos los comandos. 4 Wi transferencia, slog, podemos utili | diquiente modo: Cémo dividir grandes archivos para que entren r coman- (iehivot.tar.gz nombre_ cierta cantidad de informacién de nombre_archivo.tar.gz computadora a otra y el espacio ol do por un disco floppy no es sufiel Pero hay una solucidn: comprimi un solo archivo y luego dividirlos comando split. Primero debemos primir todo como un paquete .tary iv Imagenes ISO | Jos usuarios de GNU/Linux Wi) cuenta queycuando eje- Heerminadas aplicaciones de lea, en lo que esta- ilo es utilizar entornos gréfi- unas que corren de forma Vinx desde la consola. tle cualquier aplicacién gré- {abar CDs 0 DVDs estamos Wii situacién. Por ejemplo, limos K3B estamos usando wikliofs, edrdao, etcécera. Es- tleclt que podremos utilizar Wabadora de forma remota Wilo un logueo via ssh o inclu- Nuestra consola, Entonces, W proceso completo. Primero jenerar una imagen ISO de un / comando dd o el comando Hoga ul mismo resultado). tar -cvf nombre_archivo.tar * Luego lo tenemos que dividir en. archivos mas pequefios de 1.44MI tamajio de un disco floppy) utilizas el comando split: # split -b 1440k nombre_archivo.tar, De esta manera, se dividird el ar nombre_archivo.tar.gz en varios vos del tamatio definido y, ahora s tos archivos podran ser copiados a1 //edxom of-imagen.iso Para vol- Oo LISTAR DISPOSITIVOS PCI ‘Un comando muy dtil a la hora de senfigt rar el hardware’ es lspei, que muestra ‘pantalla un listado completo de todas tarjetas conectadas a la computador | cluye datos de hardwidare y del fabricar oO: cat /dev/edrom > imagen.iso Luego sélo resta grabar la imagen a otto CD con el comando cdrecord: cdrecord -v speed=VELOCIDAD dev=GRA- BADORA imagen.iso Obtener informacion de paquetes .DEB Para obtener informacién sobre algdn programa instalado, slo debemos teclear en la consola el siguiente comando: $ apt-cache show “nombre del paquete” Por ejemplo: $ apt-cache show postfix ‘Fiinciona muy bien y permite contin Utitizacién es ta siguiente: wget -c [url_archivol. Par De forma automatica, obtendremos una respuesta como la siguiente: Convertir texto seleccionado en codigo HTML Convertir una porcién de texto sele nado en cédigo HTML es muy til pa ra crear sitios web, Para hacerlo, sélo peamos desde la consola de Vim: Figura 15. Phoronix es un gran repositorio de informacién sobre el soporte de hardware en Linux. so \SVIMRUNTIME/syntax/2html. vi Sélo resta guardarlo con w archivo, y luego ia, Donde buscar controladores de « dispositivos j Hay varias herramientas que nos miten averiguar dos datos esenci primero de ellos es saber si el disp Vo que nosotros queremos confi tiene soporte en el mundo de GNU nux. En tal caso, debemos averi segundo dato esencial: dénde enco} el driver que fanciona con nuestra tribucién, El proyecto. Phot (www.phoronix.com/Ich/?k=ho} es una inmensa base de datos a por usuarios, que tiene informaciéi bre miles de dispositivos (Figura 18), tre otras cosas, los usuarios pueden ner comentarios como, pot ejemy dénde encontraron el driver, cém Figura 16. DriverGuide es un gran repositorio de controladores de hardware para Linux y Windows. Won en su distribucién, los da~ DriverGuide (www.driverguide.com) dloteeta cl kernel sobre el disposi- que, si bien es un portal que incluye iostidn y advertencias sobre el una base de datos de drivers para miil- imiento y cl rendimiento, entre tiples plataformas, la seccién Linux es Wi, El sitio incluye un buscador muy amplia ¢ incluye un buscador que jeontrar més facilmente lo que es- nos permitiré llegar r4pidamente al Wuseando. Si tipeamos, por ejem- _preciado archivo con sélo poner algu- Palabra iPod, encontraremos un _ nas palabras clave (Figura 16). ie Nos derivaré hacia comentarios Antes de instalar una distribucién, debe- los que han logrado conectar es- mos consultar en su sitio oficial la seccién liv dispositivo con GNU/Linux, Compatibilidad con Hardware (o Hardware ‘00 lus herramientas més popula- Compatibility) porque allf podremos in- Mjeronizacién y mucho mas. formarnos répidamente si la distribucién sitio Indispensable a la hora de que deseamos instalar incluye soporte pa- J ivivers para GNU/Linux es ta todos los dispositivos que tenemos en c6Mo BUSCAR TENTS DENTRO DE ARCHIVOS nuestro equipo. Esta base de compatibi- lidad sélo la encontraremos en los sitios de las distribuciones importantes como SuSE, Mandriva y Ubuntu, entre otras. Elegir distribuciones raras y poco po- pulares es un camino seguro a pasar horas en el intento de configurar des- de el mouse hasta la impresora. Instalacién rapida de aplicacio- nes con klik Klik consta de dos componentes: uno que se instala en nuestro navegador web y un sitio (http://klik.atekon.de) que tiene miles de aplicaciones dividi- das por categorias, en el que ademis se incluye un buscador (Figura 17). Cémo funciona? Muy simple: una vez que tenemos el sistema klik instalado, Io tinico que tenemos que hacer es di- rigimnos al sitio de klik con nuestro na- id reer ae a en run OT eee en eer Fede em oe fe nepiigantir oh tn ey lst se comment ma) [Se ty woes rete [soon Sit Figura 17. El proyecto klik posee un gran directorio de aplicaciones de facil instalacién para Linux. btisquedas de comandos. La variable PATH debe contener todos los directo rios necesarios para localizar todos los comandos que utilicemos. Es muy comtin instalar algunas aplica- ciones que no ponen sus ejecutables en los directorios esténdares para ejecuta- bles como /bin, /usr/bin y /usr/local/ bin. Generalmente, sus ejecutables es- tén en su directorio propio y este di- rectorio no aparece en el PATH del sis- tema. Por ¢s0 no podemos ejecutar el comando con sélo escribirlo, sino que debemos especificar la ruta absoluta al comando. Ademés, cabe aclarar que tampoco podremos usar el autocom- pletar (TAB) para el comando. PATHs perdidos 108 que klik descargue los umente en el escritorio po ) or ejemplo, que aparez- 10 Nuevo directorio Aplica- #0 debemos crear un archi- WMillere en nuestro directorio {ieluir lo siguiente: vegador favorito, elegit la aplic que queremos, hacer klik sobre se descargard. En nuestro esc apareceré un archivo con exte -CMG. Entonces, si hacemos cli bre ese archivo, automdticamen aplicacién comenzaré a correr. Podemos armarnos un directo: caciones y almacenar all{ todos chivos .CMG si queremos tener similar al modelo de Mac OS borrar las aplicaciones el proce sencillo: enviar el archivo .CMG papelera de reciclaje. 1 El proceso de instalacién (y po uuso) de klik es muy sencillo. Se mienda utilizar Firefox como nave y KDE 0 GNOME como gesto ctitorios para que, cada ver. que guemos un .CMG, éste aparezca un nuevo icono en el escritorio. Pod ver el procedimiento para instalar kl el Paso a paso: Instalacién de Klik. La solucién es agregar el directorio a la variable de entorno PATH, algo que se puede realizar con el comando export de la siguiente manera: lun comando, debemos te- que cualquier Linux debe jHNtrar cl directorio que cor Womando antes de poder ¢j variable de entorno PATH Ii lista de directorios en los export PATH=SPATH:/ust/local/share/ En el ejemplo estamos agregando el di- rectorio /usr/local/share al PATH. Hay que tener en cuenta que los directotios en la variable PATH se separan por dos puntos (2). Si queremos que la variable PATH siempre esté actualizada con las modificaciones, debemos guardar el co- mando para que se ejecute en algunos de los dos archivos de configuracién de Bash (~/.bashre o /ete/profile). Basta con agregar el comando al final del archivo. Cémo entrar al modo grafico si el sistema no lo hace automaticamente al inicio A.veces, sucede que luego de instalar el sistema operativo, reiniciamos y éste sélo inicia en modo texto. Es decir, no nos muestra el entorno grdfico que tanto queremos. Esto puede deberse a que durante el proceso de instalacién del sistema, no hemos configurado co- rrectamente el modo grifico. Para evi- tarlo, siempre hay que prestar especial atencién a la configuracién gréfica en la instalacién y probar la configura cién antes de continuar. Sin embargo, una vez que tenemos el problema, lo que podemos hacer es in- WO saberlo? La manera mas abrir la terminal de texto del Todas las dis- permiten acceder a ellas le i combinacién de las te- PUNCION(n] (reemplazar la n We gorresponda, Para saber, probando todas las posibili- I vex que se encuentra la -§@ podrdn ver todos los men- slevolvid el sistema de insta- uuelga, sdlo es cuestién de we cl tiltimo mensaje de error tle solucionar el problema. wt CERRAR EL SISTEMA gresar al modo gréfico con el co startx. Si no funciona, entonces mos iniciar la herramienta de con racién de la distribucién que usando. En el caso de Mandri ejemplo, con sdlo tipear setup la tel mos en pantalla para configurar do gréfico como corresponde. de ayuda ttiles cl sistema, los usuarios de |uix no se encuentran solos. [algunos comandos y paréme- jer ayuda sobre ilo o una aplicacién en espe- primero que debe hacer el instalacion de Linux no fit ) chequear que exista una pé- correctamente manual de dicho comando. —<——— plo, si queremos obtener ayu- A veces, cuando estamos instalan | comando Is, sélo tenemos distribucién de GNU/Linux, el si Hibir la siguiente linea: de instalacién se congela sin respi aparente y no avanza més. Esto ph deberse a varias razones, pero las p pales son: problema fisico en el G DVD (que esté rayado 0 mal grab; problema del medio de almacen: (clusters malos en el disco rigido), blema en las particiones (que estén, Qué hacer cuando una hechas, dafiadas 0 solapadas) y po! mo, problema en el hardware del ¢ po (que esté mal la memoria RAN procesador es lo mas comiin). ‘Asi apareceré el sistema de manuales con la ayuda en pantalla. Algunas ve- ces, esta ayuda estard en idioma espa- fiol y otras veces no. En realidad, eso depende de que el grupo de traduccién de aplicaciones y documentos de GNU/Linux haya llegado a los datos que estamos manejando. Para salir del sistema de manuales, sélo tenemos que presionar la tecla q. Si obtenemos un mensaje de error, enton- ces es muy probable que esa aplicacién 0 comando no incluya paginas del manual, Todavia quedan opciones. Podemos pro- bar agregando el pardmetro -help al co- mando, de la siguiente manera: Is -help Lo que obtendremos en pantalla es una cescucta guta de uso de ese comando, com- puesta por un listado de pardmetros y sus respectivas descripciones de accién. Por tiltimo, debemos recordar que en los directorios /usr/doe y /usr/share/doe se encuentran almacenadas las docu- mentaciones de todos los comandos y aplicaciones que tengamos instalados en el sistema, Por eso, darse una vuelta por esos directorios con algain editor de tex- to puede ser una buena idea. TRABAJAR CON EL HISTORIAL yoo que ejecutar sin espacio intermedio. Renelerbiol 1508, GUIA DE COMANDOS A continuacién presentamos una gufa con los comandos més importantes que se pueden usar en el modo texto de GNU/Linux, AC i Fjecuta un proceso (nterumpido) en segundo plano, i fieo Muestra la memoria libre y a utiizada. a0 ‘i Envia una sefial a un proceso. i BO) co Ejecuta un proceso con menor prordad de ejecucin. ie ee ‘Muestra las variables de entomno. pa reboot Reincia el sistema. AEN top ‘Una utilidad para monitorear procesos y el estado del sistema. Na Tabla 2. Comandos para el manejo de procesos. dduser Cea un nuevo usuario. i : groups: ‘Muestra el listado de grupos de usuarios del sistema. i pass CCambia la clave de anceso de un determinado usuario. ‘th talk Permite chatear con otros usuarios. who ‘Muestrainformacidn de los usuarios actualmente conectacios. Tabla 3. Comandos para el manejo de usuarios. Cambia de directorio, ia. un archivo, | Cambia el propetaro de un archivo o directorio, Muesta el espacio en disco utilizado, Utiidad para paticionar unidades, \equea el sistema de archivos. | Crea un enlace simbélco, rea un directorio, E i Crea un archivo de dispasitvo. ‘Monta una unidad o particién en el sistema de archivos. a Devuelve la cadena correspondiente al directorio actual, i Borra un directorio, Cin a alias Permite ejecutar comandos utlizando otros nombres (cea alias) Desactiva el espacio de intercambio, i syne ‘Sineronta las procesos de escituray lectura eal Muestra el calendaria te tata deinaetne, “tate tall Muestra las tm ineas de un archivo. tae Muestra ayuda de un determinado comando. tate natin omatoTaR nn Desinanta un sistema de archivos ya montado, alla Borra el alias de un comando, Tabla 4. Otros comandos. | _ Cuenta of ndmero de caracteres de un archivo, Tabla 1. Comandos para el manejo de archivos, 202 Secretos de Linux Trucos avanzados para la consola Continuamos con los trucos para la consola de comandos de Linux, pero en este apartado hemos reunido ‘aquellos trucos que requieren un poco mds de experiencia en el uso del sistema por parte del usuario. Ejecutar comandos con permisos de otro usuario (suid) sumo cuidado y, cada vex que se decida Fees 0 Otte mamaria (seid) habilitar el bie SUID, asegurarse de que el comando no se pueda utilizar para é 4 : 'n muchas ocasiones, un proceso debé poner en riesgo la seguridad del sistema, ejecutarse con privilegios diferentes a los que posee el usuario que lo est ejecu- tando. ;Cémo es esto? Veamos una apli- cacién tipica del mundo real: Un usuario puede modificar su propia clave utilizando el comando passwd. La simple ¢jecucién de este comando impli- card la modificacién de cualquiera de los dos archivos de usuarios (/ete/passwd o /ete/shadow). El usuario comtin no tiene privilegios para modificar estos archivos directamente y sin embargo el comando passwd que utiliza lo puede hacer sin pro- blemas. :Por qué sucede esto? Porque el comando passwd tiene habilitado el bit SUID, que le permite manejarse con pri- vilegios de root aun cuando un usuatio comtin lo esté ejecutando. 2Cémo funciona entonces? Simple, acti- vando el bit SUID del comando passwd, Para esto, se utiliza el comando chmod (cambiar permisos) del siguiente modo: Iniciar Linux sin password 2A quién no le ha ocurrido el olvido acci- dental de la clave de acceso alguna ver? Lo que se debe hacer en estos casos ¢s ini ciar cl sistema en modo mono usuario Para asf tener los privilegios de roet sin UU RESCATAR A LINU: chmod uts [archivo] Esto quiere decir que cuando se ejecute, el proceso correspondiente va a tener los privilegios del propietario del comando y no del usuario que lo lanzé. En el ca- so del comando passwd, su propietario es root (el administrador del sistema). No debemos finalizar este truco sin ad- vertir de la peligrosidad de este coman- do. Si se utiliza de forma incorrecta, puede permitir que cualquier usuario comitin lleve a cabo operaciones peligro- sas en el sistema. Por eso hay que tener hhecesidad de tipear su clave. Para llevar esto a cabo en LILO, se debe utilizar el ppardmetto single seguido de la etiqueta {que hace referencia a la instalacién de Li- fhux en el ment de inicio. Por ejemplo: Linux single Ora forma es cambiar el proceso de Inicio por bash: \nux init=/bin/sh Si se utiliza el primer método, sdlo hay que usar el comando passwd para cam- bar la clave. Pero si se utiliza la segunda opcién, notaremos que el inicio del siste- ma lo habra hecho en modo de sélo lec- {uira, por lo que no podremos modificar Ja clave (ni ningtin archivo del sistema). Por eso, antes de cambiar la clave, debe- mos volver a montar el sistema de archi- vos con los privilegios cortespondientes: mount / -o rw,remount Ejecucién de comandos al inicio de nuestro sistema Suele suceder que al iniciar el sistema debemos tipear varios comandos para configurar ciertos pardmetros. Por ejemplo, configurar un entorno de tra~ bajo en red puede tomarnos entre dos y cinco comandos, y serfa muy tedioso te- er que escribirlos cada vez que Linux bootea. Por es0, lo mejor es crear un ar- ) hacer que el sistema lo ejecute de forma automatica cada vez que se inicia, El proceso para llevar a cabo este ultimo paso varfa segiin la distribucién, ya que cada una guarda el archivo de inicializa- cidn en un directorio diferente y con un, nombre distinto. Veamos en dénde guardan el archivo de inicializacién las distribuciones més populares: + RedHat y Mandriva: /ete/re.d/re.locat * SuSE: /ete/re.d/boot.tocal * Debian y Ubuntu: /ete/re.boot Para editar estos archivos, podemos re- curtir al editor meedit, vi o emacs. Para el ejemplo elegimos el editor meedit y vamos a realizar un script que se ejecute al inicio del sistema y realice una copia del historial de bash de un usuario en particular (tarea muy util en ambientes corporativos para poder tener un regis- tro completo de los comandos tipeados por un determinado usuario): chivo de texto (un seript) que contenga todos esos comandos, otorgarle permi- sos de ejecucién (chmod +x [archivo]) y cjemplo corresponde a una distribu- 6n Mandriva. Como se ve, al final del chivo esté el comando ep que se encat- de llevar a cabo el proceso de copia- ». Este comando se ejecutard cada vez 1e se inicie el sistema (Figura 1). bmo crear servicios de inici UL Debian y Ubuntu pi ura poder lanzar procesos automitica- ente al inicio de sistemas como De- an, Debian Sarge, Ubuntu o cualquier ra distribucién derivada de Debian, bemos seguir los siguientes pasos. En incipio tendremos que crear un script Figura 1. Si agregamos comandos al inicio, es bueno precederlos de un mensaje informativo con el comando echo [mensaje]. dentro de /ete/init.d/. Lo guardamos creamos un enlace a él en el directori correspondiente al nivel de ejecucién dos (por citar un ejemplo). ; # /ete/re.d/re.2/in -s /ete/init.d/.varios iListo! ahora podemos crear cualquie script y enlazarlo de la misma manera, Como crear un archivo de intercambio (swap) Cuando el tamafio de la particién swap. no es suficiente (porque se expandié la memoria RAM) y no hay opciones de modifica la tabla de particiones, la mejor opcién es extender el espacio de inter cambio con un archivo comtin. Para crear ese archivo, primero debemos usar la he- | rramienta dd del siguiente modo: dd if=/dev/zero of=/swap bs=1024 count=8192 Con esto habremos creado un archivo tubleado en /swap de 8MB. Se debe mo- ilificar cl pardmetro count= para asignar fl expacio en bytes que se desea. Bl dispo- silivo /dev/zero cs un dispositivo especial ‘4 donde todo lo que se lee son bytes nu- Jos, El archivo, entonces, estard vyacio. Ahora, debemos darle formato a ese ar- hivo para que tenga la estructura de un jichivo de espacio de intercambio. Esto Jo hacemos con el comando mkswap del flguiente modo: wkswap -c /swap 8192 Nuevamente, se debe reemplazar 8192 por el tamafio que corresponda. Por ti timo, habilitamos el espacio de inter- cambio para que se use de inmediato: awapon /swap Usar make para automatizar tareas Cuando se distribuye cédigo fuente, gencralmente se ofrece una manera de compilar todos los archivos de forma jutomatica. En pocas palabras, pode- nos decir que el proceso de compila- in de un programa consiste en pro- cesar todos los archivos que lo compo- en y convertitlos en archivos bina- rios objeto que como estén todos sueltos, no es posible ejecutarlos. Luego se realiza un proceso de ensam- blado que consiste en juntar todos los archivos objeto en un gran paquete binario ejecutable, Ese binario se de- be copiar a uno de los directorios de archivos binarios de Linux, como por ejemplo /usr/bin. Como realizar esta tarea a mano es muy tedioso, se utiliza una herramienta que se llama GNU Make que tiene como obje- tivo principal automatizar comandos. Para esto, lo que hace es manejarse con tun archivo de texto llamado Makefile que tiene la siguiente estructura: Lo que hacemos es crear tareas. que pueden tener dependencias unas de otras. Cada tarea tiene su set de co- mandos para cjecurarse, Veamos un ejemplo del mundo real: [DD] ReemPtazo ne BasH Si nos gusta mucho Midnight Commander, podemos ttilizarlo como reemplazo de bash. para esto, s6lo debemos reemplazar el ditinio campo de la linea correspondiente 2 nues: tro usvario (binjbash) por /ust/bin/me. De esta manera, cada vez que ingresemas al sit= tema, Midnight Commander aparecera ante nosotros. Cuando se tipea make, el intérprete abrird el archivo Makefile y ejecutaré la Primera tarea del archive (copiar), Tiene dependencias? Si, depende de ereardir (definido justo después de los dos puntos). Entonces ejecuta primero creardir, La tarca ereardir lo tinico que hace es ejecutar un comando mkiir que crea un directorio, Luego, al finalizar, se ejecuta la tarea original (copiar), que copia un atchivo en el directorio que fue cteado por la tarea anterior. Cabe aclatar que tam_ bign es posible poner multiples depen- dencias por tarea y éstas se ejecutarén en el orden en que sean definidas, De esta forma, podemos utilizar los ar- chivos Makefile para crear scripts que cjecuten diferentes tareas administrati- vas de nuestro sistema. Sugerenci el nicles = erompilar La mayorfa de los usuarios Linux alg nna vez se énfrenta con la necesidad d compilar un nticleo (Figura 2). Aqui tenemos una receta ligerament modificada para llevar a cabo esta t rea: make menuconfig make dep make clean make zImage ep arch/i386/boot/zl vmlinuz arenes ¢p System.map /boot make modules make modules_install Podemos evitar los pasos make zimage Y @ si editamos el archivo Makefile. que hay en /ust/sre/tinux. Dentro de ese archivo buscamos: HINSTALL_PATH=/boot ue A Linux Kernel Archives Mise buessoaute BYE omen iiteresisrocanaeeey” Some ea “Alli debemos quitar el simbolo de comen- {urio a la linea, También podemos poner {iuestro nuevo kernel en cualquier direc ‘orlo, siempre y cuando definamos en. stro gestor de arranque la ruta corres- nndiente, Una vez hecho esto, usamos alilo (en reemplazo de make zimage Jos ep) que haré todo el proceso de com- ilicidn y copiado de manera automatica. crear nuestro propio positorio de paquetes Debian {iy muy ttil contar con repositorios De- ‘plan locales para la instalacién de aplica- flones de forma mas fluida. Un método “WMly vitil es, justamente, copiar los pa- quietes DEB de un CD a un directorio Jocal para tenerlos disponibles en cual- {quiet momento y desde cualquier equi- po de la red. Pata esto, lo primero que {lcbemos hacer es copiar todo el conte- Aiido de los paquetes en un directorio es- pecfico como el siguiente: /home/ftp/pub/debian/dists/repo/bi- nary-i386. Para ello se debe hacer: $ cd /home/ftp/pub/debian/repo $ dpkg-scanpackages dists/repo//binary-i386 /dev/null > dists/repo/binary 1386/Packages $ gzip -c repo/binary 1386/Packages > repo/binary 1386/Packages.gz Luego de realizar los comandos anterio- tes obtendremos el archivo Packages.gz para cada archivo MP3. Cuando hays (archivo necesario para acceder a cual- quier repositorio .DEB) y jListo! Para usarlo, sélo resta incluir Ia linea co- rrespondiente en el archivo /ete/apt/ sources.list. Editamos este archivo con un editor de texto cualquiera ¢ inclui- mos la siguiente linea: deb ftp://mimaquina.midominio.com/ pub/debian binary-i386 repo Ya podemos utilizar el comando apt-get install para instalar los paquetes inclui- dos en el repositorio. Grabar canciones MP3 en un CD de audio desde la consola Para poder grabar archivos MP3 en un CD de audio debemos contar con los si- guientes programas: sox, cdrecord y al- guno de los siguientes: mpg123, freeamp o alsaplayer. Como primera medida, de- bemos convertir el formato MP3 a un formato que el programa edrecord puce- da entender para después grabarlo: mpg123 -s archivo.mp3 | sox -t raw -¢ 2-1 44100 -w -s - track.edr Una ver ejecutada esta linea, tendre mos un archivo track.edr en format: CD-audio (frecuencia de 44KHz, esté reo, sin signo), Ahora sdlo debemo grabarlo en un CD: cdrecord -nofix -audio track.cdr Repetimos el mismo. procedimient ‘mos terminado de copiar todos los ar- chivos, ejecutaremos: cdrecord -fix Ahora podremos escuchar las canciones que antes estaban en formato MP3 en uun reproductor de CD hogarefio, Borrar los volcados de memoria Core Los archivos core son los que genera el sistema cuando alguna aplicacién o ser- vicio se cierra de forma inesperada. Has- @ ahora, sélo tenfamos la opcién de SIN CTRL + ALT + SUPR POP a ara nian ne buscarlos con el comando find o des cl entorno grifico y borrarlos de forn manual, una tarea quizds arriesgad incémoda para cualquier usuario, Para esto tenemos un pequefio. scri que se encargard de buscar esos archi y después borratlos sin preguntas, Ser interesante que se ejecutara de form periddica en nuestro sistema Linux vorito. Como root, vamos a crear un chivo vacfo llamado limpieza.sh. # touch limpieza.sh Luego tenemos que editarlo de la si guiente manera: # vi flimpieza.sh E ingresamos el siguiente texto: #1/bin/sh #t Borrar archivos core find / -name “core.*" -exec rm {} \; Guardamos el archivo con la combina. cidn de teclas ESC + X y salimos, y lue- 80 le brindamos los permisos suficien- tes para la ejecucién: # chmod 775 limpieza.sh Listo. Ahora slo debemos ejecutarlo _ anteponiendo el ./. # flimpieza.sh De esta manera, se limpiardn los archi vos core de todo nuestro sistema, Ingresar el texto siguiente y guar- esta forma, con tan sélo ingtesar el nando /etc/init.d/limpieza start, cl tipt se pondré en accién y podremos wer que éste se ejecute cada vez que Inicie el sistema. at DOSEMU Main Page ste Sethian care en Son ase Sn (sapmiavasy NEWS NEWS NEWS te Sp Bnet apn! OSPALLA a ce atom nl (|e Re a sal 208 DOS ops ay TL eis ha 0.8L) ts BO not eae gia (Am) ptr denna cn ei a et Cémo ejecutar aplicaciones de MS-DOS bajo Linux Lo primero que debemos hacer es des- cargar dos paquetes. Uno corresponde al cédigo fuente de DOSEMU (una aplicacién que permite ejecutar un en- tomo completo de DOS bajo Linux) y el segundo corresponde a un sistema operative FreeDOS (una versién GPL de DOS) lista para utilizar. Para eso, nos dirigimos a www.dosemu.org (Fi gura 3) y en la seccién SourceForge pro- ject page descargamos los paquetes do- semu y dosemu-freedos. Los archivos que debemos descargar no ocupan mucho lugar, por lo que la des- carga seri muy répida. Luego debemos descomprimir ambos paquetes: tar dosemu-1.2.2.t92 tar -zxvf dosemu-freedos-b9r5a-bin.tgz Antes de continuar, es importante desta- ‘car que es recomendable usar DOSEMU bajo el entorno gréfico X11 si es que vie DOSEMU.org, Para definirlo como un servicio mds dentro del directorio init.d, sdlo debe- Figura 3. Podemos descargar DOSEMU y FreeDOS de www.dosemu.org. mos a ejecutar juegos como DOOM 0 aplicaciones como Microsoft Windows 3.1. Y para que DOSEMU funcione ba- jo X11, debemos tener instaladas las li- brerias de desarrollo de X11 (incluidas en los CDs principales de todas las distribu- ciones de Linux). Por lo tanto, antes de continuar, hay que buscar esos CDs talar los paquetes de desarrollo bajo X11 Luego de hacerlo, vamos a compilar DOSEMU. Para esto, entramos al di- rectorio dosemu-1.2.2 y tipeamos: -/configure —prefix=/usr/local/dosemu make make install El parametro —prefix nos permite indi- car el directorio de instalacién, y pode- mos cambiarlo por aquel que nos quede mis cémodo. El proceso completo pue- de tomar varios minutos segiin el equi- po que tengamos. Ahora debemos co- piar el sistema operativo FreeDOS al di- rectorio de instalacién de DOSEMU. Para esto, salimos del directorio de fuentes de FreeDOS ¢ ingresamos en el directorio dosemu/ que creé el paquete dosemu-freedos. Alli encontraremos un directorio llamado freedos/ que de- bemos mover con el siguiente comando: my freedos /ust/local/dosemu Una vex que esté todo copiado en su | gat, procedemos a configurar algunos p rimettos de DOSEMU para que funcio ne correctamente en nuestro equipo, archivo de configuracién de DOSE! se encuentra en /etc/dosemu/dosi mu.conf. Como todo archivo de confi guracién de Linux, las Iineas que apar cen con un simbolo # corresponden Itneas deshabilitadas, por lo que deb ser eliminados si queremos habilitar al guna de las opciones que vamos a men: cionar a continuacién: Duns (8192) Iipte pardmetro nos permitira indicar la jantidad de MB de memoria extendida ie tendré nuestro sistema DOS. to (2048) Jo mismo para la memoria expandida (WMS) que tantos programas utiliza- jun durante los afios 90. | $ layout = “auto” cen a Jie parimetro intentaré detectar nuestro Wwelado y utilizar su configuracién de te- fas bajo DOSEMU. Si no funciona, po- dlomos indicar el lenguaje. Por ejemplo, el fimetro para el reclado en espaol es es. En esta cléusula podemos definir el tip de procesador que tenemos. Si tenemo: un equipo Pentium o superior, pode- mos reemplazar el valor por 80586. § com! = “/dev/ttyS1 irq 5” $_hdimage = “/usr/local/dosemu/ freedos” §i tenemos un dispositivo conectado a \un puerto serie (como por ejemplo, un Quizds éste sea el parémetro més impor- tante del archivo. Aqui debemos definir el directorio en el que esté alojado el sis- tema operativo (esto es, la ubicacién del directorio de FreeDOS). En caso de te- ner una particién con un MS-DOS ins- talado, podemos indicarla aqui (por ejemplo /dev/hda1) y DOSEMU boo-_ teard automdticamente ese sistema. médem externo), debemos definirlo aqui. Por ejemplo, si tenemos un mé- dem conectado al puerto serie /dev/ttyS1 debemos definirlo tal como esté en el ejemplo. Lo que vimos hasta ahora es la configu- racién bdsica, pero hay muchas més op- ciones para personalizar la placa de vie deo, la placa de sonido, la de red, eteé- tera. Todo viene preconfigurado para que funcione de fibrica, por lo que no deberfamos tener problemas. Por tiltimo, debemos ubicarnos en el directorio /usr/local/dosemu/bin y ¢} cutar el archivo dosemu o xdosemu si es- tamos bajo el modo gréfico. Ahora, s6- lo es cuestin de navegar por el sistema de archivos y ejecutar el programa que mis nos guste (Figura 4). Si tenemos dis- quetes o CDs con programas de DOS y queremos ejecutarlos bajo DOSEMU, sélo tenemos que copiarlos al directo- rio del paquete FreeDOS (/usr/local dosemu/freedos). cin aa) aN ay ih t an fica) [DJ como montar una IMAGEN iso No hace falta grabar una imagen iSO en un CD para ver su contenido. (Pademos montaria directamente desde la consolal Para esto, debemos usar el comando mount del siguient modo: mount -o loop archivo.iso /mnt/cdrom. ‘ ag th oy it ihe * ‘a jorr fa ae Paes! ant Hi AOU 2 Figura 4. Ejecucién de Norton Commander bajo una terminal de DOSEMU en Linux. Como sincronizar una Palm con Linux desde la consola Esta forma de comunicar nuestro dispo- sitive Palm es muy efectiva y por demas de répida, y sdlo tendremos que acor- darnos los comandos y su sintaxis. Pero antes tendremos que configurar la cone- xin. Esto se logra creando un enlace simbélico entre nuestro dispositivo Palm y el puerto USB o serial (segiin el modelo de Palm). Por lo general, los dispositivos mas modernos se conectan a nuestra PC mediante cables USB, y de esta forma vamos a enlazar el dispositi- vo a nuestro puerto disponible. Es bueno verificar si nuestro sistema ope- rativo detecta el dispositive USB, y para esta operacién tenemos dos comandos: \spei y Isusb. Cualquiera de estas opciones nos lista los dispositivos activos y listos para ser configurados que hay conectados a nuestra PC. Como veremos, no sélo es- té la informacién de nuestro dispositive USB, sino que también estén todos los dispositivos de nuestro equipo. Pero nos resta algo por demds de importante: saber cudl es el archivo dispositivo correspon- diente. ¥ para esto tenemos dos opciones: * Ingresar al lugar donde estdn los archi- vos de dispositivos de nuestro sistema y buscarlo nosotros mismos (directo- tio /dev). + La otra y més facil es (siempre como usuario root) tipear la siguiente linea una vez que nuestro dispositivo Palm quiera sincronizar. Wl proveedor). La cuestién es la si- Jivlonce: entre nuestra red e Internet va- jor a instalar un servidor NAT. Ese widor NAT. estaré compuesto por de red. Una de elas estar aa Internet y la otra a nuestra ( privada, Ahora bien, la funcién de we NAT seré la de tomar todos los pa- tes que provengan de la red privada ue tiene direcciones IP privadas que jo son validas para Internet), enmasca- os cn un solo paquete y enviarlos a ernet. Cuando las peticiones vuel- el NAT desenmascara el resultado Jo distribuye entre las maquinas que Wvieron las peticiones. Légicamente, paquete enmascarado sale median- J placa que esté conectada a Internet pposce una direccién IP real. importante mencionar que antes de- nos tener las dos placas de red confi- sndas correctamente y una de ellas de- tener la conexién a Internet ya esta- Con esta informacién veremos ct son exactamente los dispositivos d nuestro puerto USB. De esta manera vamos a crear un enlace directo: # In -s /dev/dev/ttyUSB1 /dev/pilot Ahora podemos hacer uso de las her mientas cldsicas de la consola gracias la aplicacién pilot-link (que podem: descargar de http://sourceforge.net projects/pilot-link), Las utilidades de esta aplicacién son: * Backup de todo nuestro dispositive pilot-xfer /dev/pilot -r backpalm + Instalacién de nuevas aplicacione pilot-xfer /dev/pilot -i programita. * Listar todos los programas de nuesti equipo: pilot-xfer /dev/pilot -L Para ver ayuda sobre estas herramient podemos ver las paginas del manual comando pilot con man pilot. Como compartir la conexién a Internet en pocos pasos EL sistema NAT (Network Addy Translation) permite que muchos clied tes de una red tengan acceso a Interne utilizando sdlo una IP real (la que asig Figura 5. En el sitio de pilotink (www.pllot-link.org) podemos obtener informacion sobre esta aplicaci6n. blecida, Hay varias maneras posibles de conectar una placa de red a una cone- xién de banda ancha y esto varfa segiin el tipo de sistema que se utilice para ac- ceder a Internet (cablemédem, ADSL, etcétera), por lo que no vamos a entrar en detalles sobre este tema y nos dedica- remos a configurar el NAT. Supongamos que tenemos una red con direcciones IP privadas de tipo 10.0.0.0/24 (esto es, una red clase C). La referencia a Internet no se hace con la IP real ya que ésta generalmente cambia. Lo que se debe hacer es referenciar Internet como 0,0.0.0/0. Comencemos entonces por vaciar la tabla de cadenas del firewall y del NAT. El comando que vamos a uti lizar es iptables, que viene incluido con todas las distribuciones de GNU/Linux. Iptables permite tener varias reglas en di- ferentes tablas. La tabla NAT es la tabla en donde se definen las reglas de enmas- caramiento, En ella debemos crear una regla que defina que todo lo que sale ha- cia fuera sea enmascarado. Para eso usa- mos el siguiente comando: iptables -t nat -A POSTROUTING -p tcp 8 10.0.0.0/24 -d 0.0.0.0/0 -j MASQUE- RADE Analicemos un poco el comando ante- rior. Con el primer set de parémetros (+t nat -A POSTROUTING) definimos que vamos a crear una regla para la ta- bla NAT en la cadena POSTROUTING (to- do lo que sale). Luego definimos el protocolo tcp (con =p), las redes fuen- te (-s) y destino (-€) y finalmente la ac- cién (-j): enmascarar. Bien, ya tenemos gran parte del pro- blema resuelto. Ahora, en la tabla del firewall debemos crear una regla para permitir el paso entre las dos redes. Es- to se llama forwarding y se hace del siguiente modo: iptables -A FORWARD --in-interface etho ~-out-interface eth ~j ACCEPT Aqui trabajamos directamente en la ta- bla del firewall y por eso no definimos tabla. En lugar de trabajar con direccio- nes IPs, trabajamos con las interfaces: eth0 es la placa de red que esta conecta- daa nuestra red privada y ethi es la que esté conectada a Internet, En resu acabamos de definir dos cosas: la prim ra de ellas es que todo lo que sale nuestro NAT sea enmascarado. La gunda fue la de permitir el paso de quetes entre la red privada e Intern Bien, como diltimo paso, en el servi debemos activar el soporte de IP fo ding en el kernel, Esto lo hacemos € el siguiente comando: echo 1 > /proc/sys/net/ipv4/ip_forwar Cabe destacar que todos estos coma dos no quedan almacenados en ningi archivo, por lo que cada vez. que rei ciemos la computadora tendremos q escribitlos si queremos compartir ni tra conexién a Internet. Una buena s lucién es armarnos un script con tod estos comandos y que ese script se ej cure al iniciar GNU/Linux de fo automdtica (ya hemos visto cémo rea zar esto en un truco anterior). Ya he mos terminado nuestro trabajo en | servidor y ahora vamos a nuestros equi pos terminales para configurar en uno el acceso a Internet. Como se trata de una conexién trani Parente, lo tinico que debemos hacé en los clientes es tener la placa de re configurada correctamente con la IP regla (es decir, una IP valida en la !) y configurar la direccién del ser- lor NAT con el comando route. Si nox Windows (0 cualquier otro sis- \\ operativo en los clientes), enton- tendremos que ir a la configuracién qitorno de red y definir la IP de ietr0 nuevo router como Gateway ppusarcla). Pero volviendo a GNU/ wv, para definir un Gareway usa- ol siguiente comando: add default gw [IP_DEL_SERVIDOR] nalizamos el comando, veremos Jo que acabamos de hacer es crear ruta por defecto al gateway (pasa- ) en la direccién definida para el \dor. Sencillo, gno? 0 todavia nos falta algo muy impor- (ci definir las direcciones de los ser- Wlores de nombres en cada una de las imputadoras cliente, Si en el servidor IAT’ la conexién a Internet funciona yrectamente, entonces podemos to- 1 cl archivo /ete/resolv.conf y co- jlo en la misma ubicacién de cada 10 de los clientes, Bste es el archivo ji cl cual se ubican las direcciones IP los servidores DNS y el contenido ebe ser el siguiente: \eserver [IP_DEL_DNS1] iameserver [IP_DEL_DNS2] {Linvo! Probemos la conexién y, si algo fio funciona como deberfa, deberemos jovisar lo siguiente: * Asegurarnos de que el router esté co- hectado correctamente a Internet. # Asegurarnos de que eth0 sea la placa dle red que esté conectada a nuestra red local y eth1 sea la que esta conec- tada a Internet (podemos invertir los cables si hace falta). + Asegurarnos de estar escribiendo los comandos correctamente. Multitarea en el modo texto Una forma de aprovechar la multitarea de Linux es ejecurando procesos en background o segundo plano, El méto- do no es complicado y son muchos sus beneficios. Para ¢jecutar un programa de fondo, slo hay que tipear su nombre y un pardmetro que lleva de cardeter el simbolo & Hagamos una prucba sencilla: el comando steep lleva como parémetro un valor numérico, Una ver ejecutado, espera el tiempo determinado por ese va- lor. De este modo, si ejecutamos: sleep 10 El sistema entraré en un estado de pau- sa por 10 segundos. Ahora ejecutemos este mismo comando pero en back- ground, Para eso debemos tipear: sleep 10 & Y aucométicamente el sistema impri- miré el siguiente mensaj [1] 638 [root@myhost /root] # En la primera Ifnea tenemos dos valo- res: el primer valor nos indica el ni mero de trabajo que se estd ejecutando en background. El segundo valor nos indica su pid (process id o identifica cién del proceso). En la segunda linea, se devuelve el prompt para poder eje- cutar otros comandos. Una vez concluido el proceso, el sistema imprimiré el siguiente mensaje después de presionar la préxima tecla ENTER: [1]+ Done sleep 10 Esto significa que el proceso ha con- cluido. Para obtener un listado de los Procesos que se estén ejecutando ac- tualmente en background, sdlo hay que tipear el comando jobs. La salida de este programa serd un listado de procesos semejante al siguiente: jobs [1]- Running sleep 20 & [2]+ Running sleep 30 & Esta tabla contiene tres columnas: primera muestra el ntimero de pro en background, la segunda el est (Running: ejecutandose, Stopped: p do) y la tercera la linea la cadena cor pondiente al proceso en cuestién. Si queremos enviar al fondo un pr 50 que se esté ejecutando en este mi mento, debemos utilizar la combi cién de teclas CTRL + 2, El resultado esta combinacién serd la siguiente dena impresa en nuestra pantalla: [2]+ Stopped sleep 70 Esto nos indica que el trabajo esté par do en el fondo pero que no ha sido de truido y puede ser reanudado en c quiet momento. Para traerlo al frente nuevo, debemos utilizar el comando seguido de un signo % y el ntimero trabajo. En el caso de nuestro proc sleep, la linea completa fg %2 Por su parte, la combinacién de ted CTRL + Z envia un proceso al fondo pero Io) detiene. Para reanudarlo (en background), deberemos utilizar el comando bg con mismo formato que el comando fg. acceder desde Ubuntu a directorio compartido en red Wels veces nos encontramos con la eildad de lor re- M0 que tiene compartido algtin tipo wehivo que necesitamos de forma Witla, La manera mds comtin es crear seceso directo en nuestro escritorio, 40 claro, la forma de hacerlo en Linux Wls precisamente en Ubuntu no es i simple como copiar y pegar. Acé te- nos que crear un punto de montaje mide luego se puede acceder a ese re- #80 compartido, como normalmente dlenomina en informatica. iv ello tenemos dos opciones. Una de llis es editar un archivo de texto ubica- ly en etc llamado fstab, donde debe- 109 ingresar pardmetros bastante com- Pilbjos que quizds un nuevo usuario de icceder a un ser dd Linux no comprenda bien, La otra op- cién (bien gréfica) es mediante la accién incluida en Ia barra de herramientas central bajo el nombre de Lugares -> Co- nectar con el servidor. Ahi podremos co- nectarnos con nuestro servidor Win- dows 0 Linux donde tenemos los archi- vos tan preciados ingresando datos muy simples: en primer lugar la direccién IP de nuestro servidor (el nombre podria funcionar en algunos casos), luego el di- rectorio donde se encuentra el subdi- rectorio al que se desea ingresar seguido de la carpeta, el nombre de usuario, el grupo de trabajo y por tiltimo el nom- bre que deseamos que se vea reflejado en nuestro escritorio, jListo! Aceptamos una vez ingresados los datos y el monta- je estard activo: ya podemos trabajar so- bre éte como si estuviéramos parados en un directorio local. Figura 6. La edicién del archivo /etc/fstab es compleja y lleva mas tiempo que utilizar la opcién gréfica para acceder a un recurso compartido. (¥@ BONUS TIPS % 2 Secretos de Linux eos“ Trucos para consola del Hministrador § trucos para la consola de Linux! ste apartado Incluimos aquellos consideramos de suma utilidad los administradores de sistemas. Cémo hacer que todos los usuarios puedan montar la unidad de CDROM Por lo general, éste es un problema clé- sico de todas las distribuciones Linux. Esto es porque /dev/edrom cs un enlace de /dev/hde o de /dev/hdb y esos archi- vos son propiedad del administrador. Si nosotros queremos que cualquier usuario pueda montar y desmontar el CDROM, primero tendremos que sa- ber cémo tenemos configurado nuestro dispositivo CDROM. Esto lo podemos consultar de una forma muy simple: vdir /dev/cdrom o Is -1 /dev/edrom. Luego nos fijamos que en el archivo de configuracién /ete/fstab esté configura- do no con el enlace sino con su ubica- cién real (el dato que nos dio el vdir). Ahora sélo resta asignarle permisos para que cualquier usuario pueda hacer uso del CDROM. Para eso ingresamos: # chmod a+rwx /dev/edrom # chmod 666 /dev/edrom # chmod a+rwx /dev/hdb (/dev/hde) A partir de ahora, todos los usuarios del sistema podrén montar la unidad de CDROM sin problemas. Definir limites de uso de disco para los usuarios El sistema de quotas de disco permite definir limites de uso de particiones por usuario. Esto significa que un determi- nado usuario puede tener la posibilidad de escribir una N cantidad de megabytes uo debemos editar el archivo /ete/ que contiene un listado de todas |Particiones y los sistemas de archi- que se pueden montar en nuestro HI} ALIAS PARA NO TIPEAR en una particién, mientras que @ usuario puede tener un ntimero de megabytes disponibles 0 menor, giin lo hayamos definido. Ademds de: finir limites por cantidad de espaci utilizar, el sistema de quotas nos per te definir limites de inodos. Esto es tar la cantidad de archivos que se po almacenar por usuario y por partici Para instalar este sistema, es absol mente necesario trabajar con la cue de usuario del administrador (root). Antes de poder utilizar el sistema quotas, es necesario llevar a cabo ciert preparativos. En primer lugar, tenes que asegurarnos de que las utilida quota estén instaladas en nuestro si ma. Para esto, podemos ejecutar: que debemos hacer en este archivo es licarel sistema de quotas en las par- nes que deseemos. Para esto, en la le opciones de la particién (la tu columna), debemos agregar una opcién usrquota (para habili- por usuarios) o grpquota (pa- Habilicar limites por grupos). Enton- para el archivo de ejemplo, si supo- Jos que queremos limitar la utiliza- i del espacio por usuario a la parti- /dev/hda4, la linea de configura- ¢\n deberia quedar del siguiente modo: # quota Si el sistema nos devuelve un error de a mando no encontrado, entonces deb mos buscar el paquete quota correspoi diente a nuestra distribucién en los Cl de ésta. Los usuarios de Debian (y sus d tivadas como Ubuntu) se contentar: saber que con sélo ejecutar apt-get in: quota, tendrn todos los comandos ne sarios para utilizar el sistema. jev/hda4 = /mnt/datos fat. jer noauto,usrquota 0 0 ya vez realizadas estas modificacio- ‘Ws, procederemos a desmontar y vol- ver a montat las particiones con el sis- tema de quotas habilitado para que los cambios tengan efecto en el sistema. El préximo paso consistiré en crear una base de datos quota en la que se almace- naré la informacién del directorio (en el cual esté montada la particién) relativa al espacio utilizado, el espacio libre, el espacio utilizado por usuario, la canti- dad de inodos, etcétera, Para crear esta base de datos, utilizamos el comando quotacheck del siguiente modo. quotacheck -cug [directorio] El pardmetro ¢ le indica a quotacheck que queremos crear una nueva base de datos. Los pardmetros wy g le indican a quota- check que vamos a limitar por usuario y por grupos. Finalmente, [directorio] es el punto de montaje de la particién a la que vamos a aplicarle los limites. Una vez que se encuentra creada la ba- se de datos, le vamos a pedir al coman- do quotacheck que complete esa base con datos iniciales. Esto lo hacemos: con el siguiente comando: quotacheck -vug Ahora quotacheck se tomard un tiempo en completar la base de datos con infor- macién del tipo cantidad de espacio cocupado, cantidad de espacio ocupado por usuario, cantidad de espacio ocupa- do por grupo, cantidad de inodos, etcé- tera. En las particiones grandes y con mucha informacién, esto puede llevar un rato largo. Cuando este proceso fi- nalice, ya tendremos todo nuestro siste- ma configurado con el sistema de quo- tas y estaremos listos para imponer los Itmites que nuestros usuarios se mei can, Para definir limites por usuario, vamos a utilizar el comando edquota se- guido del nombre de usuario al cual va- mos a configurar limites. Veamos: edquota pedro Se mostrar en pantalla un editor de textos (que generalmente es VI) con un archivo que tenemos que editar. El ar- chivo esta estructurado en columnas de la siguiente forma: + FS: sistema de archivos en cuestién * Blocks: cantidad de bloques utilizados. * Soft: éste es el limite blando de can- tidad de bloques. * Hard: éste es el limite duro de canti- dad de bloques. * Inodes: cantidad de nodos utilizados, * Soft: l{mite blando de inodos. * Hard: limite duro de inodos. La primera columna es la particién. La segunda columna es la cantidad de espacio utilizado cn bloques. Luego se definen los limites de espacio a uti- lizar, El limite blando es un limite que cuando’ se alcanza se le advierte al usuario en pantalla, El limite duro es un limite que cuando se alcanza, el usuario ya no puede escribir nada mds hos mostrar la configuracién actual. {i esti todo bien, procedemos a habili- {iy los limites para la particién: en esa particién. Luego viene la lumna inodes, que es la cantidad de chivos actualmente almacenados por usuario y justo después, los limit blandos y duros de cantidades de chivos. Sencillo, gno? Veamos un ejemplo. Si en la partici /Aev/hda1 queremos definir que usuario pedro sélo pueda escri 10MB y 100 archivos, la linea que Hfa como la siguiente: (Wotaon [particion] V hora estaré todo funcionando, En {junto a grupos, el proceso es igual Ivo que para editar las quotas debe- W) usar el comando edquota con el metro -g. Luego podemos utilizar }/ mismo parametro del comando quo- {§ para verificar que los Ifmites hayan Ilo correctamente definidos. biar el intérprete de En este caso, sabemos que el usuario mmandos de cada usuario tualmente ocupa 5000 bloques de la cién /dev/hdat y que tiene un limite bl do de 8000 bloques y un limite duro 10000 bloques. En cuanco a la cantidad ¢ inodos, actualmente tiene tres archivos posee un limite blando de 70 archivos y limite duro de 100 archivos, Bien, habii do entendido esto, procederemos a coi gurar los limites segiin nuestras necesi des. Una vez que terminamos, pod guardar el archivo y volver al shell. Aho! para verificar que el archivo haya sido rrectamente configurado, utilizamos el mando quota del siguiente modo: Miiando el usuario ingresa al sistema, el Jntor de registracién (cl programa login) W oncarga de ejecutar el intérprete de co- Wundos configurado para ese usuario, ~ [isto se define en el archivo /ete/passwd y cl tiltimo pardmetro de cada registro ile usuario (Figura 1). En el siguiente | dlonplo, el intérprete de comandos para | usuario facundo es el famoso Bash. eer Cen ene Praeen teozen quota [usuario] Sera innocent [J uwriar ta consota ‘Alguien se acuerda del comando CLS de MS-DOS? Para aquellos que no lo conacen, se de un comando que limpiaba tod la informacién de la pantalla. En Linux hay dos forma hacer esto: con el comando clear o mediante ls combinacién de teclas CTRL +L, epee yea hy ive ean eres nent ae a “at io En resumen, el dltimo pardmetro de cada registro de usuario en el archive passwd corresponde al primer progra- ma que se cargaré justo después de que el usuario ingrese nombre de usuario y clave vélidos para iniciar sesién. Como deshabilitar un usuario temporariamente Suele suceder que el operador del siste- ma necesita deshabilitar un usuario, ya sea por mal comportamiento en el sis- tema, porque se va de vacaciones 0 porque no estaré registrado por un lar- go periodo de tiempo. Una de las ma- neras de realizar esta operaci6n es cam- bidndole el password (utilizando el co- mando passwd), aunque cuando este usuario intente registrarse en el siste- ma y note que su clave de acceso ha si do alterada sin razén alguna, podria llegar a sentirse ofendido. Piven Ree Figura 2. EI archivo /etc/passwd contiene a informacion del intérprete de comandos de cada usuario. Otra manera de realizar esto es cam- biar su shell por un script que sélo muestre un mensaje, Un ejemplo po- dria ser el siguiente: En este script, la primera Ifnea ejecuta el comando tail con el pardmetro +2. Este comando imprime en pantalla las dos tiltimas Iineas del archivo en cues- tién, que sélo son una cadena con un mensaje informativo. Aumentar la seguridad en NFS me El sistema NFS provee un sistema de se- guridad basado en hosts confiables. {Qué quiere decir esto? Que el tinico fil- t10 que nosottos como administradores disponemos para definir quién ingresa y quién no es utilizar el ntimero de IP de cada méquina. Ahora bien, esto puede presentar algunos problemas. El mas importante de ellos es que desde un cliente monten un directorio nuestro como usuario root, Seguramente no que- Temos que esto suceda porque si alguien monta un directorio exportado como usuario root en el servidor, posee acceso total a él. Para solucionar esto, podemos utilizar el parémetro root_squash en la definicién del directorio exportado (en el archivo /etc/exports). 7 Veamos un ejemplo: yilbilidad relacionada con el ma- Aisuuarios es la de mapear hacia jurio que no sea nobody. Para es- i))04 cl pardmetro anonuid (o anon- “{jlievemos mapear el grupo tam- ih siguiente es un ejemplo de ello: En este caso, si alguien quiere mont recurso llamado directorio_publico usuario root, éste seré mapeado ha usuario nobody. Otra opcién que mos es definir que autométicamen mapee hacia el usuario nobody para’ quicr usuario, lo que evita grandes blemas de seguridad en los director sélo leccura. Veamos un ejemplo: poclemos ver, se mapea a todos los 0 hacia el UID 1000, GID 1000. ficil de administrar cuando jimos el acceso de pocos clientes. qué sucede cuando tenemos mu- Realmente se hace muy dificil ad- ine cl mapeo de usuarios. Por esta \ NFS nos ofiece un sistema de de- Jn de archivos de mapas por clien- ( podemos definir toda una tabla de 0 especifica para cada host de nues- (Para esto, en el recurso a exportar (0s utilizar el pardmetro map, static iyo}. Veamos un ejemplo: De esta forma, usando all_squash, ¢ quier usuario que monte este dis tendré los mismos privilegios qu usuario nobody. También podemos : pear hacia nobody cualquier usua rango de usuarios o cualquier grup rango de grupos. Esto lo hacemos con pardmetros squash_uids y squash g ‘Veamos unos ejemplos: Como vemos, el archivo es muy senci- Ilo. Primero se indica qué es lo que se va a mapear (una ID de usuatio o una ID de grupo), luego se especifica el valor re Wii decimos que al directorio para- moto (0 rango de valores remotos) y ynpartir slo se podré acceder desde después se especifica el valor local. hove Hamado maquina1, que tendré mapa de usuarios en el archivo /ete/ ‘ maquinai.map. Ahora, veamos un Hacer copias de respaldo jemplo de ese mapa: con pdumpfs En este ejemplo mapeamos hacia usuario nobody a todos los usu; que tengan UID entre 0 y 50, ya dos los grupos que tengan UID ent y 50. Légicamente, podemos camb estos valores para que se adecuen nuestras necesidades. Pdumpfs es un sistema simple para reali- zar copias de respaldo (backups diatios) de forma similar a dumpfs, que guarda réplicas diarias del sistema, Cuenta con la posibilidad de acceder a réplicas anti- guas en cualquier momento, Si conjuga- mos Cron con pdumpfs tendremos un potente sistema de backup, Veamos un ejemplo de su uso: $ pdumpfs directorio_para_back directorio_destino [nombre_backup] Pdumpfs crea la réplica AAAA/MM/DD en el directorio de destino. Todos los archivos originales se copian al direc- torio réplica (destino) cuando pdumpfs se ejecuta por primera vez. A partir de la segunda vez y en adelante, pdumpfs s6lo copia archivos nuevos 0 actualiza- dos, y almacena los archivos sin modi- ficar como enlaces duros a los archi- vos de la réplica del dia previo para ahorrar espacio en el disco. Cémo bloquear el ping Los crackers, al realizar un ataque in- formético de cualquier tipo a nuestro equipo, deben tener la certeza de que el equipo responde a una accién determi- nada. Para esto, necesitan conocer la direccién el nombre con el cual se identifica en la red, luego proceder a lh APROVECHAR LA MEMORIA AL eld fumos la consola, abrimos otra y con fomando sereen -list podemos ver las s que estén en sereens. ejecutar un comando llamado pi ver si obtiene respuesta (0 sea, | equipo esta encendido). Podemos protegernos contra los_ ignorando cualquier comando I (internet Control Message Protocol to se realiza de forma muy simple un solo comando: echo 1 /proc/sys/net/ipv4/iemp_« ignore_all Para volver al estado anterior, tet que cambiar el 1 por 0. yen muestra que estén corriendo dos yrocesos con los ntimeros 6719 y 6777. Poclemos llamarlos para continuar en ese Screen: una herramienta momento o despues para retomar la tarea. Para administradores TS oe § sereen -Dr 6719 Esta aplicacién se utiliza mucho. administrar servidores via consol que permite continuar con las tarea ejecucién aun cuando la ventana se rre. Antes que nada tendremos que talarlo, aunque la mayorfa de las d buciones lo incluye de forma nati lo podemos encontrar en sus repos rios originales. Su uso es muy sim se antepone el comando sereen a mando que se quiere encapsular. Ahora la aplicacién estaré de nuevo Bence a niiestros ojos, Como crear una cuenta de usuario sin contrasefia “rear una cuenta de usuario sin contra- sefia en nuestro sistema puede set de utilidad en varios casos, aunque tam- bién puede ser causa de un alto grado de nseguridad. Esto quedard a criterio del administrador encargado del servidor. Para realizar esta tarea, nos valdremos del comando passwd del siguiente modo: $ screen top mln passwd -d nombre_usuario Y cada ver que este usuario ingrese al sis- tema, no necesitard tipear clave alguna. Como controlar la actividad de la impresora desde la consola Para manejar la impresora de form: simple y cémoda desde una consola, va mos a utilizar los comandos Ipq, tprm } pe. Una de las cosas que podemos hace con estos comandos es verificar desde l terminal el estado de la cola de impre sién, Para ello, vamos a tipear: Ipq -Printer -1 La opeién -L se utiliza para ver toda la in- formacién de cada trabajo. Si queremo: cancelar un trabajo, vamos a utilizar comando Ipnm del siguiente modo: Iprm -Printer - user [numero-de-trabajo] La opcién - borta todos los trabajos de la cola especificada 0 la que haya por defecto, y con el mimero de trabajo s« borra el trabajo al que el sistema haya otorgado esa identificacién. Vale agregar que el comando Ipe no: permite comprobar el estado de la im- presora y controlar algunos aspecto: de su utilizacién. Usar Netcat como escaneador de puertos Si no tenemos un escaneador de puer- tos a mano (como Nmap), podemo: usar Netcat. Existe un pardmetro Ila- mado -v (verbose) que informa en pantalla un deralle del estado de la co- nexi6n. Si lo usamos dos veces, nos da- rd el doble de la informacién. Ahora bien, para usar Netcat como caneador de puertos, tenemos que uti lizar el pardmetro -2 (zero entrada y sa- lida). Con este pardmetro le indicamos que sdlo queremos saber si se puede es- tablecer la conexién pero no queremos enviar ni recibir ningdn dato. Final- mente, sélo tenemos que indicarle a Netcat cudles son los puertos que que- remos verificar si estén abiertos. Vea- mos un ejemplo: ne -v -v -z 10.0,0.100 20 22 23 25 110 Con este comando le estamos pidiendo a Neteat que se conecte a 10.0.0.100, que nos informe todo lo que sucede durante el intento de conexién por la pantalla y que no envie ningtin dato. Finalmente, le estamos pidiendo que haga el intento con los puertos 20, 22, 23, 25 y 110 (Figura 2). Backup diferenciales con rdiff La utilidad rdiff-backup oftece la op- cién de realizar sencillos backups con historial diferencial para cualquier tipo de archivos, como enlace: Figura 2. Salida del comando ne cuando intenta establecer comunicacién con diferentes puertos. Para hacer una copia de respaldo mayor parte del directorio ~/ en backup sc usa el comando de la sig te manera: $ rdiff-backup —include ~/tmp /guardar —exclude ~/tmp ~/ /mnt/backup Lucgo, para restaurar los datos de siete dias de este archivo, en la ub cin ~/antiguo debemos escribir: $ rdiff-backup -r 7D /mnt/respaldo ~/antiguo Realizar un backup de todo nuestro sistema Esta es una receta para llevar a cabo tes de borrar cualquier distro d equipo, y ahorraré muchas horas de bajo ya que hace una copia de seguri de casi todos los aspectos del siste Creamos un archivo vacio llami back_sistema.sh y un directorio e1 llamado fback. Luego lo editan con cualquier editor y escribimos iguientes lineas: Wate script del sistema realiza la copia de Juxlos los archivos de configuracién im- Portantes, ademas de los directorios cl: ye como el que aloja a Xorg.conf (servi- tlor de video), los run Level, los archivos tle configuracién para el arranque, los Jy, la configuracién de nuestra red, la jeolucién de nombres mediante DNS ), por supuesto, todos los directorios jjersonales de nuestros usuarios. Al final del sc (oresantes: una de ellas es la que va gene- jar un archivo llamado espacio_disco.txt, ilonde veremos el avance de tamafio fico. Luego, la tiltima linea con el co- nando chown nos brindard la posibili- lid de cambiar los permisos para un ipt tenemos dos lineas in- usuario en especial. Cabe aclarar que si alguna de estas lineas no nos es de utili dad, podemos agregar delante de ella cl signo # para desactivarla. Como evitar los rootkits Los rootkits son herramientas (si ast sc Jos pueden llamar) que se instalan en un equipo y, por medio de diferentes artilu- gios, logran proveer al hacker de datos importantes, como por ejemplo la pass word de root o de algtin usuario del siste- ma. Generalmente, funcionan reempla- zando utilidades tipicas del sistema (co- ‘mo login, adduser o passwd) por emula- ciones de estas aplicaciones que se ven y funcionan igual, pero almacenan la in- formacién que procesan en un archivo para que luego el hacker lo descargue. Es muy comtin que los rootkits reem- placen la pantalla de ingreso al sistema por un programa que muestra login y password pero que, ademés de permi- tirle el acceso al usuario que esté sien- do engafiado, guardan esa informacién en un archivo sin encriptar para que el hacker luego pueda descargarlo. Muchos rootkits se pueden instalar des- de una cuenta de usuario comtin y co- mo administradores debemos tener la precaucién de mantener nuestro sistema libre de rootkits. Para esto existe una he- rramienta que se llama chkrootkit Gwww.chkrootkit.org), que analiza la integridad de las herramientas del siste- ma en biisqueda de diferencias que de- noten la existencia de un rootkit. Su uso es muy sencillo: una vez descargada, con s6lo ingresar el comando chkrootkit co- mo root desde una consola, estaremos verificando la integridad del sistema. Como poner Ia placa de red en modo promiscuo Los sniffers son utilidades que permi- ten escuchar todo el trifico de la red. Son muy utilizados para llevar a cabo técnicas de hacking, robo de claves, et- cétera. Para eso, desde un sistema se po- ne la placa de red en modo promiscua, lo que significa que comienza a escu- char todo el trafico de la red en lugar de prestar atencidn solamente a los datos que le envian, Bien, con ifconfig pode- ‘mos saber si nuestra placa de red estd en modo promiscua (no deberfa estarlo, pero lo esta si hay un sniffer instalado). Cémo detectarlo? Sencillo: debemos buscar una linea como la siguiente en la informacién del dispositivo: ‘UP BROADCAST NOTRAILERS RUNNING ‘MULTICAST MTU:1500 Metric:1 Cuando un dispositive esté en modo promiscuo se ve del siguiente modo: UP BROADCAST NOTRAILERS RUI PROMISC MULTICAST MTU:1500 O sea, ahora aparece la palabra en el estado de la red. Podemos placa de red en modo promiscuo comando ifconfig del siguiente m¢ ifconfig [dispositivo] promise Enviar y recibir archivos equipos de una red con nc Una funcionalidad muy inter Netcat es que nos permite transfer chivos de una maquina a otra sin dad de que haya un servicio como NFS 0 SSH montado. Simpk usamos el comando Netcat en I computadoras, de las cuales una a de servidor y la otra de cliente. P. viar un archivo de una méquina a en la maquina que va a recibir el vo escribimos el siguiente comando: ne -v -L -p 3000 -w 3 > [nombre_de, archivo] amos levantando un se dor en el puerto 3000 que redireccior todo lo que entre hacia un archivo do [nombre_de_archivo]. Desde el ahora tipearemos el siguiente comant ne -v [IP_receptor] 3000 < [nombre. archivo] Como vemos, en el emisor lo tinico hacemos es conectarnos al receptor su correspondiente puerto (en este « i cl 3000, pero se puede clegir lor otto siempre y cuando no esté Jgtin servicio en funciona verificar la integridad ma de archivos GNU/Linux hace un chequeo yal del sistema en cada inicializa- | es bueno que hagamos una veri- |én un poco més detallada por lo de la herramienta fsck. El for- » basico de este comando es: 3 opcion dispositive 9 si disponemos de una particién led-3, debemos uti n fock.ext2. Las opciones que permi- utilizar son las siguientes: sy: asummir siempre la respuesta y. 44; chequeo de bloques defectuosos. af) chequeo forzoso aunque el sistema gut marcado como limpio. sy; modo verbose. Un ejemplo de utilizacién de esta apli- cacién puede ser: fack.ext3 -p /dev/hdat ste comando buscard errores en la mera particién del disco. rigido principal y no hard preguntas sobre qué hacer con ellos. Si la particién que yaa chequear est montada, el progra- ma devolveré el siguiente mensaje: Cuando ocurre esto, es recomendable no continuar, desmontar la particién que se quiere chequear y tipear el co- mando de nuevo. Como configurar miiltiples IPs en la misma placa de red Si hay cosas interesantes para hacer, eso es definir dos direcciones IP simulténeas para el mismo dispositive. Esto es muy itil para armar firewalls més seguros con una sola placa de red, entre otras cosas. Para llevar a cabo esto, usamos el comando ifconfig del siguiente modo: ifconfig [dispositivo]:[valor] [ip] Veamos un ejemplo: ifconfig eth0 up 10.0.0.1 ifconfig eth0:0 10.0.0.2 El valor es un niimero que se le asigna al dispositivo virtual, en orden ascendente. Transferencia encriptada de archivos via SSH Cuando trabajamos de forma remota, los archivos que generamos se almacenan en el servidor. Esto puede presentar una difi- cultad ya que si necesitamos almacenar al- go de este proceso remoto de forma local, deberiamos usar algiin servicio de transfe- rencia de archivos como NFS o FTP. Si usamos el sistema OpenSSH (www. openssh.org), disponemos de un set de herramientas que nos permiten enviar y recibir archivos desde el servidor hacia nuestro cliente. Es importante destacar que para usar estas herramientas, debe estar el servidor sshd cortiendo en la méquina remota y debemos tener los co- mandos necesarios en el sistema local. OpenSSH nos ofrece dos herramientas para satisfacer nuestra necesidad de en- viar y recibir archivos. Una de ellas ¢s sep (0 Secure cp), que es una herramienta de copia segura con una sintaxis muy si- milar a la del comando ep de UNIX. An- tes de usarla, verifiquemos que esté ins- talado el comando en nuestro sistema: Bien, todo lo que necesitamos en cliente esta instalado. En caso de estarlo, nuevamente se pueden to los CDs de la distribucién que est usando e instalar las herramientas | cliente SSH. La sintaxis de este ¢ mando es muy sencilla. Si querem descargar archivos del servidor a nu tro host local debemos tipear: tenemos que trabajar decris » admin que abandoné su funcién, alquier caso, existe una forma de re- las claves, que ademas se puede wi para cambiar los permisos de las ta- sin problemas. Por supuesto, el pri- jpiso es apagar el servidor de base de con la siguiente linea: scp usuario@host_remoto:/[ruta_al_ chivo_remoto] . Entonces sep nos preguntard la clave o rrespondiente al usuario y luego proced réa copiar el archivo a nuestro sistema cal. Podemos notar que el tercer pi tro de este comando es un simple puni () que indica a sep que queremos desea gar el archivo al directorio en el cual es mos parados actualmente, En caso querer almacenarlo en otro directorio, s lo debemos ingresar la ruta complera a d En caso de querer enviar archivos local hacia el servidor, debemos usar el comat do sep del siguiente modo: nit.d/mysql stop i vamos a volver a iniciar el servi- MySQL indicdndole no tener en ninguna gestién de permisos: Jo, vamos a conectar con MySQL, password, a la base de datos principal gostidn (que Ileva el nombre mysql): sep [ruta_al_archivo_local] @host:/[ruta_destino] usual -h nuestro_hostname mysql 10s a brindarle permisos al adminis- or para todo (hay que indicar la A password): ‘Aqu{ la situacién es a la inversa ya q se indica primero la ubicacién local d archivo que queremos enviar y luego destino en el servidor. De mas esté d que slo podremos escribir archivos el servidor en los directorios en los q el usuario que estamos tenga per de escritura. Si estamos accediendo o mo administrador (usuario root), enton ces podremos escribir archivos en quier directorio del servidor. El paso siguiente es recargar los nuevos privilegios: FLUSH PRIVILEGES; Salir del cliente MySQL, apagar MySQL y volverlo a iniciar normal- mente con la siguiente linea: /etc/init.d/mysql start i¥ listo! De esta forma conseguimos ac- ceso a root en el servidor donde se aloja ‘MySQL y ya podemos resetear todo, @ BONUS TIPS 202 Secretos de Linux A Trucos para KDE y GNOME En este capitulo aprenderemos una completa seleccién de trucos para aprovechar al maximo tas infinitas uncionalidades que ofrecen los dos gestores de escritorio mas f populares: KDE y GNOME. Conexion automatica a la red en KDE Un problema clésico del entorno gréfico KDE es que cuando tenemos que acce- der aun determinado servidor, aparece la necesidad de ingresar en cada conexién un detetminado nombre de usuario y su contrasefia. Si estamos acostumbrados a acceder a recursos remotos en nuestra LAN, esta tarea es tediosa. Pero por suer- te hay una solucién: vamos a realizar una conexién predeterminada desde el pa- nel de control provisto por KDE deno- minado keontrol. Para ello, sélo debemos dirigimnos al ment principal, seleccionar Hecutar y escribir la palabra keontrol, De forma automatica vamos a ingresar al pa- nel, y deberemos ir a la solapa Internet y Red y dirigirnos a Navegacién por la red local. Allf ingresamos en la solapa derecha el usuatio y la contrasefia. Aplicamos los cambios y listo: la conexién se encuentra ‘tive ye hens aga (Bl aeer| sg inisaalinadas cer TRoeetiaee isonee face Merattenan wi 1 aves por la re tcat (Rear par | i ds aa ato cance pr al hans sr ‘nie en pra seta dia: It Deskctop/floppy.kdetnk gyi manera, se abrird un editor ba- y cn cl muy conocido Midnight ander con el texto de acceso al i nl debemos wlificar el valor contenido dentro de ia FStype=Default por FSType=v-fat. con transparencias Ue la versién 3.4, KDE viene con prte de transparencias, y la configu- idn cs muy simple. La totalidad de jonfiguracién se realiza, como pri- J) medida, desde el panel de control ntrol en la seccién Aspecto/Aspecto as ventanas y, en la solapa derecha, ntraremos Translucidez, que acti- (0s con tan sdlo un clic. Iniciar KDE de nuevo, seguramen- Yeremos un error que nos informa la ya definida para que se realice de era automédtica (Figura 1). Montaje automatico de disquetes bajo KDE Para montar de forma automitica disquete, sélo debemos abrir una co lay ejecutar el siguiente comando: necesidad de afiadir una linea dentro del archivo del servidor gréfico X.org. Para que los efectos de translucidez y opacidad funcionen en nuestro KDE, necesitamos contar con el servidor gré- fico X.org superior a la versién 6.8. A continuacién vamos a editar el ar- chivo gréfico xorg.conf ubicado en /etc/X11/xorg.conf, donde afiadiremos al final las siguientes Iineas: Reiniciamos el servidor gréfico con la combinacién de las teclas CTRL + ALT + RETROCESO, ingresamos nuevamente con nuestro usuario y ya tendremos ventanas transparentes (Figura 2). Figura 2. Habilitar las transparencias en KDE no es una tarea demasiado complicada. Navegar con palabras clave En Konqueror contamos con la posibi- lidad de definir palabras que nos servi- rin como atajos para los sitios més visi- tados en la red de redes. Para configu- rarlos, sélo debemos ir a Propiedades/ Configurar Konqueror/Configuracion de la navegacién mejorada, tal como mues- tra la Figura 3. Por ejemplo, al escribir gg:gnu en la barra de direccién, se abri- ri el buscador Google con palabra gnu. Particularidades de Konqueror Konqueror es mucho més que un sim- ple manejador de archivos. Esté lleno de funcionalidades que quiz nunca Ieguemos a descubrir por completo. Aqui hay algunas caracteristicas que lo hacen sumamente ttil y préctico. + Si presionamos CTRL + N podemos abrir una nueva ventana, Con CTRL + SHIFT + N podremos abrir una nut pestafia de visual * En el ment Edicion/Crear nuevo dremos acceder a toda una serie opciones relacionadas con la ctea de contenido. Desde una nueva peta hasta una pagina web. * En el menti Ver podremos person: zat la visualizacién de nuestto p: principal, entre otras cosas (Figura Ademés, también podemos camb la forma de vista (4rbol, lista, icom eteétera), poner una imagen de do y agrandar © achicar los icon entre otras opciones, * Con la tecla FS actualizamos la vi actual si es que hicimos cambios ra de Konqueror y éstos no se refl jan en la ventana, * En el ment Herramientas tenemos cesos rpidos hacia utilidades, co abrir una terminal, ejecutar un mando sin abrir una terminal o re: zat una biisqueda de archivos. Figura 4. Konqueror ofrece muchas formas diferentes de visualizacién de los archivos. KWrite Trucos para Este editor de texto no difiere mucho de Jos que ya conocemos, con las tipicas funciones de Abrir, Guardar, ¢ Imprimir en el mend Archivo y las funciones de biisqueda en el meni Edictén. Pero KWrite tiene algunas particularidades que veremos a continuaciéi * KWrite nos da la posibilidad de defi- nir marcadores visuales que nos permitirén encontrar més facilmente la informacién dentro de los archivos de texto. Para definirlos, sélo presio- namos la combinacién de las teclas CTRL + B en la linea que queremos marcar. Entonces, en el menti Marca- dores, nos aparecer4 la referencia al marcador que acabamos de crear. Pa- ra borrar un marcador, utilizamos la misma combinacién de teclas. + Si vamos a utilizar KWrite para pro- mar, es bueno saber que con la tecla F6 podemos habilitar la alineacién au- tomitica del texto, y con la tecla F11. podemos habilitar una columna que nos indica el ntimero de linea en la que estamos trabajando. En Herramientas/ Resaltado podemos definir en qué len- guaje de programacién estamos traba- jando para que automaticamente el c6- digo se coloree segyin las funciones y propiedades de ese lenguaje (Figura 5). + En el menti Herramientas encontrare- mos el Corrector ortogréfico. Antes de usarlo, es bueno chequear en la parte inferior de la ventana del corrector que el idioma del texto esté bien definido. EJECUCION DE PROGRAMAS * Con la combinacién de las teclas CTRL + U convertimos el texto seleecionado a maytisculas. Y con CTRL + SHIFT + U hacemos el proceso inverso. Trucos para KWord MainApplication-_ Interface => void quit() El nimero 19283 es una ID tinica esa instancia de la aplicacidn. Lo qui mos como tiltimo pardmetro es qui Ia funcién que obliga a la aplicacié cerrarse. Si hacemos clic sobre ese do, automdticamente QTVision se c 14, Pero, como mencionamos antes interesante de esto es poder usarlo en script. Para eso, usamos el cor deop del siguiente modo: > dcop qtvision-19283 MainApplicat Interface quit Sono177134 | Canstesete |-ClckAppet | -Ex@ookmarkMansjromotic keshare.| | Tixtookmannoter ‘KDebug | bicker ayeoce | Mainapptoabornteriace | menatanager | panel deft) | Welcome tothe KDE DGOP browser Figura 18. KDCOP nos permite develar los misterios ocultos en las entrafias de las aplicaciones de KDE. wera medida es editar el archivo iguracién Xorg.conf, disponible K11/xorg.conf. Alli buscamos a instalar los paquetes siguientes: install xcompmgr transset Una vez terminado, reiniciamos el servi- dor gréfico con la combinacién de teclas CTRL + ALT + RETROCESO y listo (Figura 16), Hacer magia com DCO Como ya hemos mencionado anterior- mente, DCOP es un sistema que nos permite comunicarnos con las aplicacio- hes que se encuentran en ejecucién por medio de mensajes. A continuacién ve- remos algunos ejemplos de mensajes que pueden ser tiles para usar en ciet- tas ocasiones 0 en scripts. El siguiente comando deop cierra la sesién de KDE: dcop kdesktop default logout Si queremos certar la sesién sin pasar por la ventana de confirmacién: dcop ksmserver default logout 0 -1 -1 Figura 16. Un escritorio GNOME con /as transparencias habilitadas. AJUSTAR A LA VENTANA Para maximizar una ventana: dcop konsole-7266 konsole-mainwin- dow#1 maximize Para bloquear la pantalla (lock screen): dcop kdesktop KScreensaverlface lock Si combinamos DCOP con scripts de Perl, por ejemplo, podremos controlar y automatizar cualquier herramienta de KDE. De hecho, las posibilidades que nos brinda son ilimitadas y sélo dependen de nuestra imaginacién. Cémo verificar si KDE esta en ejecucién desde un script Hay veces en que necesitamos verificar si el entorno KDE esté en ejecucién desde un script, y podemos hacerlo de dos formas. Una es con deop del si- guiente modo desde bash: jparimetro —password hace que cada ter que el usuario tipea sea represen- ) por un simbolo * para poder ingre- |nformacién confidencial como una de acceso. Podemos sacarlo si que- 108 que el usuario vea en la ventana de yo exactamente lo que esté tipean- KDiatog devolveré el dato tipeado por {uario, que podemos guardar, por juplo, en una variable de un script: La otra forma consiste en verificar di tamente el contenido de la variabl entorno $KDE_FULL SESSION, q crea cuando se inicia el sistema Utilizar diélogos de KDE desd nuestros scripts Si nuestros scripts se ejecutan baj modo grdfico, podemos condiment iiltimo, KDialog le ofrece dos botones los visualmente con didlogos de KI {iuario. Uno amado OK y otro llama- para que el usuario ingrese la infor Gancel. Podemos controlar cul de los cién. Esto lo podemos llevar a ¢ botones fue presionado simplemente sencillamente con kdialog, un com (tolando la variable de estado de sali- do incluido en KDE para este prop del comando kedialog (llamada $2). to. Veamos un ejemplo. Si en nue variable posee como dato un 0 (salida script incluimos la siguiente Ifneaz kdialog —password “Please enter the server access code:” Al usuario se le presentaré una vents como vemos en la siguiente figura: Figura 17. Ventana de ingreso de informacion generada por la herramienta kdialog. sin error), quiere decir que el usuario pre- sioné OK, En caso contratio (cualquier valor diferente a cero), habré presionado Cancel. Veamos un ejemplo: Como cambiar el gestor de ventanas en KDE Es posible utilizar el escritorio KDE con otro gestor de ventanas de nuestro agrado, como pueden ser ICEWm (F- gura 18) o Enlightenment. Piura 18. ICEWm es un excelente gestor de ventanas que consume muy pocos recursos. Para lograr esto tenemos que definir la variable de entorno KDEWM con el nombre del gestor de ventanas que queremos que se inicie cuando se car- ga KDE. Por ejemplo: que éste estuviera averiado 0 no exactamente lo mismo si presio combinacién de las teclas ALT + usamos las teclas de direccién del para controlar el puntero, Para hai s6lo debemos presionar la tecla Una vez presionado ENTER, se dé export KDEWM="icewm” Es importante recordar que las varia- bles de entorno se eliminan cuando se cierra la sesién, por lo que si queremos que esta variable se mantenga cada vez que ingresamos al sistema, debemos editar el archivo $HOME/.bashre y agre- gar la Itnea al final de éste, del puntero con el teclado, Si qu efectos permanentes, debemos Centro de Control KDE/Periférico (Figura 19) y en la seccién de nave ‘mouse con el teclado, Controlar el cursor del mouse Como hacer que el papel con el teclado en KDE tapiz de GNOME se cambie aleatoriamente Esta funcionalidad tuvo sus orfgenes en la década de los 80, de la mano de las computadoras Atari, que permitfan uti- lizar una combinacién de teclas para mover el cursor del mouse en caso de EI papel tapiz es una de las caract Figura 19. Opciones de! mouse en el panel KControl de KDE. tado al equipo. En KDE se puede ta automdticamente el modo de del mouse habilitar la opeién | ticas visuales mds utilizadas por to Jos usuarios de sistemas operatiy Luego de algunos dias, suele sucet WW aburrimos de ver la misma i) y yA NO nos parece tan intere- (omo antes. Para evitar esto, po- usar un simple comando que igri cl fondo de pantalla por uno 0 de forma aleatoria desde un di- lo de imagenes del usuario. El ilo es el siguiente: Script para cambiar el fondo de GNOME-Terminal de forma aleatoria El siguiente script permite cambiar la imagen de fondo de la terminal de GNOME de manera totalmente aleato- ria (Figura 20). Podemos incluirlo en el exon, por ejemplo, para que se ejecute en forma periédica. El directorio de image- nes est definido en la variable BGPATH, JROUND_DIR es el directorio que jenc las imagenes que se van a uti- eomo fondo. Cabe aclarar que és- ben tener extensién JPG. oe ar el ment tusados recientemente GNOME Yeces, por cuestiones de privacidad, urge la necesidad de eliminar los que aparecen en los menuis de re- temente usados, Esto lo podemos jer con el siguiente script: Figura 20. La terminal de GNOME puede mostrar una imagen de fondo. 0 cambiar el splash screen GNOME Con el siguiente comando podemos cambiar el splash screen (Figura 21) de GNOME (la imagen que se muestra mientras se carga el sistema): La imagen puede tener cualquier tamafio, y podemos hacer un splash screen que ‘ocupe toda la pantalla si queremos. Dominar la terminal Konsole Konsole es la aplicacién terminal in- cluida en la suite KDE (Figura 22), Vea- mos algunas funcionalidades que estan a nuestra disposicién: + En la esquina inferior derecha de la ven- tana hay un pequefio bot6n con un sol amarillo. Si lo presionamos, se crearé tuna nueva pestafia en Konsole para que podamos utilizar otra terminal virtual en simulténeo con las que tenemos, * En el menti Editar, encontraremos funciones tipicas de cualquier editor de texto, como por ejemplo Copiar, Cortar, Pegar, y las funciones para realizar buisquedas. + En el menti Marcadores podremos crear accesos répidos a los directorios que frecuentamos més comtinmente. * Por tiltimo, en el menti Preferencias, encontraremos todas las funciones rela~ Figura 21. sources | —> master Una vez que tenemos montada la dis- —> iso {Hibucién B, comprimimos para que peda ser ingresada en el tamafo de {in CD-Rom. Siempre debemos recor- ilar que la relacién es de 2 GB en 650 MB. Para lograr esta fiuncién necesita~ jyos el binario mksquashfs. # mkdir -p /mnt/{sources, master, iso} Descomprimimos las fuentes de G: en el directorio master: # tar -xvzf GARFIO-0,2-1 jinksquashfs /mnt/sources/ /mnt/ /mnt/master/ Testing.tgz -C jnaster/Distro/MIDISTRO.squashfs Debemos agregar la extensién squashfs yn que es el tipo de compresién que uti- iva Garfio, También soporta otro tipo {le compresién (CLOOP) pero no es re~ Y obtendremos la siguiente estruct de directorios en /mnt/master; /mnt/master/ —> boot comendable. Ahora vamos a configurar —> garfio | archivo /mnt/master/garfio/custom/ —> Distro qustom.conf de la siguiente forma: see] Figura ; 5: Garfio posee su propio sitio web en www.garfio.org.ar. Ali ‘scripts adicionales para crear distribuciones maeenne ee EL ICONO DE FIREFOX an Si usamos el nticleo y los médulos de Garfio, deberemos colocar el archivo mo- dules. squashfs en /mnt/master/Distro/: # ep modules.squashfs /mnt/master/ Distro/ YY la imagen del nticleo en /mnt/master/ boot/grub/: # ep vmlinuz /mnt/master/ boot/grub/ Podemos editar el menti de arranque del LiveCD editando el fichero /mnt/master/ boot/grub/menu.lst. Si queremos colocar un nticleo propio, deberemos colocar su imagen con el nombre vmlinuz en /mnt/ master/boot/ grub/, comprimir los médulos utilizan- do mksquashfs y colocarlos en /mnt/ master/Distro/. # mksquashfs /lib/modules/ modules.squashfs && cp ‘modules.squashfs /mnt/master/Distro/ En cuanto a la instalacién y deteccién de hardware, Garfio las realiza en for- ma automatica, por lo que nosotros mitica hay que descargar el Gen s6lo debemos concentrarnos en la per- Automitico del mismo sitio de G sonalizacién de la distribucién. Este es un didéctico script, muy int Ahora estamos en condiciones de decir vo, que necesitaré la aplicacién dialo que nuestro Live CD esté listo para ge- la distribucidn A. Luego esté el Geni nerar la imagen y luego copiarla a CD. dor Manual, que es un script de Como tiltimo paso, sdlo nos resta gene- plano donde podremos editar la rar la imagen ISO para grabarla en el _guracién comentando y descoment: CD y a disfrutar. las opciones que vamos a utilizar. $5 © @ leternstanicinciay ae aa an i a ly feciomi Ee vt tune natant #mkisofs -R -b boot/grub/stage2 ~no-emul-boot -input-charset 1S0-8859-1 Huevo de pascua en Opent -V NOMBREDETUDISTRO \ 7 -boot-load-size 4 -boot-info-table -0 En la suite ofimatica OpenOffice se ¢ /mnt/iso/NOMBREDETUDISTRO.iso cuentran varias caracteristicas. bas /mnt/master/ interesantes. Una de ellas es la de recrearnos un poco con un juego sim| desde nuestra planilla de célculo ( Figura 7. Si tenemos muchas solapas abiertas, acordarse las combinaciones de teclas para controlarlas puede ser de gran ayuda. En esta explicacién fuimos detallando to- dos los pasos y comandos a realizar, pero 6). Estas son caracteristicas ocultas Mauro creé dos aplicaciones que agilizan los programadores y no hace mucho y automatizan estas tateas que, tal vez a habia encontrado un denominado hi eno vamos al truco, para lo que ten-_ Comenzaremos por aprender a cerrar mos que ingresar en una planilla de las pestafias de forma simple y répida, leulo nueva y escribir, en la celda A1, algo que se puede lograr de tres mane- 4nusuario nuevo en el mundo de GNU/ vo de Pascua en esta misma suite, do} siguiente texto: ras. Una de ellas es hacer un clic sobre Linux, puedan resultarle dificultosas. de los mismos programadores se dabi la pestafia con el botén central del Para realizar estas tareas de forma auto- conocer ingresando sus nombres y fo OAME(“StarWars”) mouse. La segunda opcién es utilizar la combinacién de las teclas CTRL + F4, y hora, a disfrutar de un momento de _ la tercera alternativa es mediante CTRL » en nuestra oficina (sin que nos vea_+ W. Siguiendo con las pestafias, una uestro jefe, por supuesto). buena opcién a la hora de usar una por cada acceso a la Web es mantenerlas San Nee eine tt we meta Faas tapos et a Aba S SHOR BSSv¥ xOR-29-¢ O35 Be ei Sarre cant by Uda ue Sacarle jugo a Firefox Uy ue Hin muchas ocasiones encontramos que Jos usuarios de Firefox no utilizan mu- thas de las virtudes que tiene incluido ‘ste navegador. Quizd sea por costum- bre en el manejo de navegadores més simples (que no vale la pena nombrat). Por eso, aqui veremos algunas tips para poder sacatle el maximo provecho y tra- 1 de forma més rdpida (Figura 7). Figura 6. StarWars es un juego escondido en la planilla de célculo de OpenOffice. ordenadas. Esto se realiza de forma simple con tan sélo arrastrar la indica- da al lugar en el que nosotros deseemos dejatla. Y si por el contrario queremos abrir una pagina nueva sin cerrar la ac- tual, sélo debemos usar CTRL + T. Si deseamos aumentar o disminuir el ta- mafio de la letra que tenemos en Fire- fox sdlo debemos presionar la tecla CTRL y desplazar el botén central del mouse hacia arriba o hacia abajo segiin corres- ponda, También podremos utilizar las teclas CTRL + 0 CTRL - si es que no con- tamos con el scroll en el mouse. A continuacién veremos un resumen de combinaciones de teclas: * Para cambiar de pestafia: CTRL + TAB. * Para ira la siguiente pestafia: CTRL + AVPAG. * Para regresar una pestafia: CTRL + REPAG, CTRL + Shift + TAB. *Por medio del teclado numéri¢ CTRL + Nimero de pestafia. * Para realizar una biisqueda: F3, CTRL * Para posicionarse en la barra de d recciones: F6. i * Para ahorrarnos escribir www.dom nio.com escribimos el nombre d dominio y oprimimos CTRL + EN! En caso de un dominio .ORG debi mos presionar CTRL + SHIFT + E] y si fuera un dominio NET la co: binacién es SHIFT + ENTER. # Si tenemos varias cuentas, es recomen- lable crear algunas carpetas desde el inenti File/Folder/Create New Folder pa- 10 organizar mejor los e-mails. Luego, debemos crear una regla para redirec- cionar los mensajes a esa carpeta. Una forma ficil de hacerlo es en Tools/ Create Filter Rule/By To. Con esto apa- recerd un panel nuevo en donde pode- mos definir la direccién de correo electrénico que serviré de filtro y la carpeta a la que irin a parar los men- sajes filtrados. Muchas personas suelen tener pro- blemas para recordar sus nombres de usuario y contrasefias de los servido- res de e-mail. Para hacer la depura- cidn y ver en qué nos estamos equi- vocando, podemos utilizar la ventana de Log que incluye Sylpheed (algo que se extrafia en otros clientes de treo electrénico populares) presi Veamos una lista de trucos para cliente de correo: * Si tenemos varias cuentas de e-mail, po demos configurarlas en Configuration Edit Accounts. Luego podemos veri carlas todas juntas presionando el botdn Get all. Un detalle de interfaz: la primera que lo usa, todo el mundo se confun- de el botén Send (enviar) con Compo (componer). El primero envia lo mensajes a la cola de envio (aquellos que ya fueron escritos pero puestos espera). El segundo crea un mensaje de correo electrénico nuevo. sumamente liviano e ideal para 111] UBICAR LA BARRA LATERAL nando la combinacién de tecla SHIFT + CTRL + L. Esta terminal tam bién nos permitiré visualizar el. pro greso de la descarga de correo elec trénico con mucho detalle. * En el menti Tools podemos encontra una agenda (Address Book) muy sim ple de utilizar, compatible con Jpilot LDAP y tecnologia vCard. los sistemas con bajos recursos. Optimizar Firefox Uno de los motivos por los que Firefox consume mucha memoria es porque no libera ciertos recursos al ser minimizado. Esto se puede cambiar de forma facil. Primero abrimos una pestafia y escribi- mos la direccién about:config (Figura 9). Lucgo, en la lista enorme que aparece, hacemos clic con el botén derecho del mouse y elegimos Nuevo/Légico (New/ Boolean en inglés). En la cajita que nos aparece escribimos config.trim_on_mini- mize y le asignamos el valor True. Reiniciamos Firefox para que el cambio tenga efecto y utilizamos nuestra herra- mienta preferida para ver que, al ser mi- nimizado, Firefox utiliza menos memo- ria. Es muy titil para los que siempre lo tenemos que tener abierto, y es un tru- co que también funciona en Windows. Como usar VMware Player con nuestras propias imagenes de sistemas operativos VMware tiene una versién gratuita lis para usar en la mayorla de las distribi ciones, aunque con ciertas limitacion Una de ellas es que no nos permite una instalacién propia de un siste operativo y utilizarlo como maquina vi tual (Figura 10). La nica opcién que te dremos es bajar una determinada i gen de Internet con extensién .VMX as{ poder usar esa imagen. Bueno, para todos nuestros lectoi estuvimos investigando y les trae la solucién. No es simple... pero tai poco imposible. La solucién es técnicamente posible pasa por recurrir a QEMU, con la qi vamios a generar la imagen del disc lomavmdk. Légicamente, para po- lp \tilizar VMware Player y crear una wien propia debemos tener instala- yen nuestro GNU/Linux, QEMU y ware player (éstos son paquetes cl4- WW en cualquier distribucién cono ), Para crear una imagen de 6 GB «lremos que ingresar la siguiente or- i) desde la consola: qomu-img create -f vmdk jema.vmdk 66 q J\vego utilizar nuestro editor de texto wlerido para crear el archivo sistema. ix. Para eso podemos ingresar en la insola la siguiente Linea: Debemos introducir las lineas tal como se indica. Lo tinico que quizd necesite- mos modificar es la Iinea de configura- cién del CDROM y de la unidad floppy. Una vez que creamos estos dos archi- vos, contamos con una méquina virtual que podemos arrancar con wmplayer {ouch sistema.vmx Jespués tenemos que editarlo para in- slesar codo el texto siguiente: Figura 9. Desde el sistema de configuracién de Firefox podemos ‘modificar clertos parémetros para ajustar su rendimiento. Figura 10. VMware Player es un sistema que nos permite ejecutar un sistema ‘operativo contenido en una ventana gracias a la tecnologia de virtualizacic sistema.vmx. Con F2 entramos en la BIOS de la méquina virtual para habi- litar el arranque del CD y ast poder ins- talar cualquier sistema operativo utili- zando su CD de instalacién. Asimismo, podemos utilizar QEMU-IMG (del paque- te QEMU) para convertir de QEMU (formato QCOW) a VMware (formato VMDK), como también a otros forma- tos como VPC. Hay que recordar que para VMware, ademas hay que generar de forma manual el archivo .VMX. Auto guardado en Thunderbi En muchas oportunidades nos encon- tramos trabajando en la redaccién de un e-mail en Thunderbird y, por alguna ra- z6n inexplicable, se nos presenta la ma- la experiencia de cerrarse y todo lo re- dactado se borra de buenas a primeras. Por eso, aqu{ vamos a conocer la formu- la de auto guardado, que es tan simple como activar una funcién que, quién sa- be por qué, est4 inactiva por defecto. Para activarla nos dirigimos a Editar/ Preferencias/Avanzadas y ahi hacemos un clic en el botén Editor de configura- cién. En la zona superior de la nueva ventana escribimos autosave, modifica- mos el valor por true y listo. 1a configuracién se realiza desde la ba- sn de menti de Sylpheed seleccionando (onfiguracién y Preferencias comunes. Dentro de la pestafia Correo basura ha- litaremos la opcién Activar el control el correo basura. hora debemos seleccionar una carpe- ii donde colocar el spam (si no tene- ‘hos una la podemos crear ahi mismo). [iy importante que coloquemos el spam en una carpeta y no lo borremos \itomsticamente porque aunque los sos positivos son raros, pueden ocu: ir y nadie quiere perder un e-mail por una confusin de Bogofilter. ntes de que Bogofilter pueda empe- a funcionar hay que marcar una buena cantidad, que algunos reco- Iniendan que no sean menos de 100 e- inails spam y otros tantos que no lo sean, Para marcar correo como spam 0 gomo no spam debemos usar las op- Correcci6n automatica de ortografia en Sylpheed Para que al editar el correo se nos brayen las palabras que no figuren el diccionario que tengamos instala debemos seleccionar en la barra de n ni la opcién Configuracién y | Preferencias comunes. En Componer elegimos la pestafia C Probacién ortografiea y alli seleccio mos Aetivar comprobaci6n ortogr si hablamos castellano, en la casilla Idioma por omisi6n debemos colocar @ Listo, la préxima vez que editemos e-mails tendremos menos posibil de cometer errores ortogréficos. Filtrado de correo no deseado con Sylpheed Para filtrar el spam debemos tener programa de reconocimiento del co basura, El que viene preconfigurad (pero no preinstalado) con Sylpheed Bogofilter, que es muy bueno y send Ilo. En Debian y derivados com Ubuntu, la instalacién es trivial: BOGORILTER # apt-get install bogofilter bogofilter ~bdb bogofilter-common (Ging worse steaoybarteyo). ‘RBRIS Ge Sonos Os EVITAR LA VENTANA DE PROGRESO EN THUNDERBIRD aor ru by HOA eri aby on coming sea at, end wuancoand wt ond re stata Suc as ciones correspondientes en Mensaje en la barra de menti de Sylpheed. Una ver. que entrenamos a Bogofilter podemos disfrutar del filtrado aucomé- tico del correo basura, aunque no esté de més echarle una mirada répida a la carpeta de spam cada tanto, especial- mente al principio o si nuestros amigos suelen enviar e-mails que parecen spam. Visualizar e-mails HTML en Sylpheed sin usar Claws Este script debe ejecutarse desde Sylp- heed, para lo cual debe estar incluido en su ment Aeciones. Para ello debe- mos ir al mend Configuracién y selec- cionar Acciones. En Nombre de ment debemos poner el nombre con el que se identificard el script (por ejemplo, Ver mail como HTML) y en Linea de orden Saosin ote massage sae ae Saver (o0q) Te rogram ale ‘he ttl tecue8 kno he Bayes tached ne fo gam wt ‘yr Grav nbis wove Aiton Sa Augie 2908. Cony ogni wretan in. Suppared patos: Unt, FreeBSD, Si, 05 X HPUK, rom seule cas Some dats sp boottar Figura 11. En http://bogofilter.sourceforge.net podemos encontrar la diltima versién de Bogofitter. tenemos que escribir ~/.sylpheed-2.0/ sylpheed2html %f. Finalmente, hace- mos clic en Afiadir. También se puede especificar el directorio de Sylpheed como segundo pardmetro. Por ejem- .sylpheed-claws/sylpheed2html Para ejecutar el script hacemos clic en Herramientas opcidn Acciones y sclec- cionamos el script por el nombre gresado en el paso anterior, por ejem- plo: Ver mail como HTML, Para un correcto funcionamiento se re- quiere que esté configurado el navega- dor web. Para ello debemos ir al ment Configuracién y seleccionar Preferencias comunes, y elegir la pestafia Otras. En el campo Navegador Web completamos con el nombre de nuestro navegador fa- vorito seguido de %s. Ejemplos: galeon -n %s firefox %s opera -remote ‘openURL(*%s,new-page)’ mozilla %s Optimizar el funcionamiento de Firefox y OpenOffice Firefox y OpenOffice son dos de las herramientas que més enorgullecen a toda la comunidad del cédigo abierto. Ahora bien, las dos son consider grandes monstruos come-recuts ‘Ambas piden bastante memoria R y bastante CPU. Pero no hay que cuparse, porque hay algunas cosas) podemos hacer para que Firefo OpenOffice funcionen un po més rapido. Comencemos por el gador mimado del proyecto Mozi Normalmente, el navegador Fi hard una peticion HTTP por vei que vamos a hacer es habilicar el lining, que hard que el navegado} cione mucho més répido porque zar4 varias peticiones en forma sim nea, Para hacer esto, abrimos Fi en la barra URL tipeamos about: Una vez alli debemos buscar las | guientes secciones y definir los val correspondientes, a saber: jundos que transcurren entre que el gador baja una pagina y la procesa. gn esto, notaremos que navegamos cho més répido por Internet. cuanto a OpenOffice, todos nota- os que, si bien el programa tarda bas- te en arrancar, una vez que esta en incionamiento todo anda bastante bi- Por eso, con el siguiente consejo po- liemos acelerar bastante el inicio de network.http.pipelining = True )penOffice, aun en sistemas que tienen network.http.proxy.pipelining = True, ca memoria RAM. Dentro de Ope- network.http.pipelining. Office, debemos ir a Herramientas/ maxrequests = 30 jpciones. Alli, en la seccién OpenOffice. 9 vamos a la seccién Memoria de trabajo , cn la seccién Antememoria de Imagen, lefinimos el valor Uso de OpenOffice.Org ‘gn 30 MB. Luego, el valor Memoria por bjeto hay que definirlo en 2 MB. Si ce- jimos OpenOffice y lo volvemos a brit, notaremos un importante creci- Con esto, el navegador hard aproxi damente treinta peticiones simultane: Por tiltimo, presionamos el botén det cho del mousd tn un érea vacia y sele cionamos Nuevg/Entero. Le ponemos nombre nglayout.initialpaint.delay y_ valor, cero. Esto define la cantidad ¢ Tanto OpenOffice como Firefox (y Thunderbird) son herramientas que consumen muchos recursos, y no son recomendables para ser usadas en computadoras que cuenten con menos de 256 MB de memoria RAM. Algunos trucos para OpenOffice He aqui un pequefio listado de trucos que hemos seleccionado especialmente: + En Writer, para poder hacer un conteo de caracteres totales del documento, hay que ir a Archivo/Propiedade Estadisticas. + En Writer, podemos cambiar el color de resaltado si hacemos clic con el botén derecho del mouse en el botdn de resal- tado. Si lo mantenemos presionado se desplegaré en pantalla la lista de colores. + En Cale, si queremos que el texto se adapte al tamafio de una celda, debe- mos presionar con el botén derecho sobre la celda e ir a Propiedades y luc- go en la solapa Alineacién, seleccionar la opcién Corte de linea automatico. * Generalmente, las formulas de Excel no funcionan en Cale porque éste utiliza comillas para separar los argu- mentos en lugar de comas. + Entre Impress y PowerPoint hay varias diferencias. Lo mejor es hacer un docu- JES FIREFOX FOX mento en Impress, pasarlo a Power- Point para ajustar las diferencias y vol- ver a abritlo en Impress hasta que se vea cexactamente igual en los dos. Lo mas f&- cil, es guardar la presentacién en .PDF. + En Writer, si queremos que nuestros documentos puedan ser accesibles desde casi cualquier procesador de textos, debemos utilizar el formato RTF para almacenar los archivos. OpenOffice no funciona con las ma- cros de MS Office. Cuando trabajemos en cualquiera de las aplicaciones de OpenOffice, es conve- niente usar fuentes que sepamos que es- tin disponibles en MS Office, asf todo el mundo podré ver nuestras creaciones tal como las hicimos. Por ejemplo, po- demos utilizar fuentes como Times new Roman, Arial y Courier, entre otras. conectar a un equipo remoto y ¢ larlo de manera visual tal como si viera en la maquina real (Figura 12), sesién VNC colaborativa consiste muchas personas se pueden con escritorio del mismo equipo y ca tiene un puntero del mouse (es rm vertido). Ahora bien, el concepto es interesante pero al mismo tiempo ser un terrible caos (imaginense punteros del mouse yendo de aqui alld). Para solucionar eso, el siste comendado es Collaborative (www.benjie.org/ software/lim Haborative-vnc), que ofrece un sis muy versétil para controlar quién al mando. Generalmente, el pri que se conecta a la sesién de VNC que tiene el control. Lucgo, si se co! tan otras personas, hay varias form: manejar por turnos quién tiene el trol del escritorio. El método mas si Como hacer sesiones de VNC es delegar el derecho a la persona colaborativas queremos habilitar para trabajar. forma es un modo por el cual si al hace clic sobre el escritorio (y la per que tiene el derecho de control esta i Para aquellos que no lo conocen, VNC €s un sistema por el cual uno se puede Oi FUNCIONALIDADES DEL ICONO DE LA TRAYBAR DE AMAROK © Eliconito de aMarok ofrece mucha informacién y varias funcionalidades mientras el rep ductor esté funcionando. Veamos algunas caracteristicas: i + Si posicionamos el cursor del mouse sobre él, veremos un recuadro con toda la in macién relacionada con la cancién que se esté reproduciendo. q * Si presionamos el botén del medio del mouse, se pausaré la cancién actual, + Siel mouse tiene una ruedita, usdndola sobre'el icono se cambia el volumen de la canci * Si presionamos la tecla SHIFT mientras se usa la ruedita del mouse, se cambia la ubi cidn de reproduccién de la cancién. \ i wa ‘= Si presionamos CTRL mientras se usa la ruedita del mouse, se cambiaré de cancién, por mds de quince segundos) se le git automdticamente el control a esa ona yo vemos, Collaborative VNC ofte- varias formas de hacer que el trabajo varias personas sobre el mismo escri- Jo no sea un terrible caos. Es impor- fe mencionar que ésta no es una apli- jn per-se, sino que es un patch para popular TightVNC (que podemos argar de www.tightvne.com/down |heml). El patch en cuestién lo po- mos descargar de www.benjie.org/ ftware/linux/collaborative-vnc/ e-collaborate5.1.diff y para aplicarlo edigo fuente de Tight VNC debemos ilizar el siguiente comando: ch -p1 < ../vne-collaborates.1.diff we comando debe ejecutarse desde el cctorio vne_unixsre del paquete des- comprimido de TightVNC. El directo- rio con el contenido del patch debe es tar en la misma ubicacién que el direc torio vne_unixsre (como podemos ve por la ruta utilizada en el comande patch). Una vez finalizado el. procesc de modificacién, se procede a compilas TightVNC normalmente. Por ultimo, para ejecutar el servidor VNC en modo colaborativo debemo: tipear el comando Xvne collaborate. D. todas maneras, vale la pena leer la docu mentacién del patch para informarse 50 bre los diferentes pardmetros que per miten modificar el modo de trabajo Una tiltima recomendacién: seria buenc que la sesién VNC colaborativa fues cjecutada en una cuenta especial usuario en el servidor, en donde tanto ¢ escritorio como las aplicaciones estét especialmente dispuestas para el trabaj colaborativo. Por ejemplo, podemos at Figura 12. Con el sistema VNC podemos conectarnos 2 un equipo remoto y controlario como si estuviéramos all. mar un escritorio en donde los tinicos iconos que haya correspondan a los do- cumentes en los que se va a trabajar de manera colaborativa, Al mismo tiempo, nunca estd de mds poner algiin tipo de aplicacién de chat 0 un simple procesa- dor de texto para que las personas co- nectadas puedan hablar entre ellas, De todas formas, esto puede complemen tarse perfectamente con una sesién de Skype para que, mientras trabajan, las personas puedan charlar sobre el traba- jo, la vida, la familia, etcétera. Control de navegacién en Firefox Ala hora de controlar a qué sitios web en- tran nuestros hijos o hermanos pequefios, las opciones son bastante limitadas en el mundo de Linux. Hay soluciones muy buenas pero propietarias (pagas), y las gratuitas son bastante dificiles de co rar, De todas formas, hay una opcis termedia que, si bien no es tan comp como SurfSafe, es gratuita y fécil de Se trata de un plug-in para Firefox do FoxFilter (http://addons.m Ha.org/fire fox/4351) que nos p controlar qué sitios web serdn (Figura 13), Una ver instalado, i al panel de configuracién (Herrami FoxFilter preferences) ¢ ingresamo password por defecto que es foxtilt. bemos cambiarla inmediatamente, Una ver dentro del panel de con cién, podemos definir un listado de bras clave a buscar dentro de los sitios ra detectar el contenido no des También podemos definir en dénde bi card esas palabras (en la URL, en el’ tenido del sitio, en los meta tags, eta ra), Ademés, podemos definir algunos tios como excepcién (podemos pot aqui los buscadores como Google). de extensiones Firefox block (hetp://adblockplus.mozdev. ): bloquea las publicidades de todo . Basta con sefialar una publicidad, yetar el borén secundario del mouse definir que ésta no vuelva a aparecer. mite ingresar palabras clave para Juir dominios enteros desde los les aparece publicidad. @ FoxFilter - Access Denied ovine tm fe vai | Figura 13. FoxFilter nos permitird controlar cudles sitios web son accesibles (y cudles no) desde e! popular navegador. Geache ) (hetp://addons.mozilla.org/ \xtensions/moreinfo. php?id=301): a utilidad nos brinda un ficil acceso la versién cacheada de la pagina que stamos mirando. Las paginas cam- bian ef contenido, algunas incluso de- juparecen, Esta extensién hace uso de |n cache de Google para mostrarnos \ina versién anterior de la pagina en «uestién. Para eso, en el meni contex- (ual nos habilita una opcién Hamada (cache This Page. Flashgot (www.flashgot.net): permite conectar Firefox con los gestores de descarga més populares, tanto para Li- nux como para Windows. Se usa nor- malmente en las descargas. grandes 0 miiltiples en las que no queremos arriesgarnos a que un apagado involun- tario del navegador nos haga perder lo que Ilevamos horas bajando. Incluso podemos enviar a nuestro gestor de des- cargas multiples links de una sola ver. ColorfulTabs (https://addons.mozilla, org/en-US/firefox/addon/1368): co- forea las pestafias del navegador para que podamos identificarlas ficilmente, No es sdlo una cuestién de estética, si- no que ayudar a reconocer las pestafias sin tener que leer el titulo. Colorful Tabs este donot us the waren thing Fetoe 20, Forex 1 tie vi of caer 12 am Iperf orton 1 tats of te clon CuteMenus2_ (https://addons.mozilla. org/en-US/firefox/addon/6602id=660): del mismo autor que ColorfulTabs Ilega esta extensién que agrega iconos a los memis haciéndolos més atracti- vos. Tiene una funcién puramente es- tética, pero jqué bien queda! FireF TP. (http://fireftp.mozdev.org) es un cliente de FTP que se integra al refox. Si bien existen muchos clientes de FTP para Linux, éste slo ocupa 92 Kb, ¢s bastante intuitivo y soporta continuar la transferencia de archivos descargados parcialmente, No funciona de manera individual, es decir, necesita Firefox. Adsense Notifier (http://code.mincus. com/?p=3): muestra en la barra de estado de Firefox el monto que tenemos acumu- lado en nuestra cuenta de Adsense. Para quienes no son webmasters, se trata del programa de Google para ganar dinero poniendo avisos en Internet (en su mayo- rfa son avisos con solo texto). ea ‘a ost Popular» categories» Ee [aaa Fen ae Web Developer (http://chrispede com/work/webdeveloper): obligatoria para quienes hacen pi web, El listado de utilitarios agrupad esta extensién es muy grande para no} brar en este espacio. Permite editar est CSS de la pigina que estamos viendo’ aplicarlo en el momento), validar cédi ver fuentes de imagenes, ver detalle del formularios y un largo etcérera. Podedn dejar de envidiar el Gmail Drive ile Windows, ya que Gspace permite nar los 2 GB de espacio de Gmail co- no si fuera un disco remote. Del.icio.us buttons (http://addons. mozilla.org/extensions/moreinfo.php Hd 1532): nos permite guardar en li- shea las direcciones de nuestros sitios fa- pritos y compartirlos con otros usua- tlos. No importa desde qué computado- fi\ nos conectemos, nuestras direcciones favoritas estarén siempre disponibles. Uta extensién agrega un meni en el na- yegador para publicar en del.icio.us de manera mds cémoda. TargetAlert (www.bolinfest.cor targetalert): ;Quién no se encoi con la desagradable sorpresa de seguir t enlace y encontrarse con que se abi OpenOffice porque habia un .DOC? Lo mismo ocurre con archi PDF y .ZIP, que a veces los webma enlazan sin previo aviso. TargetAlert f muestra un icono al lado de cada link q lleva a algiin otto tipo de archivo (0 si va a la apertura de otro navegador). tinico problema es que la aparicién de tos iconos afecta la diagramacién de llos sitios que tienen calculada la posi de sus elementos pixel por pixel. En la d tima versién, el icono se muestra sédl cuando pasamos Ja flecha por encim aunque este comportamiento es regu: inorder to see on ite, you hove tog in ‘Tab Preview (http://ted.mielczarek. org/code/mozilla/tabpreview): cuan- do tenemos muchas solapas abiertas, a veces se hace dificil recordar qué hay dentro de cada una de ellas. Para ayu- darnos, Tab Preview nos muestra una pequefia imagen de la pagina sin tener que abrir la solapa. Es muy stil para ver si una pagina ya terminé de cargar. Permite configurar cl tiempo de apari- cién y el tamafio de la imagen. Greasemonkey (http://greasemonkey mordev.org): permite hacer modifies ciones a nivel local por si no nos gust el comportamiento de la pdgina tal mo fue programada por el disefiada del sitio. Incluso permite arreglar Lo bugs o agregar nuevas opciones. May flexibilidad, imposible. Gmail File Space (www.rjonna.com ext/gspace.php): los usuarios de Lim Google Toolbar (http://toolbar. google.com/firefox): a pesar de que Firefox tiene su ventana de Google in- corporada, esta extensién no es redun= dante. Viene con corrector ortogrifico en varios idiomas y para cualquier for- mulario que usemos, acceso para publi- car directamente en Blogger, traductor, autocompletado de formularios y bis- queda en los distintos servicios de Google. Otra diferencia con respecto a la ventana Google de Firefox es que a medida que vamos escribiendo, nos va dando sugerencias de busqueda. Blogger Web Comments (www.google, com/tools/firefox/webcomments): nos muestra qué es lo que opina la gente con respecto a cualquier pagina que es- temos visitando con un mensaje en la esquina inferior derecha. También per- mite dejar nuestra opinién sobre una pagina si es que tenemos una cuenta en Blogger (www. blogger.com). fit © pina de Aaetis lly Emacs son los dos editores mas populares del mundo de UNIX y de Linux Su flexibilidad y su cantidad de funcionalidades hacen de ellos los preferidos por los programadores, dminist}adores y usuarios. En este capitulo veremos una seleccién de trucos para sacar el maximo provecho de estas herramientas y un tutorial para los. us ios que nunca las usaron. Este tutorial tiene como objetivo apren- der a dominar las funciones basicas (y algunas avanzadas) del editor de texto Vi en la consola de Linux (y podriamos decir del resto de los sistemas operativos UNIX en general). Lo primero que ha- remos es asegurarnos de que Vi esté ins- talado con el siguiente comando: vi —version Se devolverd algo como lo siguiente VIM - Vi IMproved 6.2 (2003 Jun 1, compiled War 1 2006 20:29:11) Compiled by rootebet apple.com Normal version without GUT. Features included (+) or not (): -arabic +autocmd -balloon_eval browse #builtin terms +byte_offset +cindent -clientserver -clipboard +omdline_compl +cndLine_hist +cmdline_info +comments +oryptv +cscope +dialog_con *diff +digraphs -dnd -ebcdic emacs_tags eval ex_extra +extra_search -farsi +file_in_path +find_in_path +folding -footer ‘fork() -gettext -hangul input iconv. Hinsert_expand ‘+jumplist -keymap -Jangnap ‘Libeall +Linebreak +1ispindent +Listomds Hocalmap +menu ‘tnksession ‘modify fname +mouse -mouse -mouse_dec -mouse_gpm | mouse_jsbterm -mouse_netterm +nouse_xtern| 4multi_byte +multi_lang netbeans_intg -osfiletyp 4path_extra -perl +postsor: rightleft -ruby +scrolibind -signs +snart sniff +statusline sun_workshop +syntax +tag_binary +tag_old_static’ tag_any white -tel +te +termresponse “ +textobjects +title -toolbar tuser_conmands +vertsplit +virtualedit +visual | +visualextra +viminfo +vrep +wildignore *wildnenu 4writebackup -X11 -xfontset -xim -xsmp | xterm_clipboard -xterm sav system vimro file: "$VIM/ vino” user vimre file: vineo" user exro file: “SHOVE/. sexro” 4 fall-back for SVIM: ual share/vin" (a Compilation: gcc -c -1. -Iprote DHAVE_CONFIG_H dia -arch po -9 -08 -pipe |no| cpp-precomp -arch i386 arch pe, -pipe a Linking: gco -arch i986 -arch on -0 vim -Incurses Licony } J jo encendemos de qué se trata todo Hie texto, no renemos que hacernos Apblema, ya que lo importante es que J 40 encuentra instalado, Todo el res ye trata de un listado de librerfas y Hp» componentes de soporte que wibidn estén instalados. hora vamos a crear un nuevo archi y de texto para editar con Vi. Para Ip debemos ingresar el comando: Vi archivodeprueba V uparecerd la ventana de edicién que yomos en la Figura 4, Jip importante destacar que hay dos nodos de operacién de Vi. Uno de silos cs cl modo de comandos, que nos jyermite tipear comandos como abrir chivo, guardar, cortar linea, etcétera. Ui| otro modo es el modo de edicién, en 1 que podemos modificar el archivo de {exto a gusto. Para entrar al modo de GUIAS IMPRESAS Vies un editor que posee una gran cantidad de comandos y es posible que nos resulte dificil recordar siquiera un pufado de ellos, Por eso, nunca es mala idea armarnos una guia répida, imprimirla y tenerta cerca del teclado cada vez que vayamos a utilizar es~ te podsroso editor de texto, comandos debemos presionar la tecla ESC seguida del simbolo : (dos puntos), y para entrar al modo de edicién tene- mos que presionar la tecla ESC seguida de alguna de las siguientes letras: a: entra en modo de edicién y agrega el texto tipeado justo detrés de la posi- cién del cursor. i: entra en modo de edicién ¢ inserta el texto justo delante de la posicién ac- tual del cursor. A: afiade el nuevo texto al final de la If- nea actual indicada por el cursor. Figura 1. Un nuevo archivo creado con Vi. Ja hora de trabajar con grandes canti- dades de texto. El proceso de copiar y pegar en Vi implica tres acciones: co- piar el contenido, ubicar el cursor en la nueva posicidn y, finalmente, pegar el contenido en esa ubicacién. Para co- piar utilizamos algunas de las siguien- tes combinaciones del comando y. yw: copia una palabra. yS: copia todo hasta el final de la linea actual. hora desde la posicidn actual has- _y): copia todo hasta el final de la ora- final de la palabra. cién actual. iw: bora la palabra actual y las nue- _y: copia todo hasta el final del pérra- fo actual. I: inserta el texto al comienzo de la lib: mover el cursor hacia el comi¢ nea indicada por el cursor. de la palabra. 0: inserta una nueva {nea entre la I): mover el cursor hacia el inic nea actual y la linea inferior a la posi- préxima oracién. cién del cursor. (: mover el cursor hacia el inicio i oracién actual. Bien, ahora que sabemos cémo comen- }: mover el cursor hacia el inicio) zara editar en Vi, podemos escribir un prdximo parrafo bloque de cédigo y utilizar las flechas de 4: mover el cursor hacia el ini desplazamiento para acostumbrarnos a prrafo actual. su funcionamiento. Una vez que haya- : mover el cursor hacia el final del mos terminado, podemos usar algunos _chivo. de los siguientes comandos: * Para guardar el archivo y continuar También disponemos de algunas ails entramos al modo coman- _ binaciones de teclas para desplaza préximas. r te y costs el comando a __ por la ventana de edicién: q \ borra todo lo que hay hasta el final _5¥: copia cinco Itneas, comenzando de ara guardar el archivo y salir del edi- CTRL+F: mueve una pantalla comp Ja linea actual. ta linea actual. tor entramos al modo comando y ti- hacia adelante. a i$; borra las tres préximas lfneas. Una ver que se copié el texto deseado, movemos el cursor a la ubicacién en Desinos el cominde say CTRL+B: mueve una pantalla compl ); borra codo hasta el comienzo de la téxima linea. v orta todo hasta el comienzo del donde queremos pegar el texto y pre- sionamos el comando p. Una caracteristica sumamente intere- sante de Vi es que nos permite trabaja con miltiples buffers de texto (es alge + Para salir del editor sin guardar el ar- hacia atrds. chivo, entramos al modo comando y tipeamos el comando :q!. Ahora vamos a aprender a modil inéximo parrafo. We tanita nuestro texto. El comando mds sim| ); borra la linea actual. prendernos los es x, que se encarga de reemplazat comandos para desplazatnos por el cardcter actual por otro indicado ju Pero... gqué sucede si nos equivocamos contenido de la ventana de Vi. Para a continuacién del comando (com a deshacer los cambios? todos los siguientes atajos es necesario por ejemplo rb). Para borrar cara \icno, Vi)nos ofrece varias herra- jientas para llevar a cabo las tareas de yestauracién del texto contenido ante- flormente en el buffer: presionar antes la tecla ESC para entrar en modo de comando: w: mover el cursor hacia la siguiente disponemos del comando x, que ac ta prefijos numéricos para defi cudntos caracteres se deben bori palabra. : i (por ejemplo 10x). Por su parte, el Ww deshace el diltimo cambio. a: orsyal inet hacia el final de la mando d es un poco més versétil. V VJ; deshace todos los cambios realiza- palabra. mos algunas combinaciones: dios a una linea desde que el cursor se posicioné en ella. tl: deshace todos los cambios desde el momento en el que se abrié el archivo. Hay que tener mucho cuidado con esta pein porque no se puede deshacer. Ahora veamos las operaciones basicas de copiar y pegar que tan utiles son.a i tuviéramos un montén de portapapeles en donde pegar muchos pedacitos de texto diferente). Los buf- fers estén definidos con las letras del al- fabeto (a,b,c, etcétera) y para hacer refe- rencia a que un comando de copiado y pegado trabaje con el texto de un buffer en particular, debemos usar el comando “[letra]. Veamos algunos ejemplos: “aBY: copia cinco Iineas en el buffer a. “b10dd: borra diez lineas de texto y las copia hacia el buffer b. “bp: inserta todo el contenido del buffer ba continuacién del cursor. asi como Poco a poco, vamos cubriendo todas las funcionalidades esenciales de un editor de texto, Ahora veamos o6mo realizar fun- ciones de busqueda. Para buscar una ca- dena en todo el archivo utilizamos el co- mando / seguido de la cadena que quere- mos buscar (por ejemplo /archivo). Vi posicionard el cursor en el primer resul- i Figura 2. El sistema de ayuda nos seré de gran utilidad a la hora de aprender nuevas funcionalidades de Vi. wa MINUSCULAS, MAYUSCULAS Es posible convertir una linea completa en letras minusculas 0 maydsculas con ta, combinacién de teclas ESC + guu para convertir en mintisculas 0 ESC + gUU para convertir en mayusculas. Joy y a los modos de trabajo. Vi es juior de texto muy completo (y iplejo), por eso seguramente la Hie scleccidn de trucos nos seré de \tilidad para descubrir todo el po- Jal que esta herramienta esconde. tado de la biisqueda. Para rep continuat buscando en el archiv zamos el comando //. $i esta tando a mitad del archivo, not que el comando / realiza biisq partir de la posicién actual del Podemos realizar busquedas| atrés del cursor utilizando el co 2 (por ejemplo archivo), Antes de terminar, vamos a mei un comando sumamente impo para poder continuar con nl abrendizaje de este editor deal 4 de scripts es la visualizacién, en conunil sholy,qite dos mug al Inchivos de texto, de caracteres ocul- tala inicial de ayuda de Viy nos hho imprimibles, como los retornos qué pardmerros podemos ucilialll custo. En Vi podemos visualizarlos obtener ayuda sobre algiin asped fl siguiente comando: particular del editor (Figura 2). Con esto llegamos al final de nuest torial de diez minutos de Vi. Es ing tante que practiquemos el uso de editor de texto con varios archivos porales para acostumbrarnos a los En donde sh es el nombre del shell que 7 se va a ejecutar (en el caso del ejemplo, bash). Una vez que terminamos de usar el shell, debemos util mando exit para volver a la pantalla de edicién de Vi cesidad tipica de los programa- dEn qué linea estoy? Una de las caracteristicas de Vi es que por defecto, no muestra en pantalla el niimero de linea en la que esté ubica- do el cursor. Para eso disponemos de dos comandos muy titiles: Vi ofrece un sistema de acceso répido ‘ila shell del sistema mientras estamos filitando nuestro Archivo de texto. Pa- fw acceder a la linéa de comandos, de- Nos indica en qué ntimero de linea es- td ubicado el cursor. UAL ES EL SIGNIFICADO DEL UNIVERSO Y DE LA VIDA? Oe Es posible que Vi tenga la respuesta a esta pregunta, :Dificil de creer? Para comprobarlo, tipear el comando th 42 y ver lo que sucede. Ademas, se rumorea por ahi que en basta con ‘ anto Grial Vi también estd guardada la informacién sobre dénde podemos encontrar él Si {debemos ingresar th holy-araill. Por ditimo, sj estamos muy desesperados y tipeamos thetp!, Vi nos dard un mensaje para calmarnos. Nos indica la cantidad de Iineas que posce el archivo de texto que estamos editando. Finalmente, si queremos ver una columna que nos indique el ni- mero de todas las lineas del archivo, debemos usar el siguiente comando: sset number Insertar el texto de un archivo en la posicién del cursor Vi nos oftece un sistema répido para insertar todo el texto contenido en un archivo definido en la posicién actual del cursor. Esta funcionalidad seré muy bienvenida por los programado- res que tienen que usar una misma porcién de texto en todos sus archivos de cédigo (por ejemplo, avisos de li- O GRABACION DE COMANDOS serie de cc Podemos grabar una para luego ej die cencia o declaraciones de archivo cabecera). Para hacer esto, tenel que utilizar el siguiente comand. at [archivo] En donde [archivo] es Ja ruta comp! nombre de archivo cuyo texto se q insertar en la posicién actual del Como insertar la salida de un. comando como texto en Vi 4 Muchas veces suele aparecer la neci dad de almacenar la salida de texto un comando como un archivo que pués se pueda editar. La forma tipi de hacer esto consiste en ejecutar el mando con un simbolo de redirecci namiento de su flujo de salida hacia archivo determinado (por ejemplo Is arehivo.txt) 0 editar ese archivo en Vi Pero... las cosas se complican cuan queremos insertar ese archivo en posicién particular de otro archi mientras estamos trabajando en Vi, Né ¢s para preocuparse, porque la soluciéi esté al alcance de la mano. Mientras tamos trabajando en cualquier archive podemos insertar la salida de cualquiel comando en esa posicién del cursor co el siguiente comando de Vi: 3! [comando] En donde {comando] puede ser cual- quier comando que devuelva una cae dena de texto, como por ejemplo: «1 banner “Hola Mundo” No tengo permisos de root para guardar este ai Muchas veces sucede que trabajando en nuestro propio equipo, abrimos un ar- * chivo que tiene permisos solamente pa- ra que toot lo modifique desde una se- sién de usuario comtin. Vi lo abrird sin problemas, nosotros lo editaremos, pero cuando lo queramos guardar, el sistema nos informaré que como no somos usuario reot no podemos guardarlo. {Esté todo perdido? {Claro que no! Po- demos usar el siguiente comando: sw {su root =eeat > %" iff proceder con la actualizacién del archivo. [DJ Atounas HERRAMIENTAS VISUALES Como realizar bisquedas_ sin respetar la capitalizacion de las letras Seguramente habremos notado que los sistemas de buisqueda tradicionales de Vi sélo encuentran resultados si la ca- dena de biisqueda es exactamente igual a la cadena encontrada (y con esto queremos decir que no haya diferen- ias entre las letras en maytiscula y mi- niiscula). Entonces, si buscamos la ca~ dena PERRO y en el archivo hay una so- — la palabra perro, Vi no la encontrard nunca porque las maytisculas y miniis- culas no concuerdan. Para realizar biisquedas sin importar si la capitaliza~ cién de las letras se corresponde entre la cadena a buscar y la cadena encon- trada, usamos el siguiente comando: sset ignorecase smartcase Guardar la configuracion en un archivo de texto Hay muchas opciones de configuracién ionamiento de Vi. Podemos i ird la clave de root antes de del funcionamien demo: meal gle utilizar el comando :set all para visuali- inet certo uti a ar nos permite visualizar la lin habititarta: lebemos usar el com: Vital zar en pantalla todas las opciones posi- bles (son muchas, hay que tener pacien- cia). Una vez que sepamos cusles son todas las opciones que nos sitven, pode- mos guardarlas en un archivo de texto que debe llamarse .vimre en nuestro di- rectorio personal. De esta forma, cada vez que abramos el editor Vi, todas las opciones set contenidas en ese archivo serin definidas de manera automtica, Como usar ventanas en Vi Ademds de todas las opciones que he- mos visto en lo que va del capitulo, Vi 80s sorprende con la posibilidad de di- vidir la pantalla en ventanas (Figura 3) y asf poder editar varios archivos en for- na simulténea. Para tipear comandos e control de ventanas debemos pre- ionar la tecla ESC seguida de la com! tacién de las teclas CTRL + W. El comando n se encarga de crear una nueva ventana. El comando h mueve el foco a la ventana de la izquierda, Figura 3. El editor Vi con Ia pantalla dividida en dos ventanas de edicién, * El comando j mueve el foco a la vei tana de abajo. * El comando k mueve el foco a ventana de arriba. * El comando U mueve el foco a la ve tana de la derecha, * El comando H mueve la ventana hi cia la izquierda. * El comando J mueve la ventana hi cia abajo. * El comando K mueve la ventana hi cia arriba. * El comando L mueve la ventana hi cia la derecha. * El comando w mueve el foco a k préxima ventana Como usar solapas en la ve ion 7 de Vim La versién 7 de Vim incluye la posibili- dad de usar solapas tanto en el modo gréfico como en el modo texto. De esta forma se simplifica muchisimo la edicién de miiltiples archivos en for= ma simulténea. Es importante destacar que esta caracteristica solamente fun- lona en la versién 7 de Vim (vi im- proved o mejorado). Para abrir una nueva solapa podemos war el comando :tabnew [archivo], que fe encargard de crear una nueva solapa y lubicar el contenido del archivo definido on [archivo] en ella. También podemos abrir multiples archivos en diferentes jolapas cuando iniciamos Vim por pri- mera vez. El comando vim -p archivol archivo 2 archivo3 abrird una nueva se- si6n de Vim con archivo en la primera solapa, archive2 en la segunda y archi- vo3 en la tercera. Por defecto, Vim sélo soporta hasta 10 solapas en la ventana de edicién, pero este valor lo podemos cambiar editando el archivo .vimre de nuestro directorio personal y agregan- do la siguiente entrada: set tabpagemax-[valor] Donde [valor] es el ntimero maximo de solapas que queremos que Vim soporte. Para movernos por la solapas podemos usar los OMmandos :tabn y :tabp (avanzar y retrocedersolapa). Si estamos en el modo gréfico, con hacer clic con el mouse en la solapa deseada podremos acceder a su contenido de manera auto- mética, tal como en las solapas de Fire- fox. Finalmente, el comando :tabs nos oO VIM EN MODO GRAFICO Si trabajamos mucho en modo grafico, en» tonces quizé nos resulte de mayor utilidad la herramienta gvim, una versién visual de Vim que utilizan las librerias Gtk, La mayor parte de las distribuciones ta inclu» ye en sus repositorios de paquetes. muestra en pantalla un listado de todas las solapas abiertas y el archivo que se esté editando en cada una de ellas. Tutorial de Emacs en 10 minutos Emacs es un editor de textos sorpren- dente no sélo porque incluye infinidad de funcionalidades para procesar archi- vos de texto sino porque ademas sco! de un sinfin de aplicaciones de todo ti- po: desde una simple calculadora hasta un psicélogo personal (3, leyeron bien). Creado originalmente por Richard Stall- man (actual presidente de Ja Fundacién del Software Libre y creador del sistema operativo GNU/Linux), Emacs. se ha convertido en una de las aplicaciones pi- lares de UNIX y Linux. Tanto es asf que tuna de las guertas tipicas de nuestro am- biente es la de los usuarios de Vi contra [DJ sackur automArico Podemos indicarle a Vi que realice un backup (copia de seguridad] automatico de cada archivo an- tes de guardarlo, Para esto, simplemente utilizamos el comando :set writebackup. El archivo de respaldo tendré el mismo nombre que €l archivo original pero con el agregada del simbolo -. los usuarios de Emacs. Lo cierto es que nunca se sabré cudl es mejor que el otto, y ambos editores resultan demasiado complicados de aprender para los usua- cios que recién se inician en el uso del sistema operative UNIX/Linux. Por eso, antes de ver algunos trucos para el popu- ar editor de texto de Richard Stallman, samos a realizar (al igual que con Vi) un tutorial que en diez minutos nos permi- ird tener una idea bastante clara de cé- no se utiliza esta herramienta. Somenzaremos por asegurarnos de que a aplicacién esté instalada. Al igual que son Vi, ejecutamos el comando emaes -on el pardmetro —version: 5 emacs —version Figura 4, Pantalla inicial del editor de texto Emacs. hie, no hay que decirle a Emacs que uieremos comenzar a escribir. Aqui lo yodemos hacer directamente y todos BF cocanidos los fadiarenacs por me- iio de las combinaciones de teclas “{jque son muchas!). Vamos a escribir algunas I{neas de texto [jira probar la respuesta de la aplicacién las teclas de desplazamiento. Luego Yamos a salir de la aplicacién con la gombinacién de las teclas CTRL + X CTRL 40, Cuidado que se trata de dos combi- fhuciones de teclas que se realizan una dlespués de la otra. Como se trata de un ichivo nuevo, Emacs nos preguntard si queremos guardar los cambios, a lo que dlebemos responder yes o no. Volvemos al editor y ahora vamos a sprender algunas combinaciones de te- this para desplazarnos por la ventana de edicién del texto: + CTRL + A: mueve el cursor hacia el comienzo de la Ifnea actual. * CTRL + E: mueve el cursor hacia el fi- nal de la Iinea actual. * CTRL + N: desplaza el cursor hacia la proximattinga. yplaza el cursor hacia la I{nea anteriér. * CTRL + V: mueve el cursor una panta- lla hacia delante. Si el sistema nos Iegara a devolver mensaje de error informéndonos que € comando no existe, debemos recurrir a crear un nuevo archivo de texto: emacs archivonuevo Como podemos apreciar (Figura 4), pantalla de la aplicacién es ligeramens te diferente a la de Vi. A diferencia de ee “fiir la ruta completa atiarchive. Sinaia hin weibtde hd as aOR * ESC + V: mueve el cursor una panta- lla hacia atrds. Recordemos que también podemos utilizar las flechas de desplazamiento y Is teclas de avance y retroceso de pé- gina. Ahora veamos algunas combina- ciones de teclas que nos permiten bo- rrar rdpidamente el texto: © DEL: borra la letra anterior. * CTRL + D: borra la letra actual. * ESC + DEL: borra la palabra anterior. © ESC + D: borra la palabra actual. * CTRL + K: borra todo lo que exista hasta el final de la Ifnea. Bien, ya sabemos cémo abrir archivos y cémo desplazarnos por ellos. Ahora vea- ‘mos cémo llevar a cabo algunas funciones basicas de edicién, Una de las caracteristi- cas de Emacs es que nos permite definir ‘marcas en diferentes ubicaciones del tex- MM -< aDONDE ESTA EMACS? 1 ms liviano que Emacs en términos| generalmente podemos encontrarto face de diseo requerido para su Grddaele aug n Los repositorios de ‘paquetes| listos para ser instalados- y usados, por lo que no hay problema si no funciona el comando emacs. Como otro ‘recurso, po demos cargar la, a de actuaizacin del sistema, y alli seguramente lo encontrar: ara llevar a cabo una serie de funcio- nes de edicién (como cortar y pegar). Pa- ta definir una marca, ubicamos el cursor en la posicién deseada y usamos la com- binacién de las teclas CTRL + @. Si ya exis- ta una marca, ésta serd eliminada y reem- plazada por la nueva. Ahora podemos mover el cursor hacia cualquier otra parte del documento de texto para definir lo que se conoce como regién. La regin es la zona comprendida entre la marca y la posicién actual del cursor. Podemos mo- vernos de un extremo a otro con la com- binacién de las teclas CTRL + X CTRL + X, Para cortar la regién completa usamos la combinacién de las teclas CTRL + W y pa- ra pegarla en otra ubicacién del texto usa- mos la combinacién de las teclas CTRL + Y. En realidad, fo que sucede cuando tipea- mos la combinacién de las teclas CTRL + W es que el texto se remueve del buffer de edicién y se envia a un buffer especial- mente dedicado al texto removido. Por lo tanto, podemos usar la combinacién de teclas CTRL + W para borrar cualquier re- gidn sin obligacién de tener que pegarla en otra ubicacién del archivo. Para continuar avanzando, la otra fun- cionalidad importante que debemos aprender de cualquier editor de texto es el sistema de brisqueda. En Emacs, bus- zar cadenas de texto es un proceso real- Wp sola ventana, tenemos que ubicar- os cn aquella que queremos que se con- Worta en la vista principal y presionar la Jombinacidn de las teclas CTRL + X 1. yjuramente, [a pregunta que surge es yt la posibilidad de editar dos archivos liferentes en dos ventanas diferentes. Ysto es muy simple: lo tinico que hay jue hacer es ubicar el cursor en la ven- fina que deseamos que contenga otro ichivo de texto y presionar la combina- ‘ln de las teclas CTRL + X CTRL + F para abrir un archivo nuevo. Y asf hemos Ilegado al final de nuestro {utorial en diez minutos de Emacs. Ya Jabemos todo lo que necesitamos para dar nuestros primeros pasos en Emacs! Una cosa més: es importante que nos acostumbremos a usar el sistema de ayuda contenido en la hetramienta para poder ir descubriendo nuevas po- sibilidades. Hay mucha documenta- cién contenida en Emacs y hay varias formas de acceder a ella: mente simple que incluye la utiliza de las siguientes combinaciones de tell * CTRL + S: busca una cadena hacia lante desde la posicién actual del cu * CTRL + R: busca hacia atrds. Veamos una caracteristica més Emacs: la de dividir la pantalla en m ples ventanas para editar el archivo diferentes zonas. Podemos presionar cualquier momento la combinacién d las teclas CTRL + X 2 para dividir lap: talla en 2 y visualizar diferentes zonas de archivo al mismo tiempo. Para mover cursor de una ventana a la otra usamos combinacién de teclas CTRL + X 0. Es muy importante destacar que pod mos realizar la division de la pancall cuantas veces sea necesatio, siempre con la misma combinacién de teclas, Si queremos volver al punto in ero il nh U PLANTILLAS DE COMANDOS ALigual que Vi, gada en algin lugar vi Emacs es un editor repleto de funcionalidades que se traducen en infinidad 4 comandos y combinaciones de teclas. Como es muy dilcit recordar incluso las més frecuen: tes, siempre es recomendable armarnos una plantilla de comandos, le para poder refrescar nuestra memoria répidamente, het imprimirla y tenerta pe- © CTRL + Ht: abre en pantalla un tutorial de primeros pasos sobre Emac: © CTRL + HI: abre el documento de hi- pertexto que permite navegar por to- do el sistema de ayuda de Emacs. * CTRL + Ha: Emacs solicita una cader de buisqueda y nos muestra todos los comandos y las descripciones que con- tengan esa palabra clave. a Habiendo hecho la descripcién corres- pondiente, ahora vamos a conocer los mejores trucos para sacarle el maximo provecho a este popular editor de texto Como abrir una terminal de comandos en Emacs Dentro de una sesién de Emacs, pode- mos abrir una terminal de comandos del sistema para ejecutar cualquier he- rramienta de la consola (Figura 8). Para esto, simplemente debemos presionar la Te Fatt Options BuFfere Tools Invoke Signas NeTp Figura 5. Podemos ejecutar un shell dentro de la ventana de edicién de Emacs. combinacién de las teclas _ peeing gorcior del Une cenrelaggee, Ml wiveurrer BACKUPAUTOMATICO bt) ain) Tod oe —_ de st a El minibuffer es ta linea inferior en d jemos editar el archivo .emacs para (global-set-key [£7] ‘yank) : de edicién, Una vez : mlb =a fecleamos comandos yrutas de arc gar algunas funcionalidades respecto. Pegar pciilles commen cerminamos de | Emacs: Allis preslonemds la barr intema de resquardo automatico: exit para volver al redo de Fe, (Conis estal coh figutsdanaleaestefnbe inlentwwelidocl ae ae Unciona- da, que es un sistema que ofrece E Hiconst use-backup-dir t) asignando las acciones de Copiar, Cor- 7 orio de backups tar y Pegar a las teclas F5, F6 y F7. Po- q backup-directory-alist (quote ((“.*”, demos utilizar el mismo sistema para /"))) asignarles otras funciones a otras te- . sar nimeros de version para los backups clas, Otras opciones son: a un directorio. Podemos borrar di version-control t \ es : torios y archivos marcdndolos con | itidad de nuevas versiones al- jlobal-set-key [kp-subtract] ‘undo) ; (pra de las aplicaciones més interesantes tecla D y presionando luego la tecla ee ae ce 2 ae ea de Em; s la jn ‘ Ens @ B de funcionar como gestor para borrarlos todos juntos. Estas 54 kept-new-versions 16 Para asignarle a la tecla - del keypad la s s. Para esto, debemos tipear el otras funcionalidades posibles: Gantidad de viejas versiones que se guar-, accidn deshacer. ‘mando emacs seguido de la rutaaun * La tecla V muestra el contenido d an (2) { | lirectorio del sistema de archivos. Por un archivo keptoldlverslen 2 (global-set-key “\C-1” ‘goto-line) ; jemplo, el comando emacs /Users devol-* Con la tecla R : se pueden renomb, Hi erd una pantalla como la de la Figura 6, archiva P mn Solicitar confirmacién para borrar versio- odemos utilizar las teclas de desplaza- aiento para movernos por los directo- ios del sistema de archivos, Usar emacs como gestor de archivos ; Para asignarle a la combinacién de las * Con la tecla E se edita un archivo. teclas CTRL + L la funcién ir a linea. to- * Con la tecla € se copia un archivo, } Copiar archivos enlazados Presio- + Con la tecla U se deshace el viltimd ackup-by-copying-when-linke ‘split-wi —— . — bi )-by-co] “wh dt) jlobal-set-key [£2] ‘split-window- amos la tecla ENTER podemos ingresar proceso de borrado, H a : vera me (global-set-key [£1] ’ Baca Ub ona Gul Tons Tools Operate Wary Rageip Tanediate SAT Tap Asignar teclas de funcién operaciones tipicas de edicién Para asignarle a la tecla F2 la funcién Ss aneannane de dividir una ventana de forma verti- Si nos molesta estar tecleando muchas cal y a la tecla F1 la funcién de elimi- combinaciones de teclas para cortar, co- nar esa divisién. piar, pegar y cualquier otra operacién que llevamos a cabo con cierta frecuencia, es- te truco ¢s ideal, Emacs nos permite asig- nar acciones a ciertas teclas (como las te- clas de funcién F1, F2, etoétera). Lo tinico que debemos hacer ¢s editar el archivo emacs ubicado en nuestro directorio per sonal y agregar las siguientes I{neas: (Otred oy nane (global-set-key [£5] ‘copy-region-as -kill) ; Copiar Figura 6. Es posible navegar los directorios de! sistema desde Emacs. Hacer a emacs un poco menos irritable Hay ciertas cosas de Emacs que luego de utilizarlo por un tiempo se vuelven irritables, aunque por suerte todas se pueden solucionar muy fécilmente editando el archivo de configuracién del perfil (.emaes, ubicado en el direc- torio personal de nuestro usuario) Veamos algunas de ellas: (setq inhibit-startup-message t) Deshabilita el mensaje de bienvenida. (fset ‘yes-or-no-p ‘y-or-n-p) 2Cansados de tener que teclear yes para confirmar las cosas? Con esta linea aho- ra s6lo habré que teclear y. (setq next-line-add-newlines nil) Se encarga de deshabilitar la creacién automatica de nuevas Ifneas cuando presionamos la tecla FLECHA ABAJO en la ultima Ifnea del buffer. Los juegos ocultos de Emacs La distribucién oficial de Emacs inclu- ye un paquete de aplicaciones y juegos desarrollados en el lenguaje LISP. Ac- ceder a ellos es muy simple: lo prime- to que debemos hacer es saber qué jue- gos tenemos disponibles. Para eso ti- peamos el siguiente comando: \s /ust/share/emacs/21.2/lisp/play FAVORITOS EN BUFFERS Podemos crear nuestro propio sistema | favoritos de buffers. Si trabajamos milttiples archivos, podemos registrarl todos y acceder @ ellos répidamente. asignaremos (as funcionalidades de gar a favoritos y Listar favoritos a las clas F1y F12 en el archivo .emaes de nu tro directorio personal: (local-set-key [£11] ‘point-stack-push) (local-set-key [£12] ‘point-stack-pop) (defvar point-stack nil) (defun point-stack-push () “Push current location and butfer onto stack.” (interactive) / (message “Location marked.”) (setq point-stack (cons (list (current. fer) (point) point-stack))) (defan point-stack-pop () “Pop a location off the stack and move'to_ buffer” (interactive) (i€ (ull point-stack) (message “Stack is empty.”) (switeh-to-buffer (car point-stack)) (goto-char (cadar point-stack)) (Setq point-stack (cdr point-stack)))) Este devolverd un listado de archivos. como el siguiente: 5x5.e1 gametree.elc dissociate.el | meese.el solitaire.elc bx5.el¢ dissociate.elc gomoku.el meese.elc spook.el ° | animate.el doctor.el gomoku.ele morse.el spook.ele aninate.elc doctor.ele handwrite.el. morse.elc studly.el blackbox.el dunnet.el handwrite.elo — mpuz.el studly.ele blackbox.elce dunnet.ele hanoi.el / mpuz.ele tetris/el bruce.el fortune.el hanoi.ele pong.el tetris.elc cookiet.el fortune. ele landmark.e1 pong.elc yow.el. cookiet ele gamegrid.el Jandmark.elc —-snake.el yow.ele decipher.el gamegrid.ele life.el snake.elc zone.el. decipher.ele gametree.el life.ele solitaire.el zone.ele Vamos a jugar, por ejemplo, al Tetris. Cargamos Emacs y presionamos la com- binacién de las teclas ESC + X. Ahora te- cleamos el nombre del juego sin la ex. tensién (en el caso del ejemplo, tetris). Aparecerd el juego listo para set disfru: tado, como vemos en la Figura 7. Como acceder a una sesion con un psicoterapeuta Luego de varias horas de trabajar coi Emacs, de leer sus tutoriales y de utili Te Eat Options ButFers Tools Tele sTetrist Tetris )=nL Figura 7. Podemos jugar al Tetris incluido en el paquete de Emacs. car sus interminables combinaciones te teclas para acceder a los comandos, »tobablemente necesitemos una sesién ‘on un psicoterapeuta que nos vuelva poner los pies sobre la tierra. 98 desarrolladores de Emacs. pensa- on en esto y decidieron incluir uno irtual. De hecho, el psicoterapeuta de Imacs es uno de los agregados mds po- vulares de este editor porque, més alld toda broma, es un juego muy diver- ido que ayuda a relajarse. ‘ara acceder a este ameno juego, s6lo ay que presionar la combinacién de 1s teclas ESC + X. Luego debemos te- lear el nombre del programa que va- 1os a ejecutar: doctor. a principal desventaja es que este rograma sélo responde a mensajes in- resados en idioma inglés, por lo que quellos que no dominen aunque sea 1 poco esta lengua, no podrén hacer 30 de sus bondades. Veamos una con- srsacién de ejemplo: ura 8. £1 psicoterapeuta de Emacs es un programa muy divertido Incluido en el editor. is so? (Bueno... ‘ale ak Jakes you think ¢ jgué te hace pensar que esto es asf?) : Good afternoon, Dr. nas tardes, Dr.). Y la conversacién puede durar horas y ras. Sélo hay que probarlo para ver Jp divertido que resulta este programa Jncorporado en la distribucidn estén- ilar de Emacs. Psicoterapeuta: How are you? brings you here? (;Cémo estés? te trae a verme?). Usuario: Well, I’m not ok... (Bu no estoy bien...). f ; o sobre nuestro futuro, Psicoterapeuta: Why do Re: los dias you say | (:Por qué decis eso?). 1 {No seria lindo que cada ver que in- jresamos a Emacs el programa nos de- Vuelva autométicamente algo sobre nuestro futuro para ese dia? ;Es muy Usuario: Because my girlfriend me. (Porque mi novia me dejé). Psicoterapeuta: Is it because your gi friend left you that you came to me? (ZY vienes a verme porque tu n via te dejs2)/ Usuario: Yes. (Si). ficil! Sélo debemos editar ely emacs de nuestro directorio personal y agregar las siguientes lineas: Y listo, cada vez que se inicie Emacs, se cargaré el programa fortune y se impri- mird el mensaje en pantalla. 157 202 Secretos de Linux 7 Optimizar el endimiento y la seguridad Todas las distribuciones de Linux estan pensadas para ser compatibles con la mayor cantidad de equipos posible, y por eso no funcionan de forma éptima para nuegtro equipo en particular. En este capitulo, veremos algunos consejos para adaptar el sistema a nuestro equipo ya nuestras necesidades. Ademas, dedicaremos una seccién a analizar formas de aumentar la seguridad. Gomo medir el rendimiento de nuestro eq ipo En general, el tinico que sabe exacta- mente cémo funciona el sistema es el propio usuario. ;Quién no se da cuenta cuando la computadora se vuelve una carreta. cuando intentamos abrir una imagen? Para evitar esto, lo mejor es co- nocer en qué situaciones ocurre. De més estd decir que si el sistema siempre est lento (0 sea, desde que inicia hasta que lo apagamos), entonces lo mejor serd cambiar de distribucién o hacer un ar- duo trabajo de afinacién. Pero cuando el sistema se vuelve lento sélo en ocasio- nes, lo mejor es utilizar alguna herra- mienta para saber cudndo ocurre, Para esto disponemos del t{pico comando top que nos informa en pantalla, entre otras cosas, cémo esté la carga del CPU, de la memoria RAM, el espacio libre y més, Si queremos algo més visual, Ktop (http://linux.maruhn.com/sec/ ktop.html) posiblemente sea la herra- ioe Figura 1. E1 monitor de actividad Ktop en accién. ‘ea! uumentadas y modificadas a lo largo Jn historia, y si bien Gentoo Linux es Iwtivamente nuevo en comparacién i) los ottos dos, es espectacular al mo- nto de querer optimizar nuestro NU/Linux ya que podemos compilar shutamente todos los paquetes que nos con las opciones y flags que wemos (mientras nuestro hard y el oprama lo soporte, si no nunca compi i), A diferencia de las otras dos dist iones, podemos hacerlo de forma wictica y sencilla gracias a un sistema ymado Portage, que automaticamente scarga de Internet el cédigo fuente del yuete que queremos compilar, busca dependencias (librerfas u otros pro- yas que necesite ese paquete para incionar o para poder compilarlo), des- gu los fuentes y los compila. De esta ma, podremos tener todos los paque- 4 compilados a nuestro gusto y optimi- alos para nuestro tipo de procesador. Un la pagina de Gentoo encontrare- nos documentacién en varios idiomas mienta adecuada. Nos informa tiempo real y con gréficos el estado rendimiento de nuestro sistema, usuarios de GNOME encontrardn | tre los apliques para la barra de herramientas que hacen cosas simil Las mejores distribuciones de G Linux para jugar al tunning. Dentro del mundo de GNU/Linux muchas distribuciones, y algunas permiten afinar el sistema de forma f fécil que otras. Debemos decidir distribucién nos conviene mds: una de instalar y configurar con todos paquetes compilados para que funel nen en la mayorfa de las PCs del m do o una distribucién que si bien es ficil de instalar y configurar nos da la bertad de modificar el sistema comp] y compilar cada uno de sus paquet Distribuciones como las del tiltimo ti son Debian (www.debian.org), Gento (www.gentoo.org) y Slackware (w slackware.org), entre otras. Estas distribuciones son de las Ww EL SERVICIO VNU ‘Algunas distribuciones incluyen preconti- ‘gurado un servidor de acceso remoto en modo gritico. Este es considerado un pro- tocolo inseguro ya que al igual que telnet, tampoco gestione los datos con encripta- cién, Por tal razén, si no to usamos, lo mas conveniente es desactivarlo. usarlo, ademds de los foros en donde podremos plantear nuestras preguntas © encontrar nuevas formas de optimi- zar nuestro sistema. Pero, como mencionamos antes, no todo es color de rosa. Lo que ganamos en velocidad de procesamiento en los programas al tenerlos compilados para nuestra PC en realidad lo perdemos compilando cada uno de estos progra- mas (para tener un sistema bésico con KDE se tarda 20 horas aproximada- mente entre la creacién del sistema de archivos y el diltimo paquete compila- do en un equipo actual). Figura 2. En el sitio oficial de Debian (www.deblan.org) hay muchas variantes de esta distribucion para diferentes plataformas y necesidades. 161 ne ee ne ee a ee eee es Debian que, a diferencia de Gentoo, ya viene con un montén de paquetes compilados. Debian incluye un sistema de instalacién en modo texto no dema- siado sofisticado, pero suficiente. En cuanto a la configuracién, précticamen- te no incluye herramientas de configura- cién visuales ni autodeteccién de hard- ware, por lo que también nos obliga a configurar todo a mano con la ayuda de un simple editor de texto. Una de las co- sas realmente interesantes de Debian es el sistema de actualizacién de paquetes APT que permite instalar y_gestionar aplicaciones instaladas de forma sencilla. Por iiltimo, casi todos los paquetes de Debian estén optimizados para funcio- nar en su maximo rendimiento. Slackware, por su parte, es considerada la distribucién de GNU/Linux més pa- recida al UNIX original. Como De- bian y Gentoo, no incluye muchas he- rramientas de configuracién automdti- cay nos obliga a configurar todo a ma- no. El punto flojo de Slackware es que Figura 3. Gentoo (www.gentoo.org) es una distribucién en la que hay que compilar de los fuentes précticamente todos los componentes del sistema. atin utiliza un sistema de empaqh muy ristico: el viejo .tar.gz. De mis esté decir que las distribue que autodetectan todo, que pre poco y que configuran todo de automatica no son ideales para ya que nos darén much¢ trabajo que las distribuciones com bian, Gentoo y Slackware. Esto s¢ a que éstas, al no tener casi nad configurado, nos dejan el camino para definir lo que queramos en I tener que eliminar decenas de conf taciones que nos son inutiles para configurar el sistema como queram os para mejorar la riencia de la usabilidad pitinuacién vamos a conocer algu- fecomendaciones para mejorar la ilidad del sistema operativo: ix tiene escritorios virtuales jie hay que aprovechar. Los usua- dows y Mac OS X que- Nn fascinados con esta funcionali- las versiones nuevas de KDE «luso es posible mover las ventanas lun escritorio a otro con sélo pre- jonar sobre el cuadrado que las re- yesenta en la seccién escritorios de Wi barra de tareas. ino de los mayores logros en cuan- (0 a usabilidad de Mac OS X es el slackware Se Se nae terete Evan Steadman ssoec emo ci eget Hn osetia en ay Snicmaaer mete ac an. RN aE ft es ot eae Figura 4. Slackware se considera una distribucién para entendidos ya que no ofrece muchas herramientas de autoconfiguracién del sistema. OPTIMIZAR LA USABILIDAD litera Exposé, que permite gestio- ahora los usuarios de KDE pueden wir las ventanas fécilmente. Por tener esa funcionalidad gracias a sjemplo, cuando tenemos muchas Komposé (http://kompose.berlios. Ventanas abiertas y no sabemos en de). La instalacién es muy sencilla y donde esté un programa en particu- no requiere de librerfas raras. Los Jur, si presionamos F9 todas las ven- usuarios de GNOME también tie- {unas se alejan de la pantalla para que nen su versién de esta funcionalidad podamos elegir cudl acercar. Bueno, llamada Skippy (http://thegraveyard. org/skippy-php). ot tenemos De- bian o un derivado, lo podemos ins- talar con apt-get install skippy. No es conveniente llenar el escrito- rio de iconos ya que éstos dificultan la visibilidad y la gestién de la in- formacién en nuestro trabajo coti- diano. En cambio, es mucho mejor utilizar los directorios que vienen los datos personales, quieran un dock (un panel ma de archivo rapidamente), infogami.com/Gimmi Yt cee er @mers ee ® Figura 6. Gimmie es un excelente reemplazo del menii de inicio para GNOME. creados en la distro para gestif * Aquellos usuarios de GNOMI aplicaciones mAs usadas y los bot para acceder a ubicaciones del ! Pi instalar Gimmie (htep://bea ps usuarios de KDE que quieran mds dosas en el escritorio y mAs funcionali- luda la hora de personalizar la barra J areas, deben instalar SuperKaram- (htep://netdragon.sourceforge. et/ssuperkaramba.html). c optimizar el proceso Inicio de Linux proceso de inicio de GNU/Linux es de los procesos més largos, cansa- sy tediosos para todo el mundo. Se {como minimo un minuto para en- 4 modo texto por una simple raz6n: gan muchos servicios. Ahora bien, mis probable es que no utilicemos hos de estos servicios que se estén ando en nuestra computadora, Por nplo, una instalacién tipica de De- | SuSE 0 Mandriva nos instala un dor de base de datos, mail, ssh, Ww OTROS SERVICIOS... fep, web, samba, etcétera. Muchos de esos servicios se cargan autométicamen- te al inicio, y si no los usamos, simple- mente estan allf para hacernos perder la paciencia cuando encendemos nuestra computadora. Entonces, lo que hay que hacer para optimizar el proceso de inicio de GNU/Linux es sacar servicios que no utilicemos. Més tarde, si necesitamos alguno de ellos, podemos cargarlo ma- rnualmente. Ya veremos cémo. /a 7. Si queremos adornar el escritorio KDE, SuperKaramba es una excelente opci6n. 408: El sistema GNU/Linux tiene definidos lo que llamaremos niveles de ejecucién. Un nivel de ejecucién es una definicién de qué servicios se levantan o se bajan se- giin el estado del sistema. Por ejemplo, el nivel de ejecucién correspondiente al inicio de la computadora tiene configu- rados los servicios que se cargarén al ini- cio. El nivel de ejecucién correspondien- te al apagado de la computadora tendré la configuracién de cudles son los servi- cios que deben ser bajados antes de apa- gar el sistema. Bien, lo que nosotros te- nemos que lograr es que en nuestro nivel de ejecucién del inicio sélo se carguen los servicios que necesitamos sf 0 sf para usar nuestra computadora. Es decir, aquellos que sean prescindibles vamos a quitarlos. Recordemos que si més ade- lante Jos necesitamos, los podemos le- vantar a mano. El nivel de ejecucién correspondiente al inicio del sistema es el tres 0 el cinco, dependiendo de si nuestra computadora bootea automdticamente en modo texto © en modo gréfico. Si utilizamos alguna distribucién popular que bootea de ma- neta automética en modo gréfico, lo mas probable es que el sistema boote en el nivel de ejecucion ntimero cinco. De todas maneras, para sacarnos la duda, IT iCUANTOS DEMONIOS! itar el archivo /ete/i buscar la siguiente I{nea: id:5:initdefault: Sien esa linea encontramos el ni definido, significa que el equipo b automaticamente en modo grifice cinco, vamos a ver cudles son los set que se cargan de manera automtica ¢4 do inicia el sistema. Para esto tigitnos al directorio /ete/re.d/rc5.d Jetc/xe5.d en las distribuciones Debian sus derivadas). Alli ejecutamos Is y nos contramos con los siguientes archivos: (Qué es todo esto? /proc/sys/net/ipv4/ip_forward Ahora si, vamos a analizar el funciona- miento de un DMZ (Demilitarized Zo- ne). Tal como vimos anteriormente, cualquier maquina de nuestra red ahora puede ser un servidor de Internet. El problema esta en que al existir una co- nexién directa entre Internet y una mé&- quina interna de la red, no sdlo tenemos que preocuparnos porque el proxy sea de red nueva, para allf poner el servidor web. Entonces podremos, mediante di- ferences reglas de firewall, aislar el paso nire la red del servidor web (que de thora en mds lamaremos DMZ) y la ted local. Habiendo explicado esto, simplificaremos el montaje de un DMZ en los siguientes pasos: seguro sino también porque esa na-servidor sea segura. Si alguien lo violar la seguridad del servidor, ent ces podré acceder al resto de la red. Entendiendo este problema, la idea sica del DMZ cs aislar al servidor resto de la red. ;¥ cudl es la mejor nera? ;Poniéndolo en otra red! Para tender esto, pongamos nuestra atenci en el proxy. Hasta ahora, esta méqui tiene dos placas de red: una conecta Internet y Ia otra a la red local en don estén todas las computadoras, La que es td conectada a Interner tiene una IP pi blica, y la que esta conectada a la red lo: cal tiene una IP definida por nosotro mismos, que es compatible con las IP de la red local. Bien, para montar un DMZ, necesitamos agregar una tercera placa de red al proxy con una direccién . Agregar una placa de red al proxy y alli conectar el servidor web. . Crear reglas de NAT para la red lo- cal y para el DMZ. Redireccionar todo el tréfico que entra al puerto 80 del proxy hacia el puerto 80 del servidor web ubicado en el DMZ. | Cerrar todo acceso desde ¢l DMZ hacia la LAN. ] Cerrar todo acceso desde el DMZ hacia el proxy. /| . Cerrar el acceso desde Internet a los puertos que no son , el 80 en el proxy. x > » a El secreto de la DMZ son los puntos 4 y 5. Si cerramos todo acceso desde la DMZ hasta la LAN, entonces en el su- puesto caso que alguien logre hackear nuestro sistema nunca podré pasar a la LAN, ya que se encuentra en una red diferente file 1 el proxy. Ahora veamés cémo traducir la idea explicada anteriormente a reglas de ip- tables. Para este ejemplo, supondre- mos que la placa eth0 esté conectada a Internet y tiene la IP 192.168.1.2, la placa ethi esté conectada a la red local y tiene la IP 192.168.10.1 y la placa eth2 est4 conectada a la DMZ y tiene la IP 192.168.3.1. Como vemos, son tres subredes diferentes. Como mencionamos antes, éste es un modelo basico, pero se pueden hacer co- sas mds complejas como dobles DMZ, montar un DMZ por servidor o incluso aplicar reglas de filtrado més estrictas en cuanto a los puertos abiertos del proxy. Lo que debe quedar claro es que el DMZ es un modelo de seguridad que permite independizar el servidor que tiene acce- so a Internet del resto de la red. As{, con un solo sistema estamos haciendo triple proteccién: por un lado protegemos a la red interna, por otro lado al proxy y por otro lado al servidor. Luego, si lo desea- mos, podemos agregar otro firewall en el DMZ y oto firewall en algunos equipos dela red interna. Todo depende del nivel de paranoia que tengamos. Existen ciertos casos en los que es necesa- rio transmitir informacin entre la DMZ y la LAN. Para esto, lo que debemos ha- cer es indicar explicitamente en el proxy que permitimos el paso de un puerto en particular. Es decir, no abrimos todos los puertos sino sélo el que necesitamos. Si abriésemos todos los puertos, no existiria DMZ. Veamos un ejemplo: iptables -A FORWARD -s 192.168.3.1 -d 192,168.10.1 -p tep —dport 5432 -j ACCEPT iptables -A FORWARD -s 192.168.10.1 -d 192.168.3,1 -p tep —sport 5432 ~j ACCEPT en los archivos de audio MP3, iG y .FLAC, en archivos de video y los cargadores dle sus aplicaciones. La i no termina ahi pero no vamos a ynbrar a todos, aunque podemos ver la completa en http://beagle-project. /Supported_Filetypes. {Hasta pode- 0s crear nuestros propios filtros! le corre un demonio (beagled), que | encargado de indexar nuestros da- . Por defecto indexa nuestro $HOME, 0 podemos especificar otras rutas, por plo, si tenemos nuestra musica en fo lugar. También podemos impedir beagled indexe ciertos directorios. oxlo esto lo hace de tal manera que no ta la actividad del usuario en la com- adora, aunque podemos especificarle ie indexe lo més répidamente posible ot ejemplo, cuando no vamos a usar la ), con los siguientes comandos: Debemos poner este cédigo ante bloquear todas las conexiones ent DMZ y la LAN. Utilizando el eje original, podemos agregarlo justo pués del comando echo. En resumen, lo que hacemos es los puertos en uno y otro sentido | que las dos computadoras puedan municarse sin problemas. Las herramientas de busqueda de la ¢ sola generalmente son buenas y pero no son lo suficientemente répi amigables para los usuarios que ni buscar en diferentes fuentes de infor cién. En toda computadora personal informacién contenida es mucha: do mentos de texto, archivos PDF, muisica y video, conversaciones de etcétera. Buscar esa informacién se ve una tarea tediosa si no contamos las herramientas adecuadas. Una de las opciones ¢s utilizar B (htep://beagle-project.org/Main_) una gran utilidad para buscar cosas, puede buscar en distintos dominios cot Podriamos utilizar esto cuando, por semplo, se activa el protector de pantalla. el sistema de archivos, en los e-mail Para buscar tenemos varias alternativ. Evolution y KMail, en las conversaciog | primera es-beagle-search, una inter de Gaim y Copete, y también en sus log fv gréficd“programada en Gtk#. Los en la caché de Firefox, en Epiph \suarios de KDE pueden estar més a Konqueror, en los feeds RSS, en las uusto si utilizan Kerry. Para los que pre- de Tomboy, en los archivos de las ieren la consola, beagle-query. Es bue- de oficina OpenOffice, en Abiword, archivos RTF, PDF, en archivos de ay da como los Manual Pages, Monod TextInfo y Windows Help (chm), en | imagenes (JPG, .PNG, .BMP, - no conocer la sintaxis de biisqueda, que es similar a lo que ya conocemos. Si nuestra busqueda proporciona demasia- dos resultados, podemos probar con la sintaxis standard si ponemos asteriscos, frases entre comillas, el signo menos (-) para quitar resultados que contengan una determinada palabra, palabras clave como OR (es case sensitive) para palabras opcionales. También hay otras opciones que se pueden tener en cuenta, como las propiedades de los items indexados. Pa- ra buscar items con una determinada fe- chao en un rango, se usa date:2007 (afio 2007) © date:200612-2007 (entre di- ciembre de 2006 y 2007, inclusive). Beagle indexa los metadatos de los docu- mentos. ;Cémo buscar ese .PDF que al- guna vez vimos y recordamos que el au- tor es Pepe? Con el comando: ext:pdf creator:Pepe. También podrfamos bus- car e-mails que hayan sido enviados des- de una determinada direccién de correo. Beagle soporta varios plug-in para reali- zar btisquedas. Por ejemplo, para Evolu- tion, Gaim, Kopete, etcétera. Estos plug-in pueden proporcionar nuevas pa~ labras clave para realizar busquedas. Con el comando beagle-query -keywords po- demos encontrar otras para realizar bis- quedas més detalladas. Finalmente, podemos buscar en deter- minadas fuentes. Por ejemplo, con la palabra clave type:IMLog buscaremos en. los logs de chat, o con filetyperimage s6- lo las imagenes. TIPS 202 Secretos de Linux Scripts en bash para aumentar la productividad Los scripts son pequefios programas que nos ayudan a automatizar procesos y asi aumentar l9/productividad. Este capitulo iAcluye un mini tutorial de programacién en bash para aquellos que atin no han comenzado a dar sus primeros pasos y luego una seleccién de los ifejores trucos para aprovechar al maximo ta potencia de este lenguaje. ?rogramar en la consola Tutorial de bash en 10 minutos Viucha gente teme con fervor utilizar a consola de texto, pero lo cierto es jue es muy titi para algunas tareas ad- ninistrativas del sistema. A medida jue nos vamos acostumbrando a la consola, descubrimos que son més y nds los comandos que tipeamos y el rabajo se puede llegar a volver cada rez més tedioso. Por eso existen los scripts. Basicamente, éstos son peque- ios programas (archivos de texto con yermisos de ejecucién, para ser mds -xactos) que nos permiten automati- ‘at tareas por medio de la programa- sién. De alguna manera, se podrian somparar con los archivos .BAT de DOS, aunque son algo parecidos pero nucho més completos. Aunque quizds yensemos que la programacién no es para nosotros, en realidad no es muy complejo porque no estaremos desa- ‘rollando grandes programas sino pe- quefias utilidades para facilitar nuestro dia a dia junto ala adminiscracién del sistema, Para aprender a hacer scripts 2n bash, lo tinico que necesitamos es an editor de texto y un poco de ganas de aprender. {Manos a la obra! Figura 1. Salida de nuestro primer script en bash. Como ya mencionamos, los scripts son mds que archivos de texto interpre tados. Por esta razén, vamos a iniciar ti editor de texto (Nano, Vi, Emacs 0 ¢ vo llamado archivo.sh (la extensién . nos servird de ahora en mas para identi Una vez que terminamos de tipear Iineas debemos guardar el archivo y s del editor de texto. Luego le otorga mos permisos de ejecucién con el si guiente comando: { chmod a+x archivo.sh Una vez concluido el proceso de desa- rrollo de esta pequefia aplicacién, vamo a ejecutarla con el comando ./hello. te devolverd en pantalla el mensaje que podemos ver en la Figura 1. Este pequefio script consta de tres If- neas. La primera indica que es un script de bash y debe ser interpretado por éste, La segunda sélo es un comen- tario (en bash, como en muchos otros lenguajes de script, los comentarios co- mienzan con el simbolo #). Por tiltimo, la tercera linea es el comando echo con un valor de cadena (el mensaje Hola Mundo!) encerrado entre comillas. Co- mo podemos deducir, el comando echo imprime la cadena en la terminal acti- va. El funcionamiento de este sistema ¢s sencillo y vamos a adentrarnos un poco més en su desarrollo. Lo primero que debemos aprender aho- ra es a manejar variables. Las variables nos sitven para almacenar datos en la memoria (como ntimeros, nombres de archivos o lo que fuera) para luego poder utilizarlos como datos en cualquier parte del programa. La definicién de variables en el lenguaje de script de bash es igual que la definicién de variables de entor- no. Si queremos defifir la variable edad con el valor 24 sdlo/hay que ingresar: Como vemos, no se utilizan espacios en- tre el nombre de la variable y su corres- pondiente valor. Es muy importante que respetemos esta propiedad porque si no bash romaré cada cadena (edad, el sim- bolo = y el valor) como un comando di- ferente. Ahora, si queremos imprimir la variable en pantalla, tenemos que utili- zar la misma funcién echo pero debemos pasarle como pardmetro el nombre de la variable precedido por el simbolo $. También es posible incluir variables en medio de una cadena, y se las llama de la misma manera. Por ejemplo: De esta manera, se imprimirén todos los caracteres encerrados entre comi- las y, cuando llegue a $edad se impri- mird el valor de esta variable. Desde ya que podemos utilizar las variables con cualquier comando de Linux. Veamos el siguiente ejemplo: Lo que estamos haciendo en este ejem- plo es pasar como pardmetro del co- mando eat la variable Sarehivo, cuyo contenido es la ruta al archivo tito.conf. También podemos guardar en una va- riable la salida de un comando. Veamos el siguiente ejemplo: Cuando ponemos el nombre de un co- mando entre comillas simples invertidas como valor de una variable, lo que esta- mos haciendo es que bash ejecute ese comando y guarde la salida en la varia- ble definida. Luego, tal cual lo muestra el ejemplo, podemos imprimir esos da- tos con la funcién echo que aprendimos antes. Cuanto mds juguemos y probe- Figura 2. Pasaje de argumentos a un script de bash. mos con las variables, més funcio des nuevas encontraremos. Uno de los recursos més utilizadas programacién de scripts en bash pasaje de pardmetros desde la Iii comandos, Para esto, bash proves serie de nombres de variables pred das. La variable $0 almacena el n del script, y las variables siguier $2, etcétera) guardan los diferent rémetros. El siguiente ejemplo no mitird aclarar estos conceptos: len, es hora de que el usuario del progra- jn ingrese algunos datos por medio del eclado, Este proceso es muy sencillo: hush utiliza el comando read para el in- peso de datos en variables. Su formato es: Joad [variable] Cuando la interpretacién del script lle- ue a este punto, esperard un ingreso dle datos proveniente del teclado y lo |rd almacenando en la variable indica~ da. Ahora desarrollaremos el mismo gjemplo de la seccién anterior pero utilizando esta funcidn, Si ejecutamos: ./argumentos.sh f arena el programa devolverd lo que demos ver en la Figura 2. Como seg mente habremos adivinado, la varia $* guarda todos los argumentos cone nados. Este método nos seré titil para creacién de scripts con miiltiples o nes, configuradas desde la linea de mandos en el momento de la ejecucié Prestemos atencién al parémetro -n en la funcién echo. Este hace que luego de la impresién del mensaje, echo no baje de linea sino que se mantenga en ésta. Para Figura 3. Utilizacion de fa funcién read para recibir datos del usuario por medio del teclado. OTRAS VARIABLES tae yenelns Heed fate oe bia buelintintiaate entender este concept, podemos probar el ejemplo sin los pardmettos -n en las funciones echo y veremos la diferencia, Ahora vamos a ver algunas estructuras que nos permitirda controlar el flujo de nuestros programas. Las estructuras condicionales son lo que hacen intere- santes a los scripts. Si las ultilizamos es posible crear menus con opciones, to- mar diferentes decisiones segiin una si- tuacién especifica, hacer preguntas, y un sinfin de acciones més. La mas famosa y utilizada de estas estructuras es el if con- dicional. Su forma bésica es la siguiente: Elif es la contraccién de else if funcionamiento es el mismo, Lo hace este script es pedirle al us que ingrese un niimero. Luego, ¢ si ese mimero es igual a 20 0 difer Para cada caso, muestra un corr diente mensaje (Figura 4). ‘Veamos un ejemplo utilizando los. luadores que vimos anteriorment La primera linea evalita la expresién entre corchetes, Si es verdadera ejecuta acciont y sis falsa, evalia la expresién de elif pa- ra saber si corresponde ejecutar accion2, Sila expresin de elif no es verdadera, sal- ta a la sentencia else y cjecuta accion3. Luego se cierra la estructura con un fi. Recordemos separar los corchetes de los valores de la expresién a evaluar y de su operador, como vemos a continuacién: Liste programa tiene la posibilidad de \dentificar si lo que el usuario ingresé es el nombre de un archivo o de un direc- {orio por medio de los operadores -d y - { que vimos antes (Figura §). Si el usuario Ingresé una cadena que no corresponde al nombre de un archivo o de un direc- (orio, devuelve el mensaje de respuesta Usted ingreso cualquier cosa. Ota estructura condicional es el case. forma basica es la siguiente: Figura 5. Ejemplo de utilizacién de la estructura if para determinar ‘si e! dato ingresado por el usuario es un archivo 0 un directorio. La estructura case evaliia la variable [va- riable] con las distintas opciones defini- das por el usuario. Si se cumple alguna, se ejecutan las funciones correspondien- tes a esta opcidn. También se puede usar el simbolo | que funciona como un 0, con lo que ambas opciones pueden ser vlidas (no es necesario utilizar la segun- da opcién). Cada opcién finaliza con un doble simbolo ; (j). Sino se cumple ninguna de las opciones, se ejecurard (siempre y cuando esté definida), la op- cién *. Por tiltimo, para cerrar la estruc- tura se utiliza esae. Veamos un ejemplo: read DIRECTORIO mkdir SDIRECTORIO ;; 4) echo -n “Nombre del usuario a crear: * read NOMBREUSUARTO useradd SNOMBREUSUARIO ;; 5) exit; *) echo “Usted ingreso una ‘opcién que no esta en el. menu” exit 1; esac exit 0 Este ejemplo le presenta un meni de opciones al usuario que permite ejecu- tar diferentes comandos tipicos de GNU/Linux (Figura 6) Ya casi tenemos todo. Ahora sélo nos resta aprender a crear funciones repeti tivas. Diremos que los bucles repetit Vos son estructuras que nos permiten re- petit una accién muchas veces. Bash so- porta los bucles repetitivos while (repe- ticién condicional) y for. El funciona- miento ¢s el mismo que en los otros len- guajes de script y programacién, La es- tructura del ciclo while es la siguienté while [condicion] do accion ra Figura 6. Ment de opciones creado con la estructura case. plo, por fa de que un script con ment requiere tervencin del usuario para funcionar. ccesitamos que un script tenga la po de cooperar con otros, es mejor sistema de parémetros. hay done Sila condicién se cumple, while ejectil accion1 y todas las operaciones siguich tes hasta que la condicién sea falsa, Ul cjemplo sencillo de while es el siguient #1 /bin/sh opcion-1 # Ponemos opcién en - para que el ciclo se cump Ja primer vez. while [ Sopeion != 0 ] do echo “opeion= Sopeion” echo -n “Ingrese un numero [0 para salir]: “ i read opcion done # esto finaliza el ciclo while slo programa entra en un ciclo en el We pide el ingreso de un valor infini Juinente hasta que se ingrese el 0 (Figu- 7). Notese que en la condicién del While los valores estan separados de los Wprchetes y de los operadores. Dito ciclo repetitive muy utilizado en J programacién es el ciclo for. Este jjermite ejecutar un bloque de funcio- fies una decerminada cantidad de ve- es, Esta cantidad puede estar definida por cl contenido de una variable. Ul funcionamiento de for en bash pue- ile parecer raro y complejo al comien- Jo, pero veamos el siguiente ejemplo para comenzar a conocerlo: #1/bin/sh # Ejemplo 5: uso del for. valores="1s° for x in $valores do echo “El valor de x es: Sx” done La variable valores contiene la salid: del comando Is (listado de archivos) Esto se logra asigndndole a la variabl el nombre del comando entre comilla invertidas. El for almacena en la varia ble x el valor que estd siendo ciclad Figura 7. Utilizaci6n de la estructura while para crear un ciclo infinito. Fans oh Figura 8. Utilizaci6n de la estructura for para procesar todos los items del directorio actual. dentro de la variable $valores. For reali- za un ciclo por cada valor dentro de la variable valores (en el ejemplo, uno por cada archivo). Por lo tanto, si tene- mos 10 archivos en un directorio, for realizar4 10 repeticiones del cédigo. ;Y con esto acabamos de aprender cémo procesar muchos archivos en un mis- mo directorio! (Figura 8). También es posible utilizar for del siguiente modo: De esta forma, for realizar cinco ciclos del eédigo especificado entre las senten- cias do y done. Podemos terminar un ci- clo repetitivo con la funcién break o el programa completo con la funcién exit. Los usuarios también pueden terminar el programa en cualquier momento con la combinacién de las teclas CTRL + ¢. Esta combinacién matard el proceso sin importar en qué estado se encuentre, por lo que es recomendable no in usuario a utilizarla si no esté col mente seguro de lo que hace. Como crear nuestras prop funciones en bash Podemos crear nuestras propias nes en bash. Esto es muy titil cua nemos bloques de acciones a reali podemos necesitar en diferentes del funcionamiento del prog ejemplo, podemos tener una fun que se lame borrar_arehivos que, utilizamos en cualquier momento, script, nos permite de manera autot ca borrar los archivos que se le pasan mo pardmetros. Esta es su forma bas Evaluacién de expresiones aritméticas en bash Si queremos evaluar una expresién sritmética tenemos dos posibilidades. La primera es escribiéndola entre cor- chetes y anteponiéndole el simbolo pe- sos ($). Un ejemplo serfa abe destacar que estas funciones p sonalizadas deben ser incluidas al pti cipio del cédigo y no al final como otros lenguajes. Si son varias, se pom una debajo de la otra. Si queremos lizar un llamado a la funcién, 9 mente se incluye el nombre y los p metros del siguiente modo: NUMERO=$[25*4+2] / is ‘También es posible utilizar variables dentro de la ectacién. tas podrin ser especificadas con 0 sin el simbolo pesos. Por ese motivo, NUMERO2=$[NUMERO-2] ¢s lo mismo que NUMERO2 =$[SNUMERO-2]. mi_funcion param1 param2 La segunda posibilidad ¢s utilizar la funcién interna let. Para ello, siempre debemos asignarle el resultado a una variable. Su utilizacién se muestra en el siguiente ejemplo: let X=$X+1 El funcionamiento es bastante intuitivo: se resuelve la ecuacién que se encuentre ala derecha del signo igual (=) y el resul- tado se fe asigna a la variable indicada a la izquierda de éste, Como se ve en el gjemplo, siempre ¢ necesario asignarle cl resultado a una variable. Ademés, ca- be destacar que siempre que se utilicen variables dentro de la ecuacién, se las deberé utilizar con el signo pesos ($). Veamos otro ejemplo: Dentro de la funcién creada, los pi metros se Ilaman igual que en todd los scripts bash ($1, $2, evcétera). Ves mos un ejemplo de esto, cuya salid podemos ver en la Figura 9: Figura 9. Utilizaci6n de las funciones creadas por el usuario en scripts de bash. Wille rene LTNeAy/H8 esta variable contiene el valor 0 8 oie eLTNENe Gren (3 que el comando se ejecuté correcta Idev/nulL tey terminé de forma satisfactoria (@ af pope ee ged eran caso de grep significa que enconttd i let o+seet| 3 ) Iinea que concuerda). Los valores eh tintos de 0 especificardn la condid done iba i Hf por la cual no se terminé satisfacté echo La palabra $1 se encont mente. Estos valores dependern 8) programa que se ejecute, por lo qi $C veces Este programa contard la cantidad de apariciones de una palabra especificada Generacion de niimeros por pardmetro en la entrada esténdar (F- aleatorios gura 10). Una forma de utilizarlo seria: Este script es un ji c cat carta.txt | ./contar_palabra hola Dealer es niacall ; “y do al azar por la maquina (Figura 14), En lugar de utilizar una condicién, en el ciclo while especificamos que ejecu- te el comando read. De esta forma, el while se ejecutard mientras haya Iineas para leer desde STDIN (Standard Input, Entrada Estandar). Luego enviar la Ii- nea le{da al comando grep al cual se le pasard como pardmetro el mismo que a nuestro script (la palabra a buscar). También enviaremos la salida al archi- vo /dev/null para que la salida de grep no se vea por pantalla. Por tiltimo, aparece la variable $2, Esta variable contiene el valor con el que sa- lié el dltimo comando ejecutado (grep en nuestro ejemplo). Por lo general, si Figura 10. Podemos contar la cantidad de veces que aparece la palabra hola en el archivo carta.txt. 2 deberd consulear el manual para ello, pe | numero elegido al azar. Si el usuario Jo adivina, se le informa y se ejecuta break. Sdlo en esta ocasién el usuario usuario debe adivinar un nimero ele echo “No no, es mas grande” fi i Para ello, generamos una variable con ijn mtimero al azar entre 1 y 10 (la varia- ble $RANDOM la utiliza bash para darnos {in ntimero entero de forma aleatoria). [Aiego haremos un ciclo infinito ya que J siempre serd verdadero. Después se un nuimero y se lo compararé con pdr salir del programa ya que si no se- quird ciclando indefinidamente porque jn condicién es siempre verdadera. Las tras dos posibilidades sélo le mostraran tun indicio del numero que tiene que inar y volveré a pedir otro ntimero. Miattiples descargas de BitTorrent desde la consola Se puede tener un equipo en la red de- dlicado casi exchisivamente a bajar archi- vos por medio(de la red BitTorrent. De esa forma, se/ pueden utilizar cinco 0 diez torrents en simulténeo, incluso en [HY Revireccionar MENSAJES Es posible redireccionar los mens ajes de error de los comandos que se ejecuta dentro del script hacia archivos de log es- peciatmente creados para almacenarlo Esto lo podemos hacer con el simbolo 2 y_ | ‘el nombre del archivo que almacenaré tos mensajes de error al. final del comando. Por ejemplo: ep *-bxt 2> errores.txt. un equipo que no tenga monitor: sdlo controlindolo por SSH. Cuando se de- be elegir un cliente de BitTorrent, se puede optar por instalar el esténdar para GNU/Linux (que en Debian y sus deri- vados se instala con el comando apt-get install bittorrent). El paquete estandar incluye varios clientes de BitTorrent para Ja consola, pero uno en particular parece dl ideal para el método de computadora sin cabeza, conectada sélo a la red y a la electticidad. Ese es btdownloadheadless y esun cliente stiper basico que no muestra ninguna interfaz, Simplementé nos infor- ma en pantalla el progreso de la descarga. Entonces, si armamos este simple scrip de Bash, con sélo escribirlo comenzard k descarga de todos los archivos .TORRENI que existan en el directorio: El comando nohup da la posibilidad de que btdownloadheadless siga funcio- nando aun cuando nos desconectemos de la terminal, Para finalizar la descar- ga (0 interrumpirla més adelante) ha- bré que utilizar el comando Kill segui- do del ntimero de proceso correspon- diente al btdownloadheadless del to- rrent que deseamos devener. Si se quiere seguir de cerca el progreso, sélo hay que vistalizar las tiltimas diez Iineas del archivo nohup.out, Es reco- mendable borrar ese archivo cada cier- ta cantidad de tiempo por el creci- miento que tiene. Script para disparar backups de datafiles Este script ha sido desarrollado para reemplazar la funcionalidad que daba un programa compilado que disparaba tareas concurrentes y cuya licencia ca- ducé. El script est pensado para ser utilizado como una libreria de un script de mayor envergadura, como por ejem- plo backup y los distintos tablespaces de una base de datos como puede ser Oracle, DB2, Sybase, 0 alguna otra ta- rea que se pueda desmenuzar en unida- des de trabajo paralelas. Actualmente, es estable y estd siendo utilizado eb vidores productivos UNIX’ sin nit inconveniente. El cédigo fuente sién, Asimismo, el script genera /tmp para su andlisis. Finalment script demo que trae simula la ¢j cién de procesos de distinta dur para que, mediante pgrep/top/ps_ Iarep y los logs, se pueda ver 6 ministra los procesos. Creacion de archivos HTML Lo que hace este script es simple: verifica si existe el archivo pasado como paréme- __ tro. Si existe, abre el Vim con ese archivo. En caso contrario, crea un archivo nuevo con las etiquetas bisicas de heml ya crea- das, Es bueno ubicarlo en la carpeta /bin con permisos avx de forma que puedan gjecutarlo todos los usuatios desde cual- quier sitio del sistema operativo. Version alternativa del comando sleep Este script funciona igual que el com do sleep (el cual hace una pausa de cantidad de segundos definida como rdmetro), pero a diferencia de él, éte forma en pantalla el progreso de los gundos a medida que van pasando, La magia de las Ilaves Los simbolos { y } en bash sirven para encerrar una serie de {tems que luego serin procesados como pardmetros in- dependientes. Veamos un ejemplo: echo {uno,dos,tres,cuatro} Mostraré en pantalla: uno dos tres cuatro Ahora veamos otro ejemplo en el que queda més claro el funcionamiento de esto. Vamos a pasatle dos pardmetros a echo. Uno con una serie de items ence- rrados entre llaves y otro simple: echo {uno,dos,tres,cwatro}perro Mostrar en pantalla: ‘unperro dosperro tresperro cuatroperro Feo, :no? Si agregamos espacios obten- dremos un fancionamiento no espera- do (como si agregéramos un espacio de més a cualquier otra estructura de un script de bash). Por suerte, podemos utilizar las Gomillas de la siguiente ma- nera para solucionar esto: “}perro Funci6n para intercambiar dos valores en una variable Esta funcién acepta valores como pari- metro y alterna entre ellos el contenido de tuna variable cada vez. que se ejecta: ejemplos posibles de uso de esta funcién. Si le pasamos dos paré- metros, cada vez que la ejecutemos, la va~ riable tendré uno de esos dos pardmetros: var_toggle var 13 5; echo $var El sistema devuelve: 5 Lo ejecutamos de nuevo: $ var_toggle var 13 5; echo $var Y el sistema devuelve: 13 Finalmente, si le pasamos un solo pa- rdmetro, los valores son alternados en- tre el actual y cero. Varias formas de leer la primera linea de un archivo A veces se nos puede presentar la nece- sidad de almacenar en una variable la primera linea de un archivo de texto. ‘Veamos algunas formas posibles de lle- var a cabo esta tarea: var="head -1 ARCHIVO" Almacenard la primera linea del archi- vo ARCHIVO en Ia variable var. Pero, si no queremos usar un coman- do externo, lo podemos hacer interna- mente haciendo uso de la funcidn read del siguiente modo: read var < ARCHIVO Y si necesitamos leer, por ejemplo, las primeras cuatro lineas, podemos hacer uso de las Ilaves (ver truco La magia de las llaves en este mismo capitulo) del si- guierite modo: I MULTIPLES COMANDO: posible utilizar todos los comandos sistema dentro de nuestros scripts de J), Esto aumenta exponencialmente capacidades de nuestras aplicaciones que asi s6lo estén limitadas a nuestro Inocimiento de las aplicaciones del sis- a. Un buen ejemplo para demostrar ‘uso de los comandos externos en Bash realizar buisquedas en archivos. Para 40, nada mejor que usar el comando p del siguiente modo: Si ya programamos scripts en b: guna vez, seguramente habremos do la idea de presentar algiin tek centrado en la pantalla, La fun que presentamos a continuacién una de las posibilidades, y acepta U pardmetro para definir la cantidad | caracteres a centrar: 7 }/bin/sh Lucgo se utiliza de la siguiente manera: J centrar [valor] [cadena] pedros="grep -i pedro /etc/passwd | cut £1" echo “Buscando usuarios con la palabra \"pedro\" en la base de datos” echo “Los resultados son: $pedros” Como vemos, lo que se utiliza para eje- cutar un comando ¢s la linea completa entre comillas invertidas simples. Esto se Jo asigna a una variable y como resulta- do obtenemos dentro de ella la salida del comando. Hay que asegurarse de usat las comillas correctas ya que son las tinica que le indican a Bash que debe ejecutat un comando. Figura 12. Utilizar el comando grep dentro de un script de Bash permite realizar basquedas dentro de archivos y procesar los resultados como una cadena normal. sleep 1 echo ${passwa} | echo exit ejecutado por root.’ Wome ih aly wtnsth shin ala fi Mat An # Verifica si el script no d ser ejecutado por root — af [ *8(id -u)” == “0” J; ther ‘echo “Este script no debe ejecutado por root.” exit 1 ie ee Ae 202 Secretos de Linux Scripts en PERL En el Ambito de la gestidn de servidores, PERL es uno de los lenguajes de scripting més populares gracias a la infinidad de herramientas de gestién de informacion que posee integradas. En este capitulo, veremos cémo sacarles el maximo provecho a las mejores caracteristicas de este lenguaje. Tutorial de PERL en 10 minutos PERL (Practical Extraction and Report Language) es un lenguaje que tiene mu- chos afios de vida. En sus comienzos em- pezé siendo un lenguaje muy utilizado para procesar bases de datos de archivos de texto (gracias a las expresiones regula- tes, uno podia realizar btisquedas y fileros muy fécilmente). Luego, pasé a ser la bandera de las primeras aplicaciones web como el btiscador Yahoo!. De hecho, to- dos los sitios web de los afios 90 que ne- cesitaban un poco de procesamiento de datos utilizaban el popular sistema CGI basado en Perl, hasta que aparecis PHP v la actual tecnologla AJAX. Hoy por hoy, Perl sigue siendo un exce- ente lenguaje para desarrollar scripts pa- la consola, y por eso vamos a focalizar- os en este aspecto en este capitulo. Ge reralmente, Perl se incluye por defecto ‘nla instalacién de la mayorfa de las dis- ribuciones. Para asegurarnos de esto, po- lemos buscar el archivo /usr/bin/perl o ipear pert -v. El programa devolveré al- © como lo que vemos en Ia Figura 1. Figura 1. informacién de la versién de PERL instalada en el sistema. VARIABLE ESCALAR Es un tipo de variables de Perl, Estas bles pueden almacenar dentro de si t denas de caracteres como numeros Perl fue especialmente disefiado el manejo de bases de datos textu Permite el manejo de variables, glos, estructuras condicionales y f les. Para crear un script en Perl del mos seguir los mismos pasos que pi crear uno en bash, tal como vimos: el capitulo anterior. La tinica difei cia radica en la ruta del intérprete, A continuacién veremos un pequi script en Perl, Para crearlo pode utilizar el editor VI (luego debemos cordar que tenemos que otorgarle misos de ejecucién). #1 /usr/bin/perd | # Ejemplo: Hola Mundo! print “iHola Mundo! Ja ruta al intérprete del lenguaje Perl (s /usr/bin/perl. Después de un co- nentario, figura la funcién print con la cadena jHola Mundo! como pardmetro. Como resultado, este ejemplo muestra lo que podemos ver en Ia Figura 2. ‘Tal como los otros lenguajes populares ide la actualidad, Perl nos permite rea- lizar el manejo de variables de forma sumamente sencilla, Las variables se definen del siguiente modo: $variable = valor; Nétese el simbolo $ antes del nombre de la variable, Esto define que es una variable escalar. Luego se ingresa el valor, que puede ser un entero, un flo- tante o una cadena, Para imprimir una variable, podemos utilizar la funcién print del siguiente modo: print “El valor de la variable ‘variable’ es: Svariable” Por tiltimo, cabe destacar que cada fun- cidn se finaliga con un simbolo ; como cn el lenguaje de programacién C. Otra forma de almacenar los datos en la memoria es por medio de los denomi- nados: arreglos de variables. Estos son formas de agrupar variables en un mis- mo conjunto. Son ficiles de definir, la manera més sencilla es la siguiente: @arreglo = (vali, val2, val3, ere eT cael re k-de-Facu Poe oO SISTEMA OPERATIVO EN USO. Alguna vez puede darse la situacién de te> ner que averiguar, desde un script de PERL, qué sistema operativo se esta utili- zando. Para esto, nada mas simple que verificar el contenido de ta variable $40, Bajo Windows, devolveré el valor MSWin32, Bajo Linux, simplemente tinux. A diferencia de las variables, los arre- glos comienzan con el simbolo @. Para imprimir el valor de un arreglo tenemos que utilizar la funcién print del siguiente modo: print “El valor 2 del arreglo es: Sarreglo[2]”; Si queremos imprimir el arreglo com- pleco, podemos utilizar Ia funcién print con dl siguiente contenido: print “El arreglo completo contiene: @arreglo” Una particulatidad de Perl es la posi- bilidad de crear arreglos con etiquetas para cada valor. Para crear un arreglo de este tipo, se utiliza el simbolo % an- tes del nombre del arreglo. El siguien- te es un ejemplo: Somi_arreglo(“valor1”, 10, “valor2”, 20, “valor3”, 30); Figura 2. Salida de nuestro primer script de PERL. El arreglo mi_arreglo contiene tres valo- res que pueden ser llamados mediante las etiquetas valor1, valor2 y valor3. print “El valor 1 es: Smi_arreglo{valor1}" Podemos notar que la llamada a la eti- queta del arreglo se realiza con las lla- ves. El siguiente es un ejemplo de arre- glos con etiquetas: En este ejemplo se define un arreglo zon las etiquetas de los integrantes de ana familia y sus respectivas edades, Hinalmente, se las imprime en pantalla somo vemos en la Figura 3. >erl también nos permite evaluar ex- sresiones de forma muy sencilla. Vea nos el siguiente ejemplo: Figura 3. Utilizacién de arregios con etiquetas en un script de PERL. En este pequefio programa defini dos variables (I{neas 30 y 40) con | valores 2 y 5. Se imprime un pequel mensaje y se define una tercera ble con el resultado de la multipli cién de las dos anteriores. Por tiim se imprime la tiltima variable en p talla, Perl oftece ottos comandos evaluacién de expresiones muy eq: compara 2 cadenas. ne: diferencia. It: menor que. gt: mayor que. Para concatenar dos cadenas se pu utilizar el operador de punto (,). El sh guiente es un ejemplo: riable $nombre_completo, obtendremos; Por consiguiente, si imprimimos la va- ‘Carlos Lopez’ En cuanto al ingreso de datos, en Perl es muy sencillo, Para realizar esta ac- cidn se define una variable con el flujo de entrada esténdar como ingreso. El siguiente es un ejemplo: Sentrada= Recordemos que el flujo de entrada estén- dar es STDIN. Estas definiciones pueden. aparecer en cualquier parte del cédigo. Este pequefio programa muestra un mensaje y luego define una variable pa- ra realizar el ingreso de datos. Por titi- mo, lo muestra en pantalla como una variable cualquiera (Figura 4). ry Siempre recordemos utilizar la funcién chop para climinar el cardcter de retor- no de carro en las cadenas. Su forma es: chop ($variable=); Ahora veamos algunas estructuras con- dicionales y repetitivas, La estructura if en Perl es muy similar a la del len- guaje C. La forma basica es: Figura 4, ingresar datos por teclado es tan sencillo como asignarle el flujo de entrada esténdar a una variable. Como podemos ver, la condicién se enc ietra entre paréntesis y las funcio- nes respectivas a cada opcién se encie- tran entre llaves. Veamos un ejemplo practico cuya en la Figura 5: ia serie de salida podemos observar unless (numero > 1000) { print “Su numero es menor que 1000! #1/usr/bin/perd print “Ingrese un nunero:”; Snumero=; if (Snumero >= 1000) { print “Su numero es mayor (@ igual) que 10001”; } else { ; print “Su numero es menor que 10001”; i { Tunciones. + 0s operadores que podemos utilizar en la condicién son los siguientes: eq: igual a. >: mayor que. < menor que. >=: mayor o igual que. <=: menor o igual que. ne: diferente. : funciones. ome Yacbo s eee Deore hfarenat ona ret Fi i vradores en una sentencia condicional igura 5. Utilzacién de operadores en una sentencia condicional if. i Ahora veamos una de las particulacid de PERL. La estructura unless ej ¢ de funciones s6lo si una com cidn es falsa. Veamos un ejemplo: Perl también puede manejar bucles co dicionales como el while. La estruct del while en Perl es la siguiente: while (condicion) También podemos usar la entrada ey téndar para recibir los datos utilizand@ while. Su forma es la siguiente: while() { Como en todo lenguaje de programa- cidn, el ciclo for nos permite repetir tuna porcién de cédigo una determina- da cantidad de veces. Su forma de uti- lizacién es la siguiente: for (expresiont; exprexion2; expresions) { funciones... y Como en los lenguajes antes menciona- dos, se puede omitir cualquiera de las ex- presiones pero se debe incluir el punto y coma (;). EL ighiene es un ejemplo sim- ple: un contador del 1 al 10 (Figura 6), #\Juse/bin/perd for($ae0 ; $a <= 10; Sate) { print “\nga"; ne a Bien, ahofa que ya conocemos las ba- ses dela programacién de scripts en PERL, veamos algunos trucos para sa- catle el méximo provecho a este len- guaje de programacién. Figura 6. Utilizacién de! ciclo repetitivo for. Como leer y escribir archivos de texto Perl fue especialmente dise trabajar con datos en archivos de tex- to. Si bien su estudio completo Hleva mucho més que un par de paginas de un libro, en esta seccién intentaremos dar una visién general de cémo traba- ja el sistema, Perl utiliza la funcién open para realizar la apertura de arcl vos. Su forma es la siguiente open (NOMBRE, “archivo”; EL nombre es el descriptor del archivo en cuestién, el archivo siempre se encie- tra entre comillas. Por defecto, Perl abre Jos archivos en modo sélo lectura. Para oO ADVERTENCIAS EN PERL Podemos habilitar y deshabilitar los men= sajes de advertencia de Perl dentro de nuestro cédigo de manera rapida y sencl- lla. Para deshabilitarlos, debemos utilizar la'sentencia no warnings; y para habititar~ los, la sentencia use warnings:. ont abrirlo en modo escritura se agtega un simbolo > al principio de la ruta al ar- chivo, como vemos a continuacién: open(NOMBRE, “>archivo”); Si se quiere abrir el archivo para modo append (agregar los datos al final), se agregan dos simbolos >: open(NOMBRE, “>>archivo”); Una vez que se encuentra abierto el ar- chivo ya podemos escribir sobre él. Como ejemplo, se puede utilizar la funcién print del siguiente modo: print NOMBRE “cadena” Esta funcién imprimird la cadena en el archivo identificado con la etiqueta NOMBRE. Veamos el siguiente ejemplo: En este ejemplo se abre un arch mado file.txt para modo ape’ 20). En las lineas 40 y 60 se hi greso de datos con la funcién ta que elimine el cardcter final d dena (de esta manera, los datos primirén en el archivo uno al la otro). Por ultimo, en la linea 70 da y en la linea 80 se cierra el El resultado que obtenemos co} cédigo lo podemos ver en la Fi misma. Primero se debe abrir el vo del siguiente modo: open (ARCHIVO, “file.txt”); Luego pueden almacenarse en ui tiable los datos del archivo, siempre nea por Iinea del siguiente modo: Figura 7. Almacenamiento de la informacién ingresada por el usuario en un archivo de texto. mbién podemos utilizar una fun- ln while para procesar todas las I{- \ sin tener que repetir cédigo. Una ma puede ser la siguiente: Como crear nuestras propia: funciones de PERL Con Perl podemos crear subfunciones para permitirle al progtamador manejar- te en un confortable entorno de progra- macién estructurada. Las funciones en {CUIDADO CON LA SINTAXIS' Perl se definen al principio del codigo: con la funcién sub del siguiente modo: Luego, para llamar a la funcidn ereada, directamente utilizamos su nombre: mi_funcion; ‘Tambien es posible pasar pardmetros a las fanciones. Por defecto, estos pardmetros se quardan en @_ dentro de la funcién: Este programa crea una funcién en la If- nnea 20 que imprime el contenido de la vatiable @_. En la linea 50 se realiza el llamado a la funcién, paséndole como pardmetro la cadena Hola Mundo. Como crear médulos en PERL Un médulo es un conjunto de subru- tinas. Por lo general, en un médulo se juntan subrutinas que hagan cosas que estén relacionadas. Por ejemplo, se pue- de tener un médulo con subrutinas que se utilicen para conectarse a un servidor web, bajar o subir archivos desde ellos, etcétera. Separar las subrutinas en un médulo nos permite hacer uso de ellas desde otto programa simplemente men- cionando que se quiere utilizar ese mé- dulo. Ni siquiera es necesario copiar y pegar las subrutinas en el archivo del programa que estemos haciendo. Un médulo ser un archivo de texto es- crito exactamente igual que los progra- ‘mas escritos hasta ahora pero con una extensién diferente, que por lo general es .PM. Todo el cédigo que se escriba que no se encuentre dentro de una brutina en el momento de incluir médulo, seré ejecutado como una st te de cédigo inicializador de éste. El ¢ digo podré hacer cualquier cosa. tinico diferente que tiene un médul con respecto a un programa normal, que deberd terminar con un valor dadero para que el programa que lo i cluya sepa que se pudo inicializar y cat gar bien. Pata ese fin habré que agrega 4; como tiltima linea del médulo, Cox mo el valor 1 es verdadero, al ejecutar se hard que el médulo devuelva un vas lor verdadero y, en consecuencia, pue- da ser incluido. Para hacer uso de un médulo existen tres form: + Utilizar la funcién do. Este operador carga el médulo especificado cada ver que se gjecute. Si queremos incluir el archivo servicios.pl al programa que se esté haciendo habré que escril do “servicios.pl";. Cada vez que se éjecute esa linea se volverd a incluir cl archivo servicios.pl. * Usilizar la palabra reservada require. Require funciona exactamente igual que do pero pose una tinica diferencia: carga el archivo especificado sdlo la pri- mera vez, Todas las demds veces que se trate de cargarlo serin ignoradas. + Utilizar la palabra reservada use. Esta es la forma normal de incluir un médulo. A diferencia de las dos anteriores, cuan- do se utiliza use, el médulo se incluye antes de que se ejecure alguna sentencia de cddigo (en tiempo de compilacién). De esta forma, si el médulo no existe, Perl no podrd ejecutar el script. Perl busca un médulo especificado en un conjunto de directorios. Estos direc- totios estén especificados en una lista llamada @INC. Si el médulo no se en- ‘Comprehensive Perl Archive Network cuentra en ninguno de estos directories, entonces no existe. Si el médulo sf exis- te pero est en otto directorio, habrd que poner ese directorio en la lista @INC. Para ello existen dos formas: * Utilizar la subrutina BEGIN, que sé llama antes de que se incluyan los médulos. Por ejemplo: + Utilizar el médulo especial ib, Po cjemplo: use lib “/mi/directorio/bibliotecas”; Listar archivos y directorios Hay varias formas de generar un listad de archivos desde un script de PERI ‘Una opcién es la funcién glob. Esta fur Figura|8. 1 CPAN (www.cpan.org) es un gran repositorio de médulas para PERL, cién tiene como argumento el directo- tio y los archivos que se quieren listar. En esta funcidn se especifica de la mis- ma forma que se hace en el shell. Esto significa que el cardcter * y el ? no serdn interpretados literalmente, sino que el * concordaré con cualquier tipo y canti- dad de caracteres y el ? concordard con un solo carécter cualquiera. Glob devolverd una lista donde cada ele- mento es el nombre de uno de los archi- vos encontrados. Por defecto, glob omi- te todos los archivos y directorios que comiencen con un punto. Por ejemplo, para obtener todos los archivos .JPG de un directorio de imagenes ingresamos: Como ejecutar comandos externos en Perl Para ejecutar programas, Perl ofrece diferentes métodos. Uno de ellos es la funcién system que cjecuta dirccta- mente como comando la cadena se le pasa como pardmetro, Su de utilizacién es la siguiente: system “Is” También podemos utilizar las con invertidas ~ encerrando un co! para guardar su salida en una vat Un ejemplo puede ser el siguien Saale gh jon algunos ejemplos de ellas). Perl za su propia implementacién (DBM), que si bien no es tan potente mo la gDBM, posee casi todas las funciones més importantes. Un deralle muy relevante es que usar el sistema DBM en Perl nos asegura que huestro sistema funcionard en cual- quier computadora que tenga un in- érprete de Perl instalado, aun si se tra- ta de diferentes sistemas operativos. De esta forma, un sistema que utiliza DBM desarrollado en Perl para GNU/ Linux funciona de forma correcta y sin tener que hacerle modificaciones de cédigo tanto en un sistema que posee Mac OS X como en uno con Windows. En Perl, todo el control de bases de datos DBM se realiza por medio de los ya conocidos hasKes. Nuestro querido comando tie con algunos pardmettos extras nos permitird crear, abrir, modi- ficar y cerrar bases de datos. Estos pa- rametros extras son los siguientes: + El nombre del hash. + El nombre del modulo DBM. * El archivo de la base de datos. + Definicién de las opciones de acceso al archivo. + Permisos que tendré el archivo. De este modo, si imprimimos la ble salida, tendremos el listado rectorio actual. Bases de datos simples en P DBM es un sistema de bases de d que ya lleva muchos afios en el de los sistemas operatives UNI bien es un sistema muy sencillo en dos sus aspectos, es muy til cuand quiere desarrollar pequefias aplicae hes que no hagan uso intensi funciones complejas de manejo de. tos. Actualmente, existen varias im| mentaciones del UNIX DBM (gD) del proyecto GNU, nDBM y oDB Una fancién tie de ejemplo para crear una base de datos ¢s la siguiente: tie ‘%sdbm, ‘SDBM File’, “base.db”, O_CREAT|O_RDWR, 0644; ‘Como podemos ver, el uso de esta fun- cién es muy sencillo. El primer pard- metro (%dbm) nos serviré para hacer referencia a nuestra base de datos. El archivo de base de datos lo definimos en dl tercer pardmetro (base.db) y ha- remos que Perl lo cree con permisos de lectura y de escritura para nosotros (0_CREAT|O_RDWR, 0644). Una aclara- cidn: el cuarto parametro define de qué forma Perl accederd al archivo. El quinto pardmetro indica los permisos que el archivo tendrd una vez creado. Las bases de datos DBM al usar el sis- tema de hashes funcionan bajo el mo- delo de palabra_clave=valor, De esta forma, si usamos la sintaxis de hashes en Perl para agregar un nuevo dato a nuestra base de datos tendremos que tipear algo como lo siguiente: Sabm{‘nombre'}="Facundo”; Ahora bien, gqué sucede si queremos manejar multiples registros? Bueno, tendremos que ingenidrnosla para arre- glamos con este sistema, Una buena idea puede ser implementar la base de datos bajo la siguiente estructura: Y asf sucesivamente. El primer ntimero. es itil para asignarle un valor de registro a.cada una de las personas que tengamos registradas en nuestra base de datos. Para acceder a alguno de los datos de nuestra base de datos, la cosa es bas- tante similar. Por ejemplo, podemos asignarle un registro a una variable del siguiente modo: Svariable=%dbm{'1.nombre’}; Siguiendo la linea de nuestros ejemplos, Svariable contendria la palabra Facundo. De todas formas, también podemos rea- lizar un acceso directo al hash. El siguien- te es un ejemplo para mostrar el conteni- do de una palabra clave en pantalla: print “El contenido del primer registro es %dbm{‘1.nombre’}; Es recomendable que antes de intentar acceder a alguna de las palabras clave de nuestra base de datos realicemos un chequeo, para cerciorarnos de que ese valor realmente exista, Una de las for- mas de hacer esto es encerrando el ac- ceso a la palabra clave dentro de una funcién if del siguiente modo: Por tiltimo, para borrar una entrada en la base-de datos, tenemos que usar la funcién delete del siguiente modo: delete ‘%adbm{‘palabraclave’}; HJ bytes DE una CADENA Dejard en @campos la lista (“root”, “x”, 0, 0, ,"/root,/bin/bash”). Luego se podré utilizar facilmente cualquier campo. Pa- ta hacer el proceso inverso existe la fun- cidn join, Esta funcién recibe como pri- mer pardmetro el delimitador con el que se quiera juntar los campos de una lista y como segundo pardmetro la lista con os campos a juntar, Luego, join devol- verd una cadena con todos los campos unidos por el delimitador. Finalmente, para cambiar el delimitador en una en- trada del archivo de configuracién en el cddigo que se ejecuts antes: untie seguida del nombre de la datos. A continucacién vemo ejemplo vilido de esto: untie %dbm; Recordems que debemos cerrar ff snueva_sallda = join “#", @eampoe, de datos una vex rerminado el acd ella, En general, esta operacién se zaal finalizar la ejecucién del prog Gestion de archivos desde scripts PERL Existen algunas funciones para traba- jar sobre archivos y directorios en el sistema. Estas funciones hacen tareas que no necesitan mirar los contenidos sino comunicarse con el sistema opera- tivo para que las haga (como borrar un archivo, Can directorio, eteétera). 2 Como partir y unir cadenas Si se posee una cadena, como una da del archivo /etc/passwd, que campos separados por delimitadores ese cjemplo cl :), se puede separar est dena por campos para poder utilis aquellos que nos sean de interés. Para lo, existe una fancién que despedaza t cadena en una lista donde cada elemen de la lista es un campo. Esta fun llama split y lleva dos pardmetros. El p mero es una cadena que especifica el di limitador que se quiere usar y el seg es la cadena que se quiere romper. split devolverd una lista con todos | campos. Para el ejemplo del /ete/pass TM) iconTROL! Por lo general, estas Tunctones son sir milares a los comandos que se utilizan normalmente desde la consola. Sin embargo, no hacen uso de esos coman- dos sino que se comunican directa- mente con el sistema operativo. $i bien es posible invocar un programa externo desde Perl, es recomendable no hacerlo a no ser que no quede otra solucién 0 sea realmente conveniente. Hacer esto representa un posible problema de se- guridad ya que nuestro programa nece- sita de cédigo sobre el cual no se tiene ningiin control y que, de haber sido al- terado, podriamos ejecutar sin darnos cuenta cédigo malicioso con privilegios mas altos. * Cambio de directorio: la funcién chdir cambia el directorio actual al que se le especifique por pardmetro. La siguiente directiva cambiaré el di- rectorio actual a /usr/bin: chdir("/ust/bin”); * Creacién de un directorio: la fun- cién mkdir crea un directorio, Esta funcién lleva como primer paréme- tro el directorio que se quiere crear y como segundo pardmetro (opcional) los permisos que se le quieren otor- gar. Vale aclarar que para escribir un valor en octal para usarlo de la mis- ma forma en que se usa el chmod, el ntimero debe empezar con 0. mkdir(“/home/pepe”); * Eliminacion de un directorio: para climinar un directorio se utiliza la funcién rmdir. Para poder llevar a cabo esta accién el directorio debe estar vacfo. Esta funcién sélo lleva un pardmetro que indica el directo- rio que se desea eliminar. El siguien- te ejemplo le quita el directorio per- sonal al usuario pepe: mmdir(“/home/pepe”); Renombrar un archivo: la funcién rename sirve para cambiarle el nombre aun archivo, Esta funcién lleva de pa- rémetros el nombre del archivo viejo y el nombre del archivo nuevo. Si el nombre del nuevo ya existe, entonces se perderdn sus datos. Por ejemplo: rename(“backup.tgz”, “backup-2003-04-22.tgz”); Eliminacion de archivos: para llevar a cabo esta tarea existe la funcién wn- Uink. Esta funcién lleva una lista (de 1 an) con los nombres de los archivos que se quieren climinar. Por ejemplo: unlink (“backup.tgz”); Figura 9. Creacién de varias claves encriptadas con la funcién crypt. Control de claves La funcién erypt nos permite genet una clave encriptada segiin una porcidt de texto determinada y una cantida Con esos dos componentes genera clave, Veamos un ejemplo: Lamentablemente, no existe una fun cién decrypt para desencriptar el texto, De todas formas, esta funcién es muy titil para comprobar si dos porciones de texto son las mismas sin utilizar las por ciones de texto en sf mismas. Con esta funcién y un poco de ingenio, con las es-_ tructuras condicionales es posible hacer cficientes sistemas de control de claves. Como comentar miiltiples lineas de codigo Ya sabemos que si agregamos el simbolo numeral (#) logramos comentar una linea de cédigo para impedir que PERL la ¢je- cute, Cuando estamos trabajando y depu- rando un cédigo, un recurso muy util es comentar grandes porciones de c6digo para poder focalizarnos en el resto ¢ in- tentar detectar el error alli, Podemos agre- gat un sfmbolo numeral a cada linea de la seccién a comentar, pero €s0 no ¢s muy prictico. He aqut otra solucién: | Lo que tenemos aqu{ es una seccién de cédigo encerrada entre las cldusulas =for comment y =cut. Todo lo que apa- rezca entre =for y =cut se salteard au- tomdticamente. rman pment ha ines Th SRT hh mea gee varen Figura 10, Perl Circus (www.perieircus.org) es uno de los més \ grandes repositorios de trucos y soluciones para PERL. ‘open(MIOUT, “> archivo. txt”); — onsejos para eee migracion Sttp = Ne >new( ‘ftp. server. $ftp->login( ‘usuario’ , *password? ); mget ($ftp, ‘*.txt? busily £n este capitulo veremos algunos my ($ftp, Spattern) use 10::Tee foreach my $file ($fty Stee = 10::Tee->new(">> >1s($pattern)) {_ archivo.txt”, \*STDOUT) ; $ftp-rget ($file) print $tee “un error ocurrié en or warn $ftp->messi “ scalar(Locaitine)."\n"; : consejos para realizar una migraci exitosa a Linux y sus herramientas de Software bibte, tanto en el ambito domésiico como en el corporativo. Esto incluye planes detallados paso a paso para lograr que el proceso de migracién sea lo mas rapido y exitoso posible Cémo convencer a otras personas de probar Linux aes a n ” i {Por qué pasarse a GNU/Lin qué insistir tanto con el mismo tema? sPor qué no dejamos que cada uno viva tranquilo con su sistema operativo? Es- tas son preguntas que seguramente mu- chos de nuestros amigos nos formulardn cuando les propongamos la migracién. Por eso, a continuacién veremos varios argumentos evangelizadores. Hay varias cuestiones que hacen de Li- nux un sistema operativo sumamente interesante. Muchas son de cardcter técnico y muchas de cardcter filosdfico. En primer lugar, comencemos por las de carécter técnico. GNU/Linux es uno de los sistemas operativos més avanza- dos del mundo. La razén de esto es sim- ple: estd basado en UNIX, que tiene un desarrollo de mas de 35 afios. Qué sis- tema tiene més historia? ;Qué al tiene més lineas de cédigo escritas critas? Qué sistema tiene més pi La verdad que pocos. Y justamenté es la razén principal por la cual no se cuelga. En realidad, no es qu se cuelgue jams, los programas gan como en cualquier sistema opt vo si estin mal escritos. Pero el si operativo en sf tiene una tasa de gues mucho menor a la de cual otro sistema, y esto lo demuestra testimonios de los usuarios y cantidad de estadisticas que hay ternet. Siguiendo con la cuestién t ca, GNU/Linux es un sistema opel que no sufre de virus porque no hay. 2¥ eémo puede ser que no hay) rus? Es muy simple, no hay virus que es muy dificil hacer un progd que sea invisible para el usuario, tema operativo es totalmente tra rente, por lo que cualquiera de noso puede saber en cualquier momento ¢€s lo que esté haciendo la compu Si, cualquier persona con un p competencia puede hacer un pi Figura 1. Se llama evangelizadores a los que se dedican a convencer a otras personas de probar a Linux. Richard que borre todo el disco rigido, sotros lo detectariamos inmediat cl es posible instalar GNU/Linux en Jos afios 80, entonces podemos insta- stema. Por eso, nadie se molesta ) hacer virus para GNU/Linux. Por la nisma razén, nadie se molesta en desa- follar software con spyware (compo- ntes espfas de nuestra informacién). hay més razones técnicas para migrar GNU/Linux. Una de ellas es que el Jstema operativo del pingtiino estira la \da vitil de cualquier hardware. Ya no aremos atados a cambiar la computa- jora una vez por afio porque siempre ncontraremos una distribucién de )NU/Linux que estaré optimizada pa- el hardware que tenemos. De hecho, na computadora Atari de la década de jlo en cualquier lado. Jas razones que vienen desde otro lado Jon las filoséficas, que tienen que ver on la libertad, con el hecho de usar software que no fue desarrollado segtin ¢ interés de las mega corporaciones, si- yo segiin el ingerés de los usuarios mis- jos, GNU/Lihax ¢sté desarrollado por \suarios y para usuarios. Si nos incere- Ja saber mds sobre esto, podemos visi- tar el sitio oficial del proyecto GNU (GNU’s Not UNIX), en www.gnu.org (Figura 2). Pero atin hay una razén més para animarse a probar GNU/Linux. Y para explicarla utilizaremos una analo- gfa. Supongamos que un buen amigo viene con un regalo y nos dice “ste es mi regalo. Te lo doy porque te aprecio y estoy seguro de que te ser de gran utilidad”. Qué harfamos? {Se lo devol- verfamos sin siquiera abrirlo? ;Sin ver si es realmente de utilidad? jLos regalos no se devuelven! jLos regalos se agrade- cen! A lo sumo, podemos abritlo y pro- barlo y, si no nos gusta, no lo usamos. Pero siempre le damos una oportuni- Figura 2.\El sitio oficial de la Fundacién del Software Libre incluye mucha Stallman fue el primer evangelista. ! informacién sobre la metodologia de desarrollo y distribucién de Linux. te con sélo pedir un listado de prod fy dad. Bueno, con GNU/Linux sucede exactamente lo mismo. La comunidad del cédigo abierto nos esté dando un regalo. Y no nos piden absolutamente nada més a cambio que el uso y que, si nos es de utilidad, animemos a otros a usarlo. Acé no hay manos negras, no hay bolsillos que se llenen de dinero a costa nuestra ni nada por el estilo. Acé hay gente que trabaja por amor al arte, y la mejor forma de retribuirle su tra- bajo es déndole una oportunidad al producto que genera. Fuentes de informacion indispensables Antes que nada, siempre es bueno in- formarse para saber qué esperar del nuevo sistema operative. Para esto, hay varios recursos a los cuales pode- mos acudir, En primer lugar, las revis- tas especializadas nos darén un pano- rama sobre cémo se esté moviendo el mundo de GNU/Linux actualmi En general, las revistas nos oftece! mejor de los dos mundos: el de la tualidad (con secciones como noti y laboratorios de pruebas) y el de formacién técnica, con notas y tut les para diferentes niveles de usu Otro recurso importante son los §1 de Internet. Hay varios que hay vi con cierta regularidad para apreni mantenernos informados. Pero ant ningtin otro, y para entender ve ramente cémo viene la mano, es mendable visitar www.gnu.org thegnuproject.es.html, que no més ni menos que un extenso artf donde se explican los origenes del yecto GNU, su filosofia y hacia d va. Luego, podemos visitar wwwli org que, si bien estd en inglés, of gran cantidad de articulos y enlaces cia otros sitios interesantes que mente nos serén de gran utilidad. También es recomendable que rramos la comunidad del cédigo abi “$5 ful circle magazine eee Figura 3. Full Circle Magazine es una revista 100% dedicada a Ubuntu que se distribuye en forma gratuita por Internet en formato .PDF. Esté traducida al espai por un grupo de colaboradores. Mas informacién en http://fullcirclemagazine.org. en marten ace ating and Sesces| your gp a ota nr itp eu Webra with lel. Tee's 0 charge led on our sod el autre eae ik your ous eb eso ou Figura 4. Linux Online posee el directorio mas grande de grupos de usuarios Linux de todo el mundo. to visitando sitios de LUGs (Linux USER Group, 0 Grupo de Usuarios Li- nux) y de noticias en nuestro idioma. Para encontrar un LUG cercano a nuestra zona de residencia podemos visitar el s linux.org/groups. Alli encontraremos un indice que, aunque no es el més completo del mundo, nos seré de gran ayuda. En cuanto a los sitios de comunidades vireuales, hay varios y muy populares. Barrapunto (www.barrapunto.com) ¢s un sitio de noticias en espafiol en el que, dia a dia, miles de personas en- tran y comentan sobre los diferentes acontecimientos que tienen algin tipo de relacign con GNU/Linux y el mun- do del cédigo abierto. VivaLinux! (www.vivalinuux.com.at) y Linux Pre- view (www.linuxpreview.org) son si- tios similares, pero con menos comen- tarios diarios. Igualmente son fuente importantisimas de noticias relaciona das con el mundo del software libre. Y hablando de comunidad, no podemo: dejar afuera al sitio de Foros Linux de portal RedUSERS (http://redusers com/foros). Alli, cientos de lectores d la revista USERS GNU/Linux se juntar todos los dias a responder preguntas | ayudarse mutuamente (Figura 5). Oo EL SITIO OFICIAL DE LINUX Linux posee un sitio oficial ents direccién www.linuxorg. Alli podremos encontrar _ noticias actualizadas con mucha period rativo, recomendaciones de | ‘completa guia de los grupos « Linux de todo el mundo (Figure faces visuales mas populares de GNU/ Linux), el navegador Firefox y mucho mas. Los Live DVD son exactamente software instalado y listo para usar. Decimos listo para usar porque todo el software que viene en los Live CDs ya @ Seat Create Cee ; See Teen tev | Orcas “ ORM Seer al © Berean Figura 5. Los foros de discusién son un excelente lugar ara conocer otros usuarios e intercambiar ideas, soluciones y opiniones. Como probar Linux sin poner en peligro el sistema actualmente instalado jPruebe antes de comprar! dicen los carteles de los negocios de electrodo- mésticos por las calles. Bueno, esto es lo mismo. En GNU/Linux podemos probar antes de instalar. ;Cémo es es- to? Sencillo: gracias a un sistema que se denomina Live CD. Los Live CD son distribuciones de GNU/Linux disefiadas para funcionar directamente desde una unidad de CDROM 0 DYDROM. Lo tinico que tenemos que hacer para que funcionen ISR E AERIP i areas me Mma incmetir lenges gum to aren vempueeee es configurar nuestra computadora p ra que cuando bootee, lo haga primelt desde la unidad de CDROM. Para esto, tenemos que ir al sistema d configuracién del BIOS de la méquin y buscar la opcién correspondiente que en general se llama Boot Sequent 0 tiene algtin nombre similar (Figura Al principio, los Live CD eran dist buciones muy reducidas con poet software para probar. Pero hoy en dia existen distribuciones como Knoppii (Figura 7) que incluyen todo lo necesa rio para trabajar con la computadora Entre otras cosas, incluyen OpenOffi ce, KDE 0 GNOME (dos de las int [Df cotecciones 0 Linux EN LIVE DVD ten los Live DVD con colecciones de dist www.livedistro.org para acceder a un c estd preconfigurado para que funcione iguales a los Live CD, con la tinica di- con tan sélo hacer un clic, ferencia de que incluyen mucho més fon) aes Figura 6. Selecci6n del primer dispositivo de inicio en el BIOS. Figura 7. Knoppix es una de las distribuciones Live CD de Linux més completas y féciles de usar. Otra ventaja de las distribuciones Live CD es que practicamente no tienen proceso de configuracién, En general, las desarrollan de manera tal que fun- cionen en cualquier hardware por me- dio de un sistema de autodeteccién que 2l usuario ni se entera que esté funcio- nando. Este proceso se lleva a cabo mientras nosotros esperamos que el sis- ema inicie, y ésa ¢s la razén por la cual al proceso de inicio de un Live CD es an poco mas largo que el de una distri- oucién de GNU/Linux instalada de for- na tradicional en el sistema. Algo muy importante que hay tener en cuenta cuando probamos GNU/Linux sor medio de un Live CD 0 Live DVD 2s que el sistema funcionaré mucho nas lento que si lo tuviésemos instala- do en el disco rigido. Esto es porque la selocidad de acceso a la informacién de as unidades épticas como el CDROM 2s mucho menor a la velocidad que tie- re un disco rigido convencional, Por lo nto, si vemos que nos funciona lento to tenemos que preocuparnos, es sim- rlemente que la lectora de CD 0 de DVD no ¢s tan répida como el disco gido, Algunas distribuciones Live CD -ecomendadlas son: Ubuntu Linux (www.ubuntu.com): sin lugar a dudas, ¢s la distribucién més popular. Puede ejecutarse del { necesidad de instalarlo y posee | necesario para trabajar cémod el hogar y la oficina. Incluye faz visual basada en GNOME ce sumamente liviana y funcio) sistemas de medianos recursos | * Knoppix (www.knoppix. es una de las mejores distrib Live que jamés se desarroll varias razones. En primer | que funciona en casi cualqi putadora actual sin problei teccién de hardware. En s gar, porque incluye muchfs ware de todo tipo. El so cial que se utiliza en el dia ad disponible. Incluye OpenOf interfaz visual KDE y cientos caciones que son accesibles d menti de inicio de Knoppix. Slax (http://slax.linux-li Hange=es): Slax es una distrib ve que est basada en Slac Para aquellos que no la distribuciones de GNU/Linux, cual tiene muchos afios de des Recomendamos Slax porque es muy compatible con el hard tual, incluye muchas aplicacion Slackware Linux es una de las pfl realmente muy divertida de prob Lego de elegir una distribucién, sdlo res- lu descargarla y probarla sin miedo, No podemos romper nada cuando usamos {ina distribucion Live CD o Live DVD, Yu que se trata de un medio de sdlo lectu- fa, Una vez. que nos hayan convencido, entonces podremos pasar al préximo pa- fo: clegir una distribucién para instalar formalmente en la computadora. Premisas para elegir una distribucion y no cometer el error de elegir la incorrecta jPor qué hay tantas distribuciones de Linux? No es més facil que haya una sola? Estas son preguntas tfpicas de quienes recién comienzan, porque al te- ner tanta oferta, no saber cusl elegir. Empecemos por el principio. La cues- tién de que haya tantas distribuciones de Linux reside en que, al ser libre, cual- quiera puede hacer su propia versién del sistema opetativp. Y cualquiera que ha- ya hecho su propia versién puede distri- buirla para que sus amigos puedan usar- la. ¥ éste fue el espiritu inicial del soft- ware libre: la colaboracién. Ahora bien, como mencionamos antes, la diversidad tiene la ventaja de que tenemos més op- ciones a la hora de elegir, pero tiene la desventaja de que, si no tenemos el sufi- ciente conocimiento, tenemos mas pro- babilidades de elegir una distribucién incorrecta. Por e50, a la hora de elegir una distribucién, es importante tener en cuenta los siguientes puntos: * Que sea una distribucién popular. * Que sea una distribucién que se ac- tualice con bastante frecuencia. * Que sea una distribucién que resulte fécil de inscalar. * Que sea una distribucién que se pue- da configurar de forma sencilla. * Que en el listado de hardware com- patible esté todo lo que tenemos en nuestra computadora. * Preferentemente, que sea libre. Analicemos punto por punto, El hecho de usar una distribucién popular nos asegura varias cosas. Las distribuciones populares en general estan desarrolladas por grandes empresas que tienen mu- chos programadores que dia a dia traba- jan para que el producto sea més ficil de usar y mas compatible con el hardware existente. Las distribuciones poco popu- lates estan desarrolladas por pocos pro- gramadores que hacen su mejor esfuer- zo pero légicamente no pueden cubrir todos los aspectos que cubren las gran- des compaiifas. Ademis, las distribucio- nes populares son usadas por mucha gente. Esto hace que, a la hora de buscar ayuda, nos sea facil encontrar gente que esté en la misma situacién que nosotros © que ya la haya vivido y sepa cémo so- lucionar nuestro problema. Por otro la do, al ser distribuciones que usa mucha gente, los programadores de aplicacio- hes se encargarin de armar paquetes de instalacién especiales para esas dis- tribuciones. Si tenemos una distribu- cién muy rara, seguramente no tendre- mos mas remedio que bajar el cédigo fuente del programa que queramos y compilarlo nosotros mismos. El segundo punto, en el que hablamos de la frecuencia de las actualizacio- aes, tiene relacién con dos cosas. En orimer lugar, con usar un sistema ope- ative que siempre tenga software ac- ualizado para poder sacar provecho de © iiltimo de la tecnologia. Pero en se- sundo lugar, esta relacionado con la eguridad. Una distribucién que se ac- ualiza con frecuencia es una distribu- ién que seguramente tiene muchos arches y errores cortegidos. Una dis- ibucién que se actualiza cada dos fos implica un riesgo mayor, Jo hay mucho que decir sobre la facili ad de instalacién y de configura- '6n, pero para asegurarnos esto, con- viene instalar distribuciones que orientadas al hogar y la oficina. Es mendable dejar las distribuciones d nux para servidores para més adi cuando tengamos més experiencia, En cuanto al hardware compatil en general en el sitio oficial de of distribucién se puede encontrar un tado de hardware compatible cow uiltima versin disponible de ésta, parado por categorias. Por ultimo, recomendamos que s bre. Usar una distribucién libre 1 asegura que estaremos usando una di tribucién que no tiene fin en su a ce. Quién nos asegura que Linsp no se declara en bancarrota el afio qi viene y cierta sus puertas? Ahora bi los proyectos libres no mueren, Cuan- do un lider lo abandona, uno nuevo lo fetoma y continéa su desarrollo. Recaudos antes de instalar una distribucién de Linux El proceso de instalacién del sistema operativo GNU/Linux difiere bastante del de Microsoft Windows. Pero por suerte, esto no quiere decir que sea mas dificil, De hecho, muchas perso- has consideran que hoy en dia instalar GNU/Linux es més ficil que instalar la tiltima versién de Windows. Aun- que ficil, el proceso de instalacién de GNU/Linux requiere que prestemos atencién a algunos puntos importantes para evitar cometer errores y hacer que todo funcione de forma correcta. En primero lugar, estamos instalando un sistema operative nuevo en un equipo que seguramente ya tiene un. sistema operativo ingtalado. Esto deriva en que tendre jue modificar la estructura de nivel mds bajo de control del disco rfgi- do, que es nuestra principal unidad de al- macenamiento. {Toda esta explicacién para qué? Para que hagamos copias de seguridad de todos los datos importan- tes antes de instalar GNU/Linux. Hace algunos afios, ésta era una tarea tediosa, pero hoy en dia gracias a los nuevos me- dios de almacenamiento como el CD-R y el DVD-R es una cuestién que nos puede Ievar unos pocos minutos. Por €s0, conviene hacer una copia de segu- tidad de todo lo que consideremos de importancia, sélo por precaucién. Esta recomendacién no es para que nos $3 ubuntu Serer eran one crea nuestro disco rigido para que ambos sis-asustemos, ya que no suele haber pro- = - temas conyivan sin problemas. Medifi-_blemas con las particiones a la hora de eee car la estructura es modificar lo que se _instalar GNU/Linux, pero es una cues- Deonarlomn ma llama la tabla de particiones (lo veremos _tién de precaucién. Sons més adelante), y si bien en la actualidad También es bueno tener a mano todos sae ¢s un proceso simple, se trata de una ta- los manuales de los dispositivos mis ens ‘About Ubunts er tea critica ya que est relacionada con el importantes de nuestro equipo. Du- Steir Straits aaeemnae ae oe. ee Seren, tomas ran arta Desktop Eaton Server Edition ree ae eater Donon ea = Ses & # mc seated Ee ~ Figura 8. Ubuntu es la distribucién mas popular de Ios iiltimos anos. rante el proceso de instalacién existe un punto de deteccién y configuracién del hardware. Si el sistema no puede detectar nuestra placa de video o nues- tro monitor, si tenemos los manuales cerca podremos definir los parémetros a mano. Si no tenemos los manuales, al menos tenemos que averiguar la marca y el modelo de cada uno de los dispositivos que tengamos en el equi- po, para luego poder encontrarlos més répidamente en las listas de hardware del sistema de instalacién. Otra de las recomendaciones es que busquemos el disco de instalacién del sistema operativo que tengamos ac- tualmente instalado 0 que consigamos un disco de inicio de éste. Ademds, ne- cesitaremos un floppy vacfo porque durante el proceso de instalacién ten- dremos Ia posibilidad de realizar un disco de inicio de Linux que nos servi- r4 de disco-rescate si algiin dia nues- tro sistema se rompe y no inicia. Como ultima recomendacién, con’ ne que busquemos en Internet expe- riencias de otros usuarios que hayan instalado la misma distribucién que estamos por instalar nosotros. Estas experiencias las podemos buscar directamente en Google utilizando palabras clave como instalacién, Man- _ Semi driva y problemas. Miles de exp cias, preguntas y soluciones apate gracias a este fabuloso buscador, Informarse sobre lo que le su otras personas cuando intentaron. talar la misma distribucién nos aj rd a estar preparados para todo, cluso para decidir cambiar de distil cién antes de siquiera perder tie intentando instalar la que habjal elegido porque, por ejemplo, dese mos que es incompatible con al de los dispositivos que tenemos, Habiendo hecho las recomendacit correspondientes, vamos a analii qué consiste el proceso de instalael cémo funciona de manera intern qué es exactamente lo que le suce a nuestro sistema durante los 45 tos que estaremos frente al progi de instalacién de GNU/Linux. HII} SI NUESTRO EQUIPO NO BOOTEA DEL CD. Podemos utilizar una herramienta llamada Smart Boot Manager (http://btmgr.sour net/download.htmt). Esta se graba en un disco floppy para i con el i cidn. Aunque parezca raro, el progra- ta de instalacién de GNU/Linux fun- ciona bajo GNU/Linux. Entonces, no podemos iniciar el sistema de instala- cién desde Windows ya que no se tra- Guia universal de instalaciones domésticas de Linux Lil proceso de instalacién comienza icio del programa de instala- tw de un programa de Windows sino de Linux. La manera mds fécil de ini- ciar el sistema de instalacién consiste cn ingresar el CD y configurar la com- putadora para que bootee automitica~ mente desde esa unidad. En general, {odas las computadoras permiten boo- tear desde una unidad de CDROM y para esto, si el equipo no lo hace auto- indticamente, lo tinico que hay que ha- cer es ir hasta la configuracién del BIOS del sistema y definir como pri- (eee mera unidad de inicio el CDROM. Luego, sélo deberemos ingresar el CD en la lectora, presionar el botén de reinicio de la computadora y listo. Una ver iniciado el sistema, lo primero que se llevard a cabo es una deteccién del hardware que tenemos, Dependiendo de la distribucién, éste sera el momento de configurar el hardware que tenemos, 0 no. Algunas distribuciones, cuando ape- nas inician el sistema de instalacién, nos preguntan datos bésicos como el idioma de la instalacién, el tipo de teclado que tenemos, nos presentan la Licencia Pi- blica General (Figura 9), etcétera. Uno de los puntos mds importantes de todo proceso de instalacién de GNU/ Linux es el momento de las particiones Para explicar qué es una particién, po- demos imaginar el disco rfgido de nues- tra computadora como una gran torta, que debemos partir en porciones que se Figura 9. Casi todas las distribuciones presentan la Licencla Pablica General antes de comenzar con el proceso de instalacion. les asignardn a los di operativos que queramos instalar. En general, si tenemos un solo sistema operativo, la torta seré toda para Win- dows. Ahora, lo que vamos a hacer es crear una nueva particién. Esto es, cor- tar una porcién de la torta para asigndr- sela a GNU/Linux. Légicamente, esto quiere decir que Windows dispondré de menos espacio en el disco rigido. En realidad, GNU/Linux necesita dos particiones para funcionar correctamen- te. Una de ellas se llama particién raz y serd la particién en donde instalaremos todo el sistema operativo y las aplicacio- nes. Esta particién tiene que tener un minimo de 2 GB (para tener un sistema completo) y un méximo que el usuario puede definir segtin sus necesidades. La segunda particién que debemos crear se llama Linux Swap (intercambio), y es Cte f Dletorate i“ Figura 10. Las herramientas de instalacion de las distribuciones més populares nos permiten reparticionar el disco rigido ‘mediante la modificacién de un gréfico que representa su estructura. un espacio del disco rigido que cuando la memoria RAM del sist acaba (por ejemplo, cuando « muchos programas en simult tamafio de esta segunda particidt neral es del doble de la memo) que esté instalada en el sistem ces, si tenemos 256 MB de RAM, una particién de inter 512 MB es lo recomendado, fenemos las agallas y el conocimiento jwecesarios, podemos realizar un control {hls minucioso de la creacién y el redi- jensionamiento de las particiones. na vez que el espacio para el nuevo sis- ina operativo se ha creado, el préximo M0 consiste en scleccionar qué paque- es de aplicaciones van a instalarse. Es comendable no escatimar: si hay re- itsos (esto es, espacio en el disco rigi- 0), conviene instalar todo lo que poda- 0s. Esto nos ahorraré trabajo mds ade- inte y nos permitiré conocer més apli- ciones del mundo del eédigo abierto. in cambio, si no hay espacio suficiente, nemos que instalar sélo lo que necesi- lemos pero sin olvidarnos de instalar los \quetes de desarrollo de aplicacio- is y la documentacién. Los primetos rin necesarios a la hora de instalar yogramas que requicren ser compila- los (esto es, cuando descargamos un ograma en formato de cédigo fuente), La segunda nunca estaré de més para jprender nugvos comandos 0 sacarnos Midas sobzets utilzacion de algdn pard metro. El proceso de copia de los pa- s a nuestro equipo puede tomar gre media hora y dos horas, depen- iliendo de la cantidad de aplicaciones que hayamos elegido para instalar y de hi velocidad de nuestro equipo. so muy sencillo. Muchas distrib Jo hacen de manera totalmente tica. Sélo debemos definir qué de megas le vamos a quitar a para asignarselos a GNU/Linux y ‘ma se encargard de crear la partied y la particién de intercambio, formas, la mayor parte de los sist instalacién permite acceder a cof sistemas de particionamiento en 4 Una ver que todo el sistema esté insta- lado, algunas distribuciones nos per- miten controlar la configuracién del hardware y nos informan si no pudie- ron instalar algin dispositivo de forma correcta. Este es el momento de con- sultar los manuales de nuestros dispo- sitivos y configurar cuanto podamos. El iltimo paso del proceso de instala- cién del sistema operativo consiste en la instalacién de lo que se denomina gestor de arranque. Este programa cs el que nos permitiré iniciar el sistema operativo y se instala en la MBR (sec- tor de arranque del disco rfgido). El gestor de arranque nos permitird, ade- més, seleccionar el sistema operativo que queramos iniciar por medio de un menti que se presentaré en nuestra computadora justo después de presio- nar el botén de encendido. El proceso de instalacién del gestor de arranque es automético en la mayor parte de las distribuciones. Y si se nos consulta por la creacién de un disco de inicio de Linux, conviene que lo haga- mos. Después de todo esto, sdlo es cuestién de reiniciar el equipo ¢ ingre- sar ala nueva distribucién desde el menti de inicio de sistemas operativos que aparece en pantalla. Como convencer al jefe de migrar a Linux Convencer al CEO, al gerente de siste- mas 0 al administrador de turno es, en realidad, explicar los beneficios de la manera més simple y concisa posible. Por eso, el siguiente discurso ser de gran utilidad a la hora de presentar un proyecto de migracién a Linux. Figura 14. Menii de inicio de! sistema operativo Mandriva Linux. Cuando las compaifas se plantean son los beneficios de utilizar p de cédigo abierto, se encuentran a ra vista con el famoso tema de hay que pagar licencias. Eso es es una ventaja que en algunos puede hacer ahorrar miles de dol 10, el principal beneficio no esté hecho, muchas compafifas tienen la te de no seleccionar sus sistemas valor de las licencias sino por el val producto como un todo (y esto incl sistema, los servicios relacionados, porte, etoétera). El principal benefi utilizar herramientas de cédigo abi en nuestra empresa es la indepen tecnolégica. Al utilizar software de g0 abierto, no estamos atados a nit compafifa en particular. Y para expl esto, es bueno recordar el ejemplo que Jon Hall (presidente de Linux Inten tional) en sus charlas (Figura 12), Ion Ne] JUINUX,) Linux international Figura 12. Linux International es una organizacién que se dedica a difundir y evangelizar sobre las ventajas de Linux para usuarios finales y negocios. Hace algunos afios se detecté una vulne- rabilidad importante que afectaba a la mayor parte de los navegadores de In- ternet. La vulnerabilidad era muy seria Ys entre otras cosas, permitia que cual- quier persona que tenga algunos conoci- mientos avanzados de seguridad pudiera acceder a sitios seguros con encriptacién sin tener siquiera usuario y password. Bien, dado que la vulnerabilidad debia ser resuelid lo més répido posible, el parche para el navegador Konqueror (el navegador oficial del proyecto KDE) aparecié algunas horas después de que se detectara la vulnerabilidad. El pro- yecto Mozilla por su parte, lanzé el par- che algunas horas més tarde. Finalmen- te, el parche para el navegador de Inter- net propietario mds famoso, aparecié casi una semana después. En resumen, los productos de cédigo abierto se corrigieron el mismo dia en el que se detecté la vulnerabilidad, mien- tras que los usuarios de productos pro- pietarios tuvieron que vivir en la oscuri- dad durante varios dias. Problemas como el de este ejemplo ocu- rren con bastante frecuencia y son una muestra del dinamismo y la indepen- dencia de los que gozan los proyectos de cédigo abierto. Supongamos que en un departamento de una compaiifa se utili- za un software que cierto dia comienza a fallar. Si el programa es propietario, entonces habré que contactarse con la empresa que lo desarrolla y pedirle que desarrolle un parche para corregirlo. Eso puede llevar un dfa, dos o diez meses. Y tendremos que esperar. Imaginemos que, si la compafifa es medianamente grande, tendré tiempos mayores ya que la situacién que le reportamos nosotros con seguridad se habré repetido en otras compafifas, quizd con otros sistemas. En cambio, si la herramienta que utiliza- mos es de cédigo abierto, podemos Ila- mar a la compafiia que nos brindé el servicio de instalacién y pedirle que so- lucione el problema. Si la compafifa nos ofrece un servicio que no nos satisface (como un plazo de treinta dfas para so- lucionar el problema), entonces tene- mos toda la libertad de llamar a otra compafifa para tener otra propuesta de solucién diferente. Lo mismo sucede con las funcionalida- des de un programa. Si compramos un programa cerrado, estamos compran- do un grupo de funcionalidades que muy dificilmente puedan extenderse para adecuarse atin mds al funciona- miento de nuestra compajifa. Pode- nos llamar a la compaiifa que desarro- la el programa propietario y decir que aecesitamos tal o cual funcionalidad, ero seguramente recibiremos un no somo respuesta ya que, si la compaiifa iene 10.000 clientes, es imposible que igregue miles de funcionalidades pedi- as por todos esos clientes. En cambio, i utilizamos programas de cédigo ibierto, podemos contratar a cualquier programador capacitado para difique y adapte el programa al namiento de la empresa, La independencia tecnoldgica principal beneficio de utilizar abierto. El hecho de poder dispoly Programa como queramos pari tarlo, modificarlo, mejorarlo y zarlo es, simplemente, el valor portante de los productos de abierto. Y por eso, las grandes fifas ya entendieron que el cddigo to es el futuro y los productos I aparecen en los primeros. pues predileccién en los listados de it mentacién de nuevos sistemas, Como llevar adelante un proceso de auditoria exitos En una compafifa, lo primero que le hacerse cuando se plantea la de sus sistemas a productos de ¢6 abierto es dividir el parque de sis en departamentos, aun cuando esto bueno visualizar los departamentos a.cada uno como drea. Por ejemplo, de contabilidad, 4rea de documer cién, drea de sistemas, drea de infort EL PORTAL De LINUX SOBCGRATIVG dlivoria en cada uno de esos departamen- tos, Er tor debe prestar especial atencién al re- levar los siguientes datos: * Cantidad de computadoras del de- esté hecho realmente en la empresa f un mapa y entonces ponerle un nomb tin al cliente, drea de ventas, etoétera. ego debe realizarse un proceso de au- el proceso de auditoria, el audi- partamento. + Cantidad de aplicaciones promedio que utilizan los empleados. * Tipo de aplicaciones que se utilizan en el departamento. + Sistema de almacenamiento que se utiliza en el departamento. * Sistema de copias de seguridad que se utiliza en el departamento. + Perfil de los empleados. * Potencial de adaptacién al nuevo sis- tema de cada empleado. * Voluntad de adapracién al nuevo sis- tema de cada empleado. * Problemas que los empleados denun- cian que tienen con el sistema actual. * Capacidad del hardware de funcionar con el nuevo sistema. ¥ efltitado puede extenderse a cual- quicricamipo que ¢! auditor considere necesario. Estes’ son sélo algunos de los: puities’ importanees del ‘eleve- miento de informacién para generar un plan de migracién, acorde a cada departamenco, Hl plan de tnigracién total de la compafifa es, en realidad, la ping de ents planes de vhigraciéa de lof diferencea deparcauncntcs, Luega dé obtener tndos|los datos, que iacaeionanioa aniedarmeatey aut tor encargado, dé generar’ el plan de sulgracibes pues deduct Guce aspeo tos como los siguientes: wow CON CAC + Necesidad de expandir la capacidad del hardware de las computadoras. * Aplicaciones abiertas que se pueden utilizar en ese departamento. * Disponibilidad local de programado: res que puedan brindar servicios de soporte y extensién de funcionalida des del sistema de cédigo abierto. * Actualizar los sistemas de almacena: miento. * Necesidad de brindarles seminarios « los empleados para convencerlos di que el cambio serd para mejor. * Necesidad y tipo de capacitacién que necesitarén los empleados para acos tumbrarse al nuevo sistema. + Estructura de soporte que se les brin: daré a los empleados. * Tiempos que llevaran las modificacio: nes como la actualizacién del hardwa re, la instalacién de los nuevos siste mas y la capacitacién del personal. * Desarrollo de manuales de uso y solu cién de problemas para los usuarios. En cuanto al tiltimo punto, esto nos da e pie para hablar de un paso muy impor tante en el proceso de migracién. Tod¢ ghd "nto, desde que se tiene la prime- ra reunién con una compafifa proveedora de servicios de sistemas hasta que se insta- Ia el tiltimo programa del proceso de mi- gracién, debe ser documentado. Todo debe quedar archivado con fecha, hora, nombres de los responsables, firmas, etcé- tera. Por eso, hasta ahora generamos dos informes por departamento: el primero de ellos se llama Informe de auditoria y es, bdsicamente, el resultado del releva- miento que se hizo en el departamento. All se especifican todos los puntos que detallamos més artiba y se suman conclu- siones personales del auditor. Con este in- forme se genera el Informe de implemen- tacién, que es un dewalle de los puntos que se traran en el plan de migracién. Una vez que estos dos informes estén realizados y pulidos podremos pasar al préximo paso: el desarrollo del paso a paso de la migracién. Plan modelo para migrar de Windows a Linux Cambiar el sistema operative implica un cambio en los paradigmas operativos de gran parte de nuestra compajifa. Si bien es importante y peligroso, si lo ha- cemos de manera estructurada (y sin apuros) todo saldré segiin lo plancado. Aqui, el auditor tendré que te cuenta diferentes puntos aislados | como la capacidad del hard adoptar el nuevo sistema operative, medios de backup de la informaciéty tual a utilizar, los perfodos de pru més. Veamos una gufa paso a paso, Lo primero que se debe hacer para p seleccionar una distribucién es ani las ofertas del mercado en cuanto a | versiones de Linux posibles pai en los diferentes equipos de los dis departamentos. Seleccionar la distrib cién segiin el hardware es un ertor que seguramente terminaremos ¢l do una distribucién que quizé no sea 6f tima para la operativa humana. De tod en Linux, Alf encontraremosreportes, enlaces a dr po de dispositive de hardware. formas, el hardware es un punto muy importante y debemos tratar de equili- brar nuestra decisién entre las distribu- ciones que mejor funcionen en nuestro hardware y las que nos ofrezcan mejores herramientas operativas. Andlisis de compatibilidad de la distribucién elegida Como mencionamos antes, una vez que tenemos elegida la mejor distribucién que se adecita a la operativa del departamento de nuestra compafifa, podemos proceder a analizar si es compatible con el hardware que tenemos, En caso de que no Io sea, existe la posibilidad de actualizar el hard ware o de buscar otra distribucién. Actualizacién del hardware (opcional) Las actualizaciones de hardware nunca vienen mal. De hecho, debemos tomar- lo como una inversién en la compahia, En el 90% de los casos, las actualizacio- nes de hardware optimizan el desempe- fo de nuestros empleados. Por eso, si la distribucién que queremos usar necesita mas recursos, podemos analizar la op- cién de actualizar el hardware como una buena oportunidad de obtener mejores resultados con todo el proceso. Backup de los datos importantes Antes de realizar cualquier tipo de mo dificacién en el sistema informético, e absolutamente necesario. realizar bac ups de los datos de los equipos. Ex muchos casos, con copiar documentos planillas a un CD cs suficiente. Er otros, también es necesario hacer répli cas de las bases de datos. Todo este pro ceso puede ser muy sencillo o muy com plejo si hablamos de cientos de méqui nas. Es bueno tener en cuenta la posibi lidad de generar imagenes de los disco arama ster Gane) Sameera merece Sta TOROS | cea RaanCraaen trees tenon Eee. _ } TEREST Semis Se Secs guitoninitnn ES Seger neem ourreenmta emt nc ai acre Figura 13. Hardware Lister (http://ezix.org/project/wiki/HardwareLister) es una herramienta que genera un informe del hardware de facil navegacién. rigidos de los sistemas, Estas son muy uitiles ya que, en caso de tener proble- mas, se puede tener el sistema original restablecido en cuestién de minutos. Instalacion del nuevo sistema Una ver que se realizé el backup de to- do lo importante, el hardware esté listo y la distribucién esté en nuestras manos, podemos proceder a instalar el sistema operativo, Si tenemos muchos equipos, podemos montar un servidor NFS que contenga los CDs de la distribucién inscalar varias computadoras al mismo tiempo. Seria bueno que todas las distri- buciones detectaran todo nuestro hard- ware sin problemas. Lamentablemente, ssto no es asf, por lo que serd necesario tener en cuenta los tiempos extras que come la configuracién del hardware, la ntisqueda de los drivers, etcétera. Periodo de prueba con los dos sistemas operativos LILO nos permitan seleécionar de los dos sistemas operativos b cuando se inicia la computadora, Luego de un tiempo prudence cuando ya tenemos certeza de q departamento funciona sin probl con el nuevo sistema operativo, pd mos desinstalar el viejo. Remover el sistema operativo anterior ( Remover el sistema operativo anter €s un proceso relativamente simp pero no es bueno borrar todos los § temas del parque. La eliminacién del ser paulatina y siempre teniendo cuenta la posibilidad de que las puedan salit mal o que se necesite tablecer el sistema anterior para algul actividad en particular. Cémo reemplazar aplicacion propietarias por sus contrapartes libres No es recomendable borrar el sistema ‘igjo instalar el nuevo. Siempre es >ueno instalar el nuevo sistema opera- ivo sin quitar el viejo haciendo que al- sin gestor de arranque como Grub o El proceso de migrar aplicaciones sus complicaciones también, pring palmente porque, como mencionamt antes, cambiarles la herramienta d trabajo a nuestros empleados es com cambiarles los métodos y las formas de trabajo, Veamos en qué pasos pode- mos estructurar el proceso para que sea lo mas suave posible. Relevamiento de la informacién del software Lo primero que debemos hacer ¢s un in- forme detallado de todas las aplicaciones que utilizan frecuentemente los emplea- dos de los departamentos que vamos a migrar, Durante el relevamiento, ¢s ne- cesario que el auditor tenga la pericia su- ficiente para discriminar cudles de las he- rramientas que se utilizan son necesarias y cules no tanto. Los usuarios suelen decir que necesitan ciertos tipos de apli- caciones como sistemas de chat, mensa- jerfa instanténea y descarga de archivos, cuando en realidad no los necesitan. Es importante analizar también qué versiones de las aplicaciones se estén utilizando y en qué formato de archi- vos trabajan estas aplicaciones. Es ab- solutamenye necesario que las nuevas solicits sean compatibles con el formato de los archivos que se utilizan en las aplicaciones actuales. Anilisis de la disponibilidad de las aplicaciones libres Con el listado de las aplicaciones rele- vadas, podremos realizar la buisqueda de las alternativas disponibles en el mundo del cédigo abierto. Para eso, debemos tener en cuenta los requeri- mientos de las aplicaciones que esta- mos seleccionando, el tipo de licencia, el historial de desarrollo que tienen (con qué frecuencia se generan parches para errores, qué actividad hay en el grupo de desarrolladores, etcétera). Otro factor importante para tener en cuenta es la difusién local que tiene la aplicacién. Es importante darles prio- ridad a las aplicaciones que sabemos que tienen un grupo nutride de usua- rios o desarrolladores en la zona en la que estamos para asf tener mayores probabilidades de tener soporte a la hora de solucionar problemas. Veamos un resumen de las aplicacio- nes de uso cotidiano que pueden ser ideales para reemplazar a las versiones de empresas privadas que se pueden estar usando hasta ahora. * Navegadores web Hoy en dia, los navegadores son pro- gramas muy utilizados en las empresas, tanto para acceder a sitios de Internet como para utilizar portales exclusivos en las redes internas (intranet). Firefox (www.mozilla.org/pro- ducts/firefox): Firefox es el navega- dor web de cédigo abierto més popu- Jar del momento, Es altamente com- patible y su desarrollo se lleva a cabo con gran velocidad. — Konqueror (www.konqueror. org): se trata del navegador oficial del proyecto KDE. Es muy veloz y esta- ble, aunque no es tan compatible como Firefox. ~ Opera (www.opera.com): no es c6- digo abierto pero es gratuito. Es veloz y tiene caracteristicas que ningtin otro navegador offece, como un cliente de BitTorrenc integrado (Figura 14). * Clientes de correo electrénico Muchas de las operaciones de comu- nicacién de las empresas se realizan por medio de e-mails, por lo que una aplicacién de este tipo es de suma importancia para el correcto funcio- namiento de la compafifa. -Evolution — (www.gnome.org/ pad Figura 14. Opera es un excelente navegador, ‘sumamente compatible con las actuales aplicaciones web 2.0 projects/evolution): es consi do por muchos la copia mds ¢ de Microsoft Outlook. Thunderbird (www.mozill products/thunderbird/): es el te de correo electrénico oficial proyecto Mozilla. Oftece mi prestaciones y es muy estable, — Kmail (http://kmail.kde.o1 el cliente oficial del proyecto No ofrece tantas funcionali como Thunderbird y Evolut pero es muy veloz, Spruce (http://spruce.so net): es una versin reducida Krail, que es mucho més liviano, —Balsa_(http://balsa.gnome. se trata de un cliente de coi electrénico del proyecto GNO! que tiene un look muy simil del cldsico Eudora (Figura 15). * Herramientas de oficina Figura 15. Balsa es un cliente de correo electrénico ‘sumamente liviano, ideal para los sistemas con bajos recursos. Para llevar adelante una empresa, se utilizan documentos de texto, plani- llas de céleulo y otro tipo de elemen- tos. Por eso, es indispensable conse- guir aplicaciones que permitan crear- los y también compartirlos con los usuarios que utilicen los productos mds comunes del mercado. —OpenOffice (www.openoffice. org): ld suite de oficina por exce- lencia. Ofrece procesador de texto, planilla de célculo, sistema de dise- fio vectorial, presentaciones, editor web, base de datos y més. Todo compatible con Microsoft Office. = AbiWord (wow.abiword.org): exce- lente procesador de texto compatible con Microsoft Word. Es muy liviano, Jo que Lo hace ideal para los sistemas de bajos recursos en los cuales Ope- nOffice funciona lento (Figura 16). —Gnumeric (www.gaumeric.org): é- ta es una excelente planilla de célculo compatible con el formato de archi- vos de Microsoft Excel. * Aplicaciones de servidor En las empresas se ahorran recursos mediante la centralizacién de éstos en servidores que permiten que todos los usuarios de la red compartan y utili- cen, por ejemplo, la misma impresora, Veamos aplicaciones tipicas para im- plementar en una red con servidor. =CUPS - Servidor de Impresién Figura 16. AbiWord es uno de los mejores procesadores de texto de cédigo al (www.cups.org): ¢s el mejor servi- dor de impresién hasta cl momento. Soporta una gran cantidad de im- presoras y es compatible con los sis- temas Linux, Mac y Windows. Samba — Servidor de Archivos (www.samba.org): Samba permite que los recursos alojados en un equi- po Linux sean visibles desde un equipo Windows y viceversa. ~ Postfix — Servidor de Correo Elec- trénico (www.postfix.org): servidor de correo electrénico estable, robusto y sobre todo, muy ficil de instalar. Como vemos, hay opciones para todo 7 mucho mds. Estas han sido sdlo al- gunas recomendaciones, Para més in- ‘ormacién podemos visitar Linux Mi- sration (www.linuxmigration.com/ Wickref/), un sitio que contiene un istado de aplicaciones titiles a la hora 54 de realizar la migracién. Instalacién de la aplicacién — En este punto, lo mas importante 65 al igual que en la instalacién del si operativo, la instalacién de las aplis nies no debe ser masiva en todas las ¢ putadoras al mismo tiempo. El pro debe ser paulatino y con constantes troles de compatibilidad entre la ni aplicacién y la vieja, para asegurarnos. que todo vaya a funcionar bien. Periodo de prueba con la nueva aplicacién El perfodo de prueba del desempefo los empleados con la nueva apli puede llevar entre una semana y un meses, segtin la magnitud de la empresa y ln cantidad de empleados. No ¢s mala idea que, durante un perfodo de tiempo prucencial, tengamos algunos empleados que trabajen con el viejo sistema en si- multéneo con algunos empleados que ya ¢stén trabajando con el nuevo. Como armar un plan de capacitacién Bl plan de capacitacién es muy impor- tante porque nuestros empleados de- ben acostumbrarse al nuevo entorno de trabajo. Estos planes de capacita- cién deben contemplar tiempos, mate- rial, ejercitacién, perfodos de adapta- cién y sistemas de soporte. Armado del programa El programa de capacitacién debe con- templar las tareas que realizan los dife- rentes departamentos de nuestra com- Por ejemplo, si el departamento ifiza exclusivamente planillas entonces debemos armar tuna especie de curso sobre la utilizacién del software de planilla de célculo que vamos a instalar en Linux. Pero, al mis- mo tiempo, debemos capacitar a los em- pleados contables en la operacién gene- ral del nuevo sistema operativo. Dictado de clases Mucha gente deja este punto para cuando el proceso de migracién ha fi- nalizado, pero existe la posibilidad de que'el proceso de capacitacién se reali- WINDOWS / LINUX ny ce en paralelo con el de migracién. Po- demos enviar a nuestros empleados a un instituto externo si atin no tenemos los equipos preparados con el nuevo sofeware para trabajar. Evaluacién de los alumnos Quien gestione el plan de migracién, después de capacitar a los empleados, debe evaluarlos y archivar los resulta- dos de las evaluaciones para poder sa- car conclusiones en cuanto a la capaci- dad de adaptacién al nuevo sistema. Las evaluaciones pueden ser practicas, tedricas o una mezcla de ambas. ‘Seguimiento de la actividad Una ver que la migracién esté hecha, es absolutamente necesario implemen- tar un plan de seguimiento de la ope- rativa de los empleados con el nuevo sistema durante un perfodo de tiempo que puede oscilar entre 10 y 30 dias, El objetivo de hacer esto es detectar los posibles problemas de operativa que pueda generar la migracién, aeneracion de documentos Je soporte ld de que haya un administrador de istemas que pueda ayudarlos, es necesa- lesarrollado especificamente para cada lepartamento, en el que se especifique a utilizacién y el mantenimiento tanto lel sistema operativo como del conjun- o de herramientas utilizados, \Cuanto tiempo es ‘ecomendable tener los dos \ lo largo de todo este capitulo hemos ntentado descacar numerosas veces que lebe hacerse de manera brusca de un lfa para el otro, La tecnologfa actual tos permite tener los dos sistemas ope- ativos instalados en simulténeo, y es mejor que los equipos estén asf por tiempo prudencial, Ahora bien, 4 inalmente, el punto més importante es cudnto tiempo? Lo que seguram que los empleados tengan a quien acu- sucederd es que los primeros dias lir cuando tengan un problema. Mds personas se encontrardn en problet para llevar a cabo determinadas En esos casos, es recomendable que io que haya un kit de documentacién licen Windows si y s6lo si la tarea quiere solucién con extrema urgene En caso contrario, es una excel¢ oportunidad para que el usuario in tigue, se aclimate al sistema operatiy descubra el problema por sf mis alguien con un poco més de cot mientos le explique cémo llevar a la tarea). De esta forma, la préxima que aparezca un problema similar no tendré que ingresar a Windows Por eso, una vez. que se hizo la im mentacién de Linux, hay que pens la opcién Windows como un salvavi a migracién de Windows a Linux no para cuando las cosas salgan dem: mal. Si no hay problemas, es reco1 dable dejatlo instalado durante al semanas 0 incluso meses si hay es en disco y las licencias lo permiten. LINUX MIGRATION, IN les dard cierta seguridad a los administra- dores y a los usuarios. Luego, cuando es- X¢ probado y demostrado que todas las tareas se pueden Hlevar a cabo sobre Li- mux sin problema, se puede prescindir totalmente de la particién de Windows. Si hay algo que queda demosttado en este capitulo es que el proceso de migra- a Linux no es una tarea que pueda llevarse a cabo a las apuradas. Lo més importante de todo es informarnos so- bre los problemas que puedan llegar a ocuttir. Por eso, en este capitulo hemos brindado algunos trucos que segura- mente serdn de gran utilidad, pero lo cierto es que la mejor ensefianza es la ex- periencia propia. Si tenemos computadoras de marca (co- mo IBM, HP, Acer, Dell, etcétera) co- rremos con la ventaja de poder encon- trar con més facilidad los problemas es- pecificos que pueda llegar a tener la dis- tribucién que estamos intentando insta- lar. Sélo tenemos que entrar a Google y utilizar como cadena de biisqueda una combinacién de palabras que incluya la marca y el modelo de la computadora junto con el nombre y el mimero de la versién que pensamos instalar. Por tiltimo, serfa muy importante que, luego de haber Ilevado a cabo con éxito el proceso de migracién (y si seguimos los consejos de este capitulo al pie de la letra seguramente habré sido asi), docu- mentemos todo el proceso y lo ponga- mos en Internet para que les sirva de ex- periencia a otros usuarios. Porque esto funciona ast, la gente que tiene las solu- ciones a los problemas de otras personas las brinda de manera desinteresada (si no GNU/Linux no serfa lo que es hoy). Finalmente, recordemos que migrar a Linux es un proceso que puede llevar un par de horas, un par de dias o un par de semanas. Todo depende de la forma en la que llevemos a cabo los pasos necesa- rios para evitar todos los posibles pro- blemas. Por eso, conviene que seamos ordenados, que nos informemos y que nos animemos a hacerlo. i Figura 17. Linux Migration (www.linuxmigration.com) es un excelente recurso web para encontrar informacién sobre cémo llevar adelante el plan de migracion, 202 Secretos de Linux | | Distribuciones Existen muchas distribuciones y conviene conocerlas antes de instalar alguna de ellas. Por eso, en este capitulo veremos las principales caracteristicas de cada una de las mas populares y de algunas menos conocidas, pero igualmente recomendables. arLinux 202 Secretos de Linux vor starlinux.net io dedicado a difundir noticias relacionadas con GNU/Linux. Incluye foros discusién que nos permiten realizar consultas 0 ayudar a otros usuarios a re» Iver sus problemas. Se encuentra en idioma espafiol, por lo que es una buena cién para buscar la informacién que necesitemos. J Aplicaciones que no todos conocen En este apéndice conoceremos algunas istroWatch i aplicaciones que no sélo nos ayudaran tp://distrowatch.com a mejorar nuestro trabajo en Linux, sino strata del gran indice de distribuciones de Linux. Podemos realizar buisquedas pot tegoria y por plataforma. Aunque muchas cosas sélo se encuentran en idioma in= &, posee un ranking con las distribuciones mds populares de Linux que nos pue~ ser de gran ayuda cuando deseemos evaluar cual de ellas vamos a instalar. tareas cotidianas de forma mas rapida que también nos permitiran realizar exséncilla, Ademés, algunas de ellas nos darén la posibilidad de hacer cosas que no crefamos posibles. ——————— e- =| a eee i ee ite hs seenen laine iiig Reining anne APLICACIONES UTILES Zn lugar de hacer una resefia de cudles on las aplicaciones més populares para .inux, en esta seccién incluimos una se- eccién de mini-aplicaciones que, si bien 10 son muy populares, hardin las delicias fe aquellos usuarios que quieran mejorar a experiencia de usabilidad de Linux. Extraccién de audio de CDs con ripperX Seguramente, tenemos cientos de CDs de audio que nos gustarfa pasar a la computadora. Bien, lo haremos con una pequefia aplicacién muy util lle- mada ripperX (http://sourceforge. net/projects/ripperx). Como es co- miin en estos proyectos chicos, tendre- mos que compilar para instalar. Una vez que tengamos el programa ins- talado (Figura 1), cuando lo iniciemos nos dard error si atin no hemos coloca- Figura 1. RipperX nos permite comprimir en varios formatos con tan sélo hacer Ul do el CD de fi un poco més agradable, ya que la que tiene se ve algo tosca y fea. Sin em- argo, sus funcionalidades y su facili- tad de uso hacen que nos olvidemos de este punto en forma inmediata. dio en la lectol dremos que presionar Sean d insertarlo, Lo recomendado @6 | Visitar la opcién Contiguracién, demos indicar en qué directo macenardn nuestros temas ripé plug-in de configuracién y en lucién queremos que compritil fault de 128K esta més que bief Cuando ha lefdo el CD, nos debajo todos los temas y algo macién como el artista, el n¢ dlbum y en qué afio se edits lo testa marcat los temas qui ripear (podemos seleccionar 10 el comando alusivo) y luego Go. Ademés del formato MP3, podemos codificar en ogg y Si hablamos de las ventajas d ‘ma, nos encontramos con una cién répida (tarda aproximad un minuto y medio en ripear de tres minutos a MP3) que 6 pocos recursos. Si nos pone tenciosos, podrfamos pedir unl Accesorios para GNOME con gDesklets GDesklets (http://gdesklets.de) es una aplicacién que incorpora muchisimos Widgets (pequefios programas aplicati- vos), algunos de muy buena calidad, otros muy titiles y otros que dan un re- hovado aspecto y que mejoran la inter- fivz visual de nuestro escritorio (Figura 2). Desdle hace mucho tiempo existe Karam- ba y SuperKaramba para el proyecto KDE, por lo que los usuarios de GNO- ME estaban a la deriva en este apartado de embellecer nuestro escritorio. Pero es- to ya esté cambiando. Paia instalar la aplicacién simplemente hay que ir a la consola y escribir el siguiente comando: psi-poy encontraron sdeslets [ower category eobeminc) «dune ger ver 02 fisinbfosestes 1. barlodesietsplasos val esieop pager for ps-small Gnome Bar ver 252 ‘Afoplsament forthe Gnome Panels “ib by ties Cappel te ‘the eNOwE Talat and Pager n a asklet TaskList ve: 020 $ sudo aptitude install gdesklets-data. Luego de la descarga y la instalacin de los paquetes, gDesklets estaré listo para que afinemos nuestro escritorio. Sélo lo abriremos desde Aplicaciones/Accesorios. Algunas mini-aplicaciones que tendre- mos a disposicién son: relojes analégi- cos, barras extras transparentes, carpetas con efecto en 3D, monitores de sistema que nos indican la capacidad del disco, la temperatura de nuestra maquina y hasta completos docks que le darin a nuestro escritorio una apariencia similar ala de Mac OS X. Control de reproducci6n de miisica desde Firefox FoxyTunes (Figura 3) es una extensién que agrega controles de reproduccién a Firefox para que podamos manejar la co- leccién de miisica que estamos reprodu- ciendo sin perder de vista la pantalla de hareladeshetiplye asian dy Figura 2. Con Gdesklets podremos agregar muchos widgets al escritorio Gnome. productor, ya que Bor tiene comandos y no el duccién. Por ejemplo, con Amarok, pero sopolt En el ment principal mendable ver la ayuda dé manejar los comandos ‘@Gh Luego de que tengamoy do, ya estaremos listos pil pips Dont Lie (en espafiol) hakira: Pral Fixation 1! “| 1200/36 | 168) © 2 francorivero@gmail.com 3's) mig 13 de dic, 15:24] Figura 3. Ejecucién de la extensién de Firefox FoxyTunes. Firefox, podremos poner en pausa, play, stop macién sobre la cancién q los los archivos duplicados, en desuso y nuestro navegador. Lo primero que debe- duciendo, maximizar y Jos archivos fantasmas que no hacen otra ‘mos hacer para instalarla es ir a hteps:// —productor, etcétera, ‘gos que ocupar valioso espacio, ademas addons.mozilla.org/firefox/219. Alli ) ile ralentizar el inicio y el desempefio de simplemente seleccionaremos Install Now fiuestro sistema operativo, El problema y listo (s6lo ocupa 500 kb). Cuando rei Mantenimiento del principal radica en que hacerlo a mano es niciemos Firefox la misién estar4 cumpli- con KleanSweep Algo peligroso y poco recomendado si no da: tendremos disponible la barra de F fubemos con exactitud lo que se debe ha- FoxyTunes en su parte inferior. Luego de Este programa nos (Figurl er, Para eso, nos podremos valer de esta instalado deberemos configurar algin re- hacer un mantenimiento Jplicacién ya que hace toda la bitsqueda (on un cuidado brillante y nos pregunta- {i si estamos de acuerdo con los cambios {ie pretende realizar, La primera vez que 0 wiliza la aplicacién tardaré un buen juto, por lo que hay que ser pacientes. Linux, y para bajarlo hay que ir a /freshmeat.net/projects/ Kleansweep, donde lo podemos en- gontrar en formato RPM y DEB. Descargar contenidos ‘mbebidos con Download Embedded Figura 4, KleanSweep se encarga de eliminar toda la basura de nuestro sistema de archivos. Vs agradable mirar y disfrutar en linea Jos contenidos embebidos, pero zqué su- nuestra coleccién musical | Figura 5. Download Embedded permite descargar n videos y archivos de audio incrustados en paginas web. cede si queremos ver ese material sin tar conectados? Lo mds probable es qu no lo podamos descargar. La solucié viene de la mano de extensién Down load Embedded para Firefox, que pod mos instalar de https://addons.mozill org/firefox/1993. ;Cémo funcions Muy ficil. Cuando navegamos un sit que contiene contenido embebido, nc aparecerd una flecha roja en la barra ir ferior de Firefox (Figura 5). Si la presic namos, nos permitiré visualizar 0 de: cargar el contenido. Podemos descarg: videos y archivos de audio sin proble mas. Ademés s6lo ocupa 30 kb. El stiper portapapeles Glipper Es increfble que una aplicacién de ta s6lo 18 kb sea tan util a la hora de er bajar, y mds increible atin es que av ces figure en el puesto niimero uno ¢ descargas en sitios especializados com GetDeb (www.getdeb.net). :Para qu sirve? Se trata de un simple pero efic accesorio, que una ver. instalado e in ciado se acomoda disimuladamente ¢ nuestra barra de trabajo. Desde al administra de manera excelente nues- tro portapapeles, y funciona almace- nando todo lo que copiemos de nues- tras aplicaciones. De esta manera, lo que copiemos no suplantaré lo que ha- yamos copiado antes sino que se lista- den el applet para que cuando quera- mos recuperar un texto anterior sim- plemente lo seleccionemos de la lista. Cabe destacar que el texto actual se re- saltard en color azul, y siempre tendre- mos la opcidn de limpiar cuando nece- sitemos vaciar nuestro portapapeles. Lo podemos descargar del sitio hetp:// glipper.sourceforge.net. Si nos dirigimos a la opcién de Prefe- rencias podremos configurar algunas caracteristicas como la cantidad de en- tradas que soportard el historial y tam- bién algunas teclas répidas. Si somos usuarios de KDE, el proyecto original (sinénimo de Glipper) es Klipper. Limits Arcuft of eg Fieorye LE Chane ele ey aoe Clipboards: Which clipboards should be managed Glipper? @ Select - Mark/middle mouse button @ Copy - crtecictrie Behaviour & Tag Ctrl+C clipboards content in hiswy (bold) Save history key combination for popup: [@uen | Figura 6. Glipper nos permite establez la cantidad de items que almacenara para que potinos recuperar. Quizé lifcultad mas dell nian las pimeras version | era la bum de Google ine porado witas funcional gador quoontar con una Aaa a6 dt oom ‘Webmaster, advanced wen conateGuoome cohars for rou ce abe gle ya nosalgo novedoso, Vil cimientoée la blogésfera y ciones wb2.0, la inclinacidn| ca marcitro camino. Por jf una verdalera barra de bi no es ot cosa que una ext nuestro mvegador favor hablando de Groowe Seareh = | stan ‘Aaa Ae ea fp Cele Figura 7. La barra de bisquedas nos permitiré acceder a informacién contenida (on varios sitios web populares, que podemos elegir desde las opciones de eonfiguracién del programa. que tanbién se encuentra d para Intance Explorer, BE Figura 8. Aqui vemos c informacién sobre un Basicamente, lo que podemos hacer es buscar en sitios muy representativos como Digg, Del.icio.us, Ebay, Google, Yahoo, Amazon, Download y Mam- ma, entre otros. Ademds, podemos al- terar entre diferentes motores de biis- queda hasta que demos con lo que ¢s- tamos buscando, Como si fuera poco, podemos definir qué es lo que estamos buscando: noticias, blogs, videos, gru- pos, directorios, excétera, Alexandria: nuestra biblioteca virtual Se trata de un completo organizador de libros (Figura 8). Antes de empezar a uti- lizarlo, deberemos descargarlo (hnep:// alexandria.rubyforge.org) ¢ instalarlo y para eso, si utilizamos Debian o Ubuntu rn = (a ‘mo Alexandria nos muestra 10 de los libros registrados. desde una consola, deberemos ingresar lo siguiente: apt-get install alexandria. También podemos instalarlo en otras distribuciones como Mandriva, de ma- nera sencilla con urpmi alexandria desde una terminal. Una vez instalado, lo encontraremos en la opcién Oficina de nuestro mend. Con éte podremos incorporar libros afia- diendo todos sus datos como ISBN, nombre, editor y cantidad de péginas. Como valor agregado, también podre- mos aclarar la persona que lo tiene, si es que lo hemos prestado. Identificar los li- bros en el programa es stiper ficil, ya que podremos bajar una imagen de la portada del libro de Internet y anexarla, As{ se mostraran las portadas de nues- tros libros en lugar de simplemente su nombre. También podremos. realizar biisquedas por cualquiera de las catego- rfas que enumeramos antes. Gmail Manager Con esta extensién de Firefox podremos sincronizar nuestra cuenta de Gmail en pocos segundos. Cuando Ia instalamos (lo hacemos de-http://addons.mozilla. ee) se ubicard en la parte inferior de Firétox y mostraré un icono de Gmail. All{ podremos configurar nuestra cuenta y, en la seccién Preferen- cias, indicar cada cuanto tiempo se va a comprobar nuestra casilla. Cuando reci- bamos nueyos mensajes mostrar la can- tidad al lado del icono de la extensién. Pero lo bueno de la extensién no termi- na aqui, sino que también debemos te- ner en cuenta que nos dard la posibili- m dad de configurar varias cuentas Gmail en la misma aplicacién, Ade més, podemos asociar los alertas eon un sonido que se reproducird a la hora de recibir un nuevo mensaje, Gestion de descargas con Pando Pando es un programa de descar distinto de los que conocemos, ya que no funciona mediante un sistema a sino que lo hace mediante un sis que la empresa desarrolladora del pros grama llama supernodos. Cuando no» sotros subimos un archivo, éstos se cit- chean en los servidores de la empresit para quedar disponibles. Por eso pode» mos decir que, a nivel funcional, Pane do esta més cerca de un Azureus (clien= te de BitTorrent) que de un Amule (dliente de Edonkey). Para realizar una descarga, nuestra ta~ rea es visitar las diferentes paginas de descargas que en la red. Alli encontra- remos los diferentes archivos (juegos, documentos, programas, musica) con extensién .PANDO para luego iniciar la descarga con el programa. Al saber que su funcionamiento es similar a BitTorrent, podemos deducir que Pando esté pensado para bajar archi: vos de gran tamafio, como ISO de dis- tros y archivos de varios gigas. Para conseguir el programa podemos ir a la pagina oficial del proyecto en www.pando.com/download. El ar- chivo de descarga sélo ocupa tres me- gas y necesita al menos 256 MB de memoria RAM para funcionar. aa

Das könnte Ihnen auch gefallen