martes 23 de diciembre de 2008

Comandos basicos en Linux

Seguramente luego de instalar tu flamante Linux, te preguntaras "¿Y ahora que hago?". Bueno primero quiero felicitarte por probarlo, y voy a intentar guiarte con algunos comandos básicos, para que vayas probando.
Para introducir estos comandos, debes hacerlo a través de un interprete de comandos, el mas conocido sin duda es BASH, si utilizas ubuntu lo encontraras en Aplicaciones->accesorios->Terminal, si no dispones de un entorno grafico, luego de cargar el kernel, módulos y servicios, te aparecerá un interprete de comandos.
Los comandos en Linux soportan parámetros (opciones extras) que nos permiten realizar tareas de una forma más cómoda. La mayoría de los parámetros se pasan luego de escribir el comando, dejamos un espacio y utilizamos el símbolo guión y la opción, por ejemplo ls -l , el comando es ls u el parámetro es -l (Listar), otra forma es pasar los parámetros en forma de palabra, para realizar esto, debemos utilizar doble guión luego del nombre del comando y la opción, un ejemplo seria ls --all, esto pasaría el parámetro para mostrar todos los archivos incluso los ocultos en el directorio actual.

Algunos comandos utilices son:

whoami: Nos informa nuestro nombre de usuario.

pwd: Nos informa en que directorio actual estamos.

id: Nos informa cuales son nuestros privilegios en el sistema(0(root) es el usuario administrador)

ls: nos permite listar el contenido del directorio actual, si alguna vez usaste MS-dos te será muy similar a DIR.
Algo importante a saber, es que en Linux, podemos ocultar archivos para que no sea posible verlos por un ls normal. Para realizar esto, debemos ponerle un punto al principio del nombre del archivo, Un ejemplo seria: .oculto
A mi me gusta utilizar ls con los siguientes argumentos:

ls -lah : esto listaría todos los archivos del directorio actual, la opción l nos permite ver los archivos en forma de lista, la opción a nos permite ver todos los archivos, inclusive los ocultos(los que comienzan por punto), y la opción h nos permite visualizar el tamaño de los archivos en MB, de forma que sea mas cómodo.

mkdir: Este comando nos permite crear nuevos directorios(carpetas), el parámetro que le pasamos es el nombre de la carpeta que deseamos crear, un ejemplo seria: mkdir prueba, de esta forma creamos el directorio prueba.

cd: Ya creamos nuestro directorio prueba, pero ahora deseamos entrar en el, para ello, debemos utilizar el comando cd, su sintaxis es: cd prueba, de esta forma ingresamos al directorio prueba.

cp: cp te permite copiar archivos de un lugar a otro, su sintaxis es: cp archivo1 archivo2, con esto creamos una copia de archivo1 llamada archivo2.

mv: Seguramente necesitaras mover un archivo a otro lado, para eso sirve mv, un ejemplo es: mv archivo1 ../ , aquí apareció algo nuevo: ../ esto significa el directorio anterior, un ejemplo seria si estamos en /usr/src/ y escribimos ../ significa /usr/, otro mas seria ./, que significa el directorio actual, en este caso /usr/src, el comando mv archivo1 ../, entonces lo que hace es mover el archivo1 al directorio anterior. Muchas personas también utilizamos mv para renombrar archivos, un ejemplo seria mv archivo1 archivo2, esto cambia el nombre del archivo1 por archivo2.

rm: Tenes ganas de borrar algo, pero no sabes como hacerlo? para esto existe rm, se suele utilizar como rm archivo, pero también es posible utilizarlo con directorios, una contra al eliminar directorios es que deben estar vacíos para poder eliminarlos, aunque utilizando ciertos parámetros esto no es necesario. Para eliminar un directorio con archivos dentro, debes utilizar la sintaxis rm -fr directorio, esto fuerza la acción y borra todo.

cat: Nos permite ver el contenido de un archivo de texto desde la consola, su sintaxis es cat archivo1.txt

uname: Quieres saber que versión de Linux tenes? cual es tu arquitectura? cuando fue compilado?, para esto sirve uname, yo recomiendo que lo utilicen con el parámetro a: uname -a.

ps: Sirve para ver todos los procesos que actualmente están corriendo en nuestro sistema, yo te recomiendo usarlo con las opciones ef: ps -ef para listar todos los procesos.

top: similar a ps, solo que en tiempo real, es una especie de ver un ps de forma grafica, seguramente te parecerá similar al administrador de procesos, un tip que puedo darte, es que mientras corres top, presiones la letra Z, esto lo pondrá mas colorido, para que puedas identificar que procesos están activos.

Mas adelante iré actualizando esta lista.

Presentación

Bienvenid@ a Linux para Principiantes, te voy a contar un poco por que cree este blog.
Allá por finales del año 2002, tuve mis primeros encuentros con Linux, recuerdo que en aquella época no sabia lo que eran las arquitecturas, y me había bajado una versión para Linux PPC, tranquil@ mas adelante te contare que es eso(o que era). Muy feliz reinicie mi PC para iniciar la instalación, pero tras varios problemas (en especial por que mi PC no era PPC), no lo pude instalar, igual esto no me desanimo, y seguí intentándolo.

