He estado interesado en las computadoras durante mucho tiempo y he jugueteado con muchas cosas que incluyen Linux. Comencé con Red Hat cuando era joven (alrededor de 13 años) y perdí todos los datos, convirtiendo una unidad FAT32 en otra cosa. Más tarde fue Knoppix, que fue realmente útil en la recuperación y tal. Entonces, fue Ubuntu. Además, jugueteé con Arch durante algún tiempo, pero se rompe con demasiada frecuencia para mi gusto (tal vez, debería haber sido más cuidadoso).
De todos modos, actualmente uso Ubuntu 9.04. Quiero profundizar en el mundo de Linux ahora. Quiero aprender cómo funcionan las cosas y usar más el terminal. También soy programador, por lo que será de gran ayuda.
Entonces, lo que quería preguntar era:
Buenos libros para aprender y entender Linux
Buenos hábitos para usar Linux de manera más eficiente.
Buenas herramientas sobre las que debería saber.
Cantidad de tiempo que reserva para aprender cosas nuevas cada día.
Como programador, ¿cómo configura y usa Linux de manera eficiente?
Larga lista. Estaré agradecido a los que responden.
Revistas como "Formato Linux" y "Linux Journal". Se pueden comprar en librerías, suscribirse o encontrarse en Internet. Los viejos números de Linux Format están en http://www.linuxformat.com/modules.php?op=modload&name=NewArchives&listpdfs=1 , y los viejos números de Linux Journal están en http://www.linuxjournal.com/magazine .
Obtenga el "Linux Starter Pack" de Linux Journal / Tux Radar. Son 130 páginas de pura victoria. Cubre casi cualquier cosa que un usuario de Windows migrante quiera saber de inmediato. Está disponible en http://www.tuxradar.com/linuxstarterpack .
Únete a un foro Como usa Ubuntu, le recomiendo comenzar con http://ubuntuforums.org/ . Otro foro notable es www.LinuxQuestions.org. ServerFault también funciona. ;)
Lea la guía de Rute. Le ayudará con la línea de comandos, así como también le presentará otros conceptos formativos de Linux. http://rute.2038bug.com/
Los comandos como "man program-name" y "info program-name" son invaluables.
Y, por supuesto, no dude en hacer preguntas. Tener a alguien que te ayude a aprender un sistema operativo siempre facilita el proceso, así que busca un mentor si puedes.
fuente
Quizás comience en el Proyecto de documentación de Linux .
La sección de Guías ofrece algunos libros muy interesantes:
Los HowTo secciones proporcionan alguna ayuda temas específicos.
fuente
Aprende a pasar en una terminal. Esto significa aprender las cuerdas de navegación, tuberías y programas de Unix como grep y sed. Ubuntu y otras distribuciones están haciendo que Linux sea cada vez más fácil de usar, pero al final del día, el mayor beneficio para el aprendizaje radica en sus raíces CLI.
Este sitio web tiene un puñado de buenos tutoriales de shell.
fuente
Recomiendo la programación avanzada en el entorno UNIX. Este es un libro brillante sobre programación general de sistemas para UNIX.
fuente
Uso No te repitas la filosofía. Realice tareas comunes con la terminal: copie, cree, mueva, elimine archivos, busque información dentro de ellos (use grep), busque archivos (encuentre), etc. Intente combinar todos estos comandos entre sí, además de bash scripting y awk. Esto lo llevará a una buena práctica y sentirá el poder de Linux :-).
Por ejemplo, si necesita eliminar algunos archivos cuyo nombre de archivo coincide con cualquier patrón, puede buscar en cada carpeta y eliminarlos manualmente. Aquí viene DRY: solo combine find y rm, y lo hará por una línea de terminal.
Además, como alguien publicó antes, configure un servidor doméstico. Comparta Internet a través de él, ejecute el servidor web, configure la impresora de red, etc.
fuente
ls / bin, / usr / bin, / sbin y / usr / sbin. Luego escanee / lea las páginas del manual para cada comando que vea. No lo recordarás todo a menos que seas una especie de prodigio. Sin embargo, lo expondrá a la mayoría de los comandos en su sistema y tendrá una vaga idea de lo que hacen. Luego, cuando necesite hacer algo, recordará comandos que podrían ser relevantes.
También querrás leer las otras páginas man eventualmente, que encontrarás donde apuntan tus MANPATH, pero primero comenzaré con los comandos.
Esto es lo que solía hacer cuando estaba en el servicio de asistencia, pero no recibí llamadas y lo encontré inmensamente útil.
fuente
Un poco de un consejo lateral, pero uso Mnemosyne (apt-get install mnemosyne) para crear tarjetas flash de comandos y consejos útiles de Linux que encuentro. Un par de veces a la semana, hojeo varias de las tarjetas y trato de mantenerlas frescas en mi mente.
Su kilometraje puede variar, pero he encontrado que esta es una buena manera de retener comandos que no puedo usar a diario para que pueda recuperarlos rápidamente cuando los necesite (o al menos saber qué páginas de manual leer) .
También hago esto para otras cosas, como pulsaciones de teclas Vim, API de Python, etc.
fuente
Una buena forma de ingresar a Linux es básicamente usarlo.
El poder de Linux está en la línea de comandos. Cuando usa mucho Linux, probablemente entrará en la línea de comandos muy pronto. Hacer tareas repetitivas en la GUI hace que te preguntes si podría haber una mejor manera de hacer las cosas. De esa manera, lentamente, te sentirás más cómodo usando la interfaz de línea de comandos.
Cuando me enseñaron C en la escuela, escribimos programas en Emacs y los compilamos en la línea de comandos. Eso me hizo sentir más cómodo trabajando en la línea de comandos y aprendí nuevos trucos a medida que avanzábamos. Además, si aprende C, puede profundizar en cómo se construye Linux y cómo funciona, ya que está escrito principalmente en C.
fuente
Un buen libro general es "The Art of Unix Programming". Unix y Linux comparten las mismas filosofías, aunque son ligeramente diferentes.
Aparte de eso, recomendaría aprender un shell (como bash) y aprender un lenguaje de script como Perl o Python. Para aprender un shell, comenzaría con las páginas de manual y tal vez recogería un libro (los libros de O'Reilly son buenos).
fuente
El Proyecto de documentación de Linux consta de muchos recursos para el aprendizaje.
fuente
Preguntó sobre el uso eficiente de Linux como programador; en este caso, hubiera pensado que las secuencias de comandos de shell serían esenciales (ya sea saber cómo pasar parámetros dentro o fuera, o evitar escribir código para lograr algo que ya se puede hacer al existir comandos). Pruebe la referencia de O'Reilly "Classic Shell Scripting".
fuente
Usuario de Linux
El programador encontraría útiles muchas herramientas de línea de comandos de Linux. Algunos de ellos son:
Hay muchos libros para usuarios intermedios de Linux y no hay buenos libros para usuarios avanzados. Utilicé la siguiente práctica para entrar en Linux:
La administración y configuración de Linux se realiza de la misma manera, pero tiende a tener más google.
fuente
Comencé con SuSE cuando era joven. Más tarde fue Knoppix para mí también. Entonces, era Ubuntu y actualmente uso Ubuntu 9.04.
Aprendí casi todo lo que sé sobre Linux por Internet y por amigos.
El único libro que me ayudó a aprender y comprender mejor Linux es Andrew S. Tanenbaums Modern Operating Systems .
fuente
Una buena manera de conocer Linux es hacer cosas con él. Puede intentar configurar una caja de Linux en su conexión a Internet en casa o en una máquina virtual.
Intente configurar algunas aplicaciones de servidor:
Esto lo ayudará a familiarizarse con las herramientas y prácticas comunes de Linux.
fuente
Los libros pueden ser buenos, pero trata de encontrar un mentor humano. Cuando era más joven tuve la suerte de que un administrador de sistemas de Unix me mostrara las cuerdas, después de un par de años trabajando con ellas, incluso superé su conocimiento.
Unix es una bestia extraña, puedes pedirle a 10 administradores de Unix que realicen una acción, y probablemente obtendrás 10 respuestas diferentes. Posiblemente ninguna de las respuestas sea incorrecta, es porque la herramienta es tan flexible que puede hacer las cosas de más de una manera.
definitivamente no es la 'única forma de microsoft' de hacer las cosas :-)
A veces, los canales de freenode irc pueden ser de gran ayuda si te quedas atascado con los conceptos al leer. Échales un vistazo, son amigables, si tú eres amigable.
fuente