¿Cómo aprender Linux o Unix?
1. ¿Por qué deberías aprender Linux?
¡Por supuesto que lo más importante son los pasatiempos y los intereses! Si necesitas aprender esto, o si no te gusta en absoluto, no pierdas el tiempo. ¡No podrás aprender bien!
2. Primeros pasos
Debes crear un entorno para aprender Linux: instala Linux o Unix en tu computadora
Pregunta 1: Selección de versión
p>
Redhat se usa en Norteamérica, SuSE se usa en Europa, los mandrágoras de escritorio son más comunes y Debian es el Linux tecnológicamente más avanzado.
Debian es el que más se usa entre los desarrolladores, seguido de Redhat. En términos de participación de mercado en el campo de aplicaciones
No hay duda de que redhat tiene la mayor cantidad. Además, hay muchas distribuciones conocidas que no se enumerarán aquí.
Para aquellos que son nuevos en Linux, recomiendo usar redhat por las siguientes razones:
1) Muchos libros ahora usan redhat como ejemplo, para ser consistente con los libros.
2) Todos los que nos rodean usan Redhat, por lo que la comunicación es más conveniente
3) Redhat tiene una amplia gama de aplicaciones y es típico y representativo
4) Es fácil de usar e instalar, no necesitamos perder tiempo en “instalar el sistema”
Debemos centrarnos en aprender las cosas más útiles.
//Nota: Ahora siento que RH es muy rígido. AS, ES, etc. pueden ser buenos para usar en servidores.
El escritorio personal usa mandrake, debian y suse. Todos son buenos. El autor ahora usa Mandrake, porque es hermosa.
Si no planeas aprender Linux en profundidad, pero tienes necesidades como adaptarte a la migración de la oficina del gobierno municipal de Beijing. plataforma a Linux
entonces ChinaSoft, Linux chino como Hongqi es una buena opción
Recomiendo encarecidamente: instale Linux en su disco duro usted mismo
Debe hacerlo. aprenda las habilidades para instalar sistemas Linux de forma independiente. Por ahora, en realidad es tan simple como instalar WinXP.
De ahora en adelante, no piense en el problema en términos de la forma en que funciona Windows.
Deberías intentar descubrir el "genio Unix" en el temperamento de Linux.
3. Avanzado
Domine al menos 50 comandos comunes
Comprenda la canalización de shell "|", la redirección de flujo de archivos "gt;" y agregue "gt; gt". ;" etc.
Estar familiarizado con el funcionamiento de los entornos de escritorio X-Windows como Gnome/KDE
Dominar los métodos de instalación comunes de paquetes de software como .tgz.rpm.biz
Aprenda a agregar periféricos e instalar controladores de dispositivos (como un módem)
Familiarícese con el gestor de arranque Grub/Lilo y las operaciones de reparación simples
Familiarícese con el nombres y nombres públicos de los directorios inherentes del sistema
Aprenda a usar el comando mount para acceder a otros sistemas de archivos
Comprenda editores, compiladores y depuradores comunes como vi, gcc, gdb p>
Conozca la simplicidad de las redes en el entorno Linux
Sugerencia: compre un libro de texto de Linux que no necesite ser demasiado grueso, que generalmente puede cumplir con los requisitos
//Hay Cada vez hay más libros, y también incluyen muchas imágenes. En ese momento no había tantos libros :)
4.Aplicaciones avanzadas
Aclarar algunos conceptos: <. /p>
Las operaciones ordinarias de Linux no se pueden comparar con la gestión real del sistema. Requiere mucho conocimiento
Personalmente creo que varios lenguajes de Linux son más importantes
. 1. Inglés
Incluso si no aprendes Linux, te recomiendo encarecidamente que aprendas bien inglés [inglés de EE. UU.]
Porque, en esencia, el lenguaje informático es inglés y caracteres. y el llamado multilenguaje es solo un paquete externo
Debe poder leer una gran cantidad de documentos técnicos en inglés sin ningún obstáculo
Buscar con soltura sitios web y páginas web en inglés encontrado por los motores de búsqueda
Lo mejor es tener la capacidad de comunicarse directamente en inglés.
Deshazte de este obstáculo, tu aprendizaje y la velocidad de comprensión serán mucho más rápidos. tendrás la oportunidad de ampliar la brecha con los demás
2. shell[sed/awk]
Shell es un intérprete de comandos, el kernel y el canal de comunicación de la interfaz de usuario, el pequeño. El script escrito por Shell es algo similar a .bat bajo win.
Pero Shell es mucho más poderoso que .bat. Shell no solo interpreta comandos, sino también un lenguaje de programación, a veces cientos de líneas. El shell c puede ser. se utiliza para completar el trabajo en docenas de líneas, porque el método de trabajo del shell se basa en las muchas aplicaciones existentes en el sistema
Este también es un punto importante en CS Thought.
Además, el shell puede realizar la automatización del trabajo, este concepto también es importante
sed, awk se usa para procesar texto y siempre se ha usado comúnmente
3.Perl/PHP
Hermoso script, la primera opción para CGI, mejor que ASP y tiene una amplia gama de aplicaciones
4.C\C
C y C son para Linux/unix. El lenguaje central y el código del sistema están escritos en C
5.ASM
La capa inferior del sistema y el kernel, el hardware, los controladores de dispositivos, y el desarrollo integrado son todos necesarios
//Si tomas la ruta principal, c\c, asm es el más importante
6 Java, Python, Tcl, XML
*Capítulo de administración del sistema
Además de estar familiarizado con Linux, también necesitas dominar al menos un Unix
Recomiendo primero Solaris, seguido de FreeBSD p>
Por ejemplo, los sistemas a nivel de operador son generalmente Solaris Oracle/DB2 y similares
Aprenda apache, ssh, sendmail/Qmail, proftp/vsftp, Samba, Squid, MySQL/PostgreSQL/Oracle. , Bind
y otras arquitecturas de servidores de aplicaciones y aplicaciones de comercio electrónico
Familiarícese con la familia de protocolos TCP/IP y aprenda varias soluciones de aplicaciones de nivel empresarial, como la implementación de apache php cuota proftp mysql y redes de área local a gran escala, clústeres distribuidos
Gestión multiusuario, gestión de bases de datos, sistema de archivos, gestión de almacenamiento lógico, análisis de registros, copias de seguridad y reparación de datos ante desastres.
Parches del sistema, actualizaciones del kernel y arquitectura de firewall basados en esto para garantizar la seguridad del sistema. Diversas habilidades de administración del sistema.
Creo que si domina el equipo de enrutamiento/conmutación sobre esta base, podrá sea un buen administrador de sistemas
Se pueden consultar varias soluciones basadas en Linux. Consulte libros y documentos relevantes y, si es necesario, utilice Google o motores de búsqueda en los principales sitios de Linux para encontrar los documentos más recientes y evitar errores y lagunas.
Hay varias enciclopedias técnicas e información técnica privilegiada. Creo que todos son buenos libros en esta área
*Aprendiendo Linux en profundidad
Mi comprensión personal de. los conceptos básicos necesarios para leer el kernel de Linux:
Antes de eso, espero primero Será más fácil de entender si aprende algo sobre la capa de aplicación
1.C
Si ha estudiado el libro de texto universitario de Tan Haoqiang (parece que no hace nada más que compilar algunos modelos matemáticos) Del tipo que no se puede aprender),
Se recomienda leer la Biblia "La C Lenguaje de programación" Segunda edición
/*Si desea aprender el desbordamiento del búfer, esta habilidad en C puede no ser suficiente*/
Además, lt; Trampas y defectos de C>, lt; Programación experta en C>, lt; C\C Exploración profunda> p>
De todos modos, no hay nada de malo en leer demasiados libros clásicos
2.asm (sintaxis ATamp; T, modo protegido) )
El modo protegido es más complicado, básicamente Cada libro sobre el kernel tendrá una introducción
Siempre que tenga los conceptos básicos de la sintaxis Intel 80x86,
Si estás interesado, puedes consultar el **** oficial de Intel
3. Estructura de datos (matemáticas discretas)
No entraré en detalles sobre su importancia como curso básico para estudiantes de informática
4. Principios del sistema operativo
Comprenda esto. Vaya a leer Linux nuevamente
5. Principios de microcomputadoras/principios de composición (circuitos digitales)
p>
La capa inferior está conectada directamente al hardware.
Necesitas lidiar con software, por lo que esto también es necesario
6. Entender Linux/Unix
Creo que al menos debes poder operarlo y comprender la API de Unix
7. Principios de ingeniería de software/compilación
Puedes encontrar muchos libros clásicos en esta área
Creo que libros como APUE no son adecuados para principiantes, así que leamos. Primero, UPE puede aprender el conocimiento del sistema operativo Linux.
Por favor consulte