Mas adelante me cruce con el maravilloso slackware 8.1, al cual SI PUDE INSTALAR, (poder instalar un Linux en aquella época para algunos era un logro),pero como es sabido, nunca pueden ir bien del todo las cosas, yo tenia un modem adsl usb (eran tan odiados), y no se llevaba muy bien con Linux, gracias a eso (si gracias a no poder tener Internet en Linux tan fácil) me llevo a investigar todo lo posible para lograr hacerlo funcionar, recuerdo que compilaba el kernel, sin saber que era el kernel y que era lo que realmente estaba haciendo, instalaba librerías que no sabia para que servían, solo por el echo de que los manuales lo decían, así de a poco cada día iba aprendiendo cosas nuevas, todos los días me sorprendía con algo nuevo, hasta que un día pude conseguir hacer funcionar el modem usb adsl en slackware, lo cual me puso muy feliz tras tanto esfuerzo, ese tipo de cosas son las que me encantan de Linux, tras algún problema que tengas, hasta solucionarlo, aprendes un montón de cosas.
Hoy en día he pasado por muchas distribuciones Linux, entre las que recuerdo puedo nombrar en especial:

SLACKWARE: Mi primer distro, en la que mas aprendí cosas, si alguien me pregunta cual fue mi distro preferida, diría sin pensarlo slack.

MANDRAKE: Hoy en día ya no existe esta distribución, ya que se unió con conectiva formando MADRIVA, recuerdo que estaba acostumbrado a instalaciones desde consolas azules, cuando fui a instalar mandrake, fue la primera ves que vi una instalación GRAFICA, era hermosa, también recuerdo que venia con KDE y muchísimas cosas en sus 3 CDS.

DEBIAN: Luego de pasar por slackware y mandrake, decidí dar un salto a debian, debian tenia esa fachada de ser el serio de las distros Linux, se decía en varios foros cosas como que, era una distro muy difícil de utilizar, cosa que jamás fue real, su sistema apt, es fabuloso, con unos pocos comandos, podías instalar el soft que quisieras(si estaba entre sus paquetes disponibles, el cual era una lista enorme),también podías actualizar todo tu sistema, o pasar a una versión nueva de forma muy amigable. Le tengo un gran respeto a esta distribución.

GENTOO: Esta tenia la misma fama que debian, muchos de los que utilizaban gentoo, metían miedo con cosas como: jamás podrás instalarlo(no era un simple siguiente siguiente, pero habían muchísimas guías de como hacerlo), es muy difícil de utilizar, no tiene una gran comunidad que pueda ayudarte y demás, igualmente que con debian, tras probarlo, era todo lo contrario a lo que decían, la instalación la primera vez, si era un poco difícil, pero ya a la segunda, ya lo hacías sin mirar, el manejo de paquetes con la posibilidad de darle compatibilidad para el soft que solo utilizas(si solo utilizas kde, para que compilar con soporte para gtk, si realmente no lo necesitaras), tener todo un sistema optimizado para tu PC, 100% tunneable, simplemente me encanto.
UBUNTU: Recuerdo cuando empezó a aparecer, muchos debianeros(así se hacen llamar los usuarios de debian), lo criticaban y no querían que sea vinculado con debian (ubuntu esta basado en debian), la fuerte campaña de ubuntu para distribuir su distro, fue la primera o una de las primeras, que mediante una petición, te enviaban desde 10 a 100 CDS con ubuntu a tu casa, totalmente gratis, Es la distro Linux mas fácil y orientada directamente a utilizar en pcs de escritorio, su lista de paquetes es enorme, y me acuerdo que muchos no comprendían como hacia saltos tan largos de versiones de su distro, por ejemplo la versión 5.04 o la 8.10, Esto ocurre por que ubuntu emite nuevas versiones cada 6 meses, y utiliza la fecha para cada versión, 5.04 seria la versión liberada en abril del 2005.
También he utilizado varios live-CDS (distribuciones Linux que dan la posibilidad de correr un s.o. funcional, sin necesidad de instalarlo en el disco rígido). La que mas he utilizado ha sido Knoppix.

En todo este tiempo que he utilizado Linux, participe de varias comunidades, la mayoría de ellas en canales irc, compartiendo problemas y soluciones.

Pero también hay cosas que no me gustan de Linux, en especial parte de su comunidad, Muchas veces entre a foros, para buscar información sobre algún problema en especifico, y terminaba leyendo cosas como “fuera bill”, o “windows es una porquería” , y demás, cosas que no aportan nada mas que generar peleas sin sentido, las cuales mas que mejorar a las comunidades de usuarios Linux, alejaban a los nuevos visitantes.

Por mi parte no tengo ningún problema, de utilizar una distro Linux, como un windows o como un Solaris, ninguno es mejor que otro, todos tienen sus pros y sus contras, lo lindo es tener la libertad de elegir que utilizar.

Hoy en día tengo la idea de crear este blog, para tratar de ayudar a los que recién comienzan en este mundo, todo el material que iré escribiendo, será para principiantes, no es mi idea poner cosas avanzadas ni nada por el estilo, aunque si es necesario y útil, lo haré.

Espero que al menos alguna entrada de este blog te sea de utilidad, y no dudes en preguntarme algo, que si lo se, te ayudare con gusto.
Y también sugerencias de temas a desarrollar o ideas para mejorar el blog.