zoukankan      html  css  js  c++  java
  • 转:如何成为Linux高手

    源地址:http://www.douban.com/note/60936243/

        经过几年的发展,公司在互联网公司里面也算是大公司了,线上机器使用的操作系统都是Linux,部门有几个同事,天天都跟Linux打交道,所以,我就一直在考虑,这些同事的进阶之路在哪里,怎么样就算是一个Linux高手了呢?在网上了搜索了一下,有一些人说的还是值得考虑一下:


    我玩了10年的Shell编程,还不敢说自己精通Shell。别说其他的,你能把shell真正搞通,已经比大部分拿1万以上月薪的system admin强了。

    Linux操作系统主要就是一些配置文件和一些命令行工具,要掌握操作系统的主要目录结构和配置文件,运用系统的命令行工具完成常规的操作系统维护工作,监控工作。进而你可以安装部署一些企业应用,进行监控、管理等等。

    把/etc目录下面常用的配置你都搞懂,把 /bin /sbin /usr/bin /usr/sbin下面常用的命令搞懂 会用shell编写常规的维护脚本

    这样你已经非常厉害了。

    liuqiang:

    来点实际的吧,我觉得linux有两条明路可以走

    1 嵌入式linux,把握好机会,从薪水这个角度讲,这个方向是不错的。

    2 linux集群, 瞄准这个方向也可以,但缺点是不太好学,需要一定的学习环境,只有抓住机会混到大公司去锻炼下。

    至于shell,我觉得搞这个东西更多的是靠经验,你说没事拿个shell瞎敲命令,我保证你敲一个星期就没兴趣了。在工作中碰到实际的问题,然后解决问题,这样学习最有效。

    总之想开一点,做出决定之前,请多考虑下自己能坚持学习多少时间。

    makefile:

    linux 命令必须很熟悉,对find.sed,awk必须更熟悉,会正则。
    了解unix编程,编译,知道gnu下的很多著名软件并会用。
    example:m4,automake,autoconfig,binutils,gcc,...
    能熟练试用vi,熟悉makefile...
    可能的话掌握一种xwin开发方式gtk,qt等。
    搞明白文件系统,能掌握50%以上/dev下设备干吗用的,并会用。
    能知道/var下都有哪些重要东西。
    熟悉/etc下的配置,了解常见的服务的配置
    example:
    squid,apache,natd,named,ftpd,sshd,xinetd
    知道启动的时候unix按哪些顺序启动,并配置服务
    C语言。
    知道怎么安装软件
    不仅仅是pkg_add,rpm,
    知道怎样监控进程,网络
    知道怎么追踪core
    这些都熟悉了,基本算unix初通了,能做个unix初级使用者

    ztka:

    先可以试试看自己用linux组建域服务器,代理服务器,email服务器等,满足企业的基本网络架构的要求。

    hexstar:

    Linux下面 top,vmstat,iostat, netstat,iptables这些都应该了解吧。
    用Ubuntu一年半了,还是发现什么都不会 :(

    steven-zhou:

    看你想达到什么层次了,我个人的理解是:

    初级:熟练使用命令、熟悉Shell编程、能配置简单的服务,清楚各类服务相关的配置文件的位置,
    能看懂并可修改系统提供的配置脚本(/etc/*.*)
    推荐书籍:
    《鸟哥的私房菜基础篇、高级篇》
    《Advanced Bash Shell》

    中级:熟悉TCP/IP原理、OS原理、熟练使用C语言、Linux系统编程、网络编程。
    推荐书籍:
    《The C Programming Language》
    《Unix环境高级编程》
    《Linux程序设计》
    《TCP/IP协议详解卷一》
    《Unix网络高级编程》

    高级:
    《Linux Device Driver》
    《深入理解Linux内核》
    《深入理解计算机系统》
    《深入理解LINUX网络内幕》

    上面这些书单中,是我们公司一个玩Kernel的牛人开出的。
    任何知识的学习都不是一蹴而就的,需要反复实践,反复理解。
    祝你成功!

  • 相关阅读:
    消息队列RocketMQ版最佳实践订阅关系一致
    Java8 stream、List forEach 遍历对象 List 对某一字段重新赋值
    SQL的嵌套查询与连接查询
    Xshell7 个人可以申请免费使用正版
    @NotEmpty、@NotBlank、@NotNull 区别和使用
    List集合日常总结
    Time Zone(时区)
    Arrays.asList() 和Collections.singletonList()的区别
    GitBash生成SSH密钥
    Mysql中用SQL增加、删除、修改(包括字段长度/注释/字段名)总结
  • 原文地址:https://www.cnblogs.com/xuhj001/p/3387535.html
Copyright © 2011-2022 走看看