首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
拉钩
V2EX  ›  Linux

怎么样才算精通 Linux ?

  •  
  •   codermagefox · 349 天前 · 7035 次点击
    这是一个创建于 349 天前的主题,其中的信息可能已经有所发展或是发生改变。

    真的比较好奇这个问题,希望能得到一个理性的回答.

    事先声明:

    1.我 Linux 很菜,只是能用的水平,希望大家能用我能听懂的语言描述.当然,不懂的名词我可以去搜.

    2.不希望变成引战贴,我知道一千个人有一千个哈姆雷特,我想知道 V2 各位的哈姆雷特是啥样的.

    3.提这个问题只是单纯的好奇.我是个前端,日常工作中涉及许多 Linux 使用,也看了一点鸟哥的书,说实话都是命令,不太想看.我想要知道运维 /Linux 开发者眼中的精通 Linux 是啥样的.毕竟以我的菜鸡水平,对 Linux 高手是真的很崇拜.

    那么,你心目中的精通 Linux 是什么样的?

    97 回复  |  直到 2018-03-20 10:09:05 +08:00
        1
    thinkmore   349 天前
    你看,大家都不敢回复了
        2
    AppxLite   349 天前   ♥ 24
    精通,就是无所不会,无所不知的那种状态,否则,怎么能叫精通?能精通 Linux 之人,不知道 Linux 之父敢不敢自称自己精通 Linux。但是有一批人,可以动不动就敢说出要求程序狗精通 XXX,那就是 HR。
        3
    springsummer   349 天前
    我也是菜鸡。不过 linux 就是命令行操作的吧。也就是跳过图形界面直接用代码说话。命令行都不熟练谈何精通
        4
    codermagefox   349 天前
    @AppxLite 我其实本来写了一行:"那些说只有 Linus 精通 Linux 的,请顺便说一下你们是怎么定义熟练掌握 Linux 的",后来怕引战,删掉了
        5
    danili   349 天前
    所谓精通就是尽可能不会出问题,出了问题知道问题原因也知道如何解决。
        6
    hjc4869   349 天前 via iPhone
    我觉得楼主可能更多的指精通 GNU 的 userland,而不是 Linux 内核?
        7
    codermagefox   349 天前
    @thinkmore 这不是还有你回复了吗.快快快说说,你觉得啥样算精通,没事的,要是有引战的我帮你喷他
        8
    codermagefox   349 天前
    @hjc4869 我不懂它们之间的区别,搜了一下,您说的是应用和系统内核的区别吗?
        9
    nosay   349 天前
    用了 5 年 linux 只敢说稍微熟练...里面水太深
        10
    alen   349 天前   ♥ 1
    去问问 HR,她知道怎么回答你。(手动滑稽
        11
    x18960   349 天前
    精通是相对而言的吧
    在外行 输入命令行 人家就认为你是精通
    反之, 你得会 XXX,XXX,XXX,XXX,XXX 然后经验 XX 年 就是精通
    很喜欢 2L
        12
    hundan   349 天前 via Android   ♥ 1
    认真研究过源码和架构的人,知道其优点和不足,能用工具进行更好的操作,遇到问题总是可以很快定位,应该可以说是精通了
        13
    shuperjolly   349 天前
    常用功能与问题能一眼看出是那方便的问题,就算是不熟悉的操作或者问题也能快速定位问题并且利用互联网解决问题。到了这个水平我觉得说精通不为过了。
        14
    falcon05   349 天前 via iPhone
    论精通全世界没几个人敢说的,说熟练这里还能聊聊
        15
    pisser   349 天前
    为什么要精通,招聘说精通的公司去死。
        16
    codermagefox   349 天前
    @falcon05 那么你定义的这几个人是什么水平?或者说,是谁?咱只是讨论一下嘛
        17
    codermagefox   349 天前
    @pisser 这里的讨论和 HR 没关系,只和我的好奇心有关:)
        18
    ryanhui   349 天前
    抛开计算机,在生活里要说精通某样东西恐怕也很难。
        19
    codermagefox   349 天前
    @ryanhui 所以不强求是真的精通,只希望看看每个人对精通的不同理解.
        20
    612   349 天前 via iPhone
    我觉得红帽那套总结的挺好的,RHCSA RHCE RHCA 只要不是背题库,真的理解了,熟记了,然后考过了,这几个证可以代表他的 linux 水平。
        21
    gleymonkey   349 天前
    精通。。问问李纳斯吧。
        22
    defunct9   349 天前
    精通这 2 个字都不敢说啊,最多敢说熟悉。
        23
    MeteorCat   349 天前 via Android
    man xxxx
        24
    jiangzhuo   349 天前
    我觉得以 linus 定义精通没问题吧,难道还有比精通更高的?
    就像以凯瑞甘定义灵能十级一样
        25
    Bardon   349 天前
    所以,简历中附上 HR 认为的精通,觉得没啥问题,🤷‍♂️...
        26
    codermagefox   349 天前
    @jiangzhuo 黄旭东灵能十一级
        27
    cevincheung   349 天前
    我认为所谓精通 linux 就是必须 1 年内给 kernel 提交并被接受 10 次 pull request 吧?
        28
    xratzh   349 天前
    重要部件提交数
        29
    ryd994   349 天前 via Android
    @612 然而那是 RHEL 水平
    Linux 只是内核,除了内核开发者,一般用户自称精通就是笑话
        30
    anjing01   349 天前   ♥ 10
    之前 linux 架构师,定位一个 nfs v3 问题如下:
    1、查看日志
    2、man 手册
    3、strace 定位
    4、查看官方源码
    5、定位问题后发现是个 bug,发个 issue

    平时用开源软件,经常重新修改源码编译,为了最优解,不像我 dpkg/apt/yum/zypper/rpm 去搞...不过人家有足够的时间折腾,就是干这个的。他从来都只说是比我们多看了点书而已,经常去参加各类聚会——技术大咖类型的那种讨论会。

    ——对了,当初我刚进那个公司写的 shell 脚本,被他批的那个惨啊,至今记忆犹新:
    1、脚本用法说明呢?版本号呢?
    2、这个系统判断呢?(线上绝大部分是 debian 系统)
    3、这个错误退出提示呢?
    4、这个日志输出呢?
    5、这个环境变量不加,也不加绝对路径,万一命令位置不对呢?
    6、不要用``,要用$()
    7、这个重复的操作,写个函数不行么...
    8、....

    shell 脚本不就命令堆叠么,整那么复杂,后来让我看看 /etc/init.d/里面的各类启动脚本,要以这个为标准写 shell 脚本...
        31
    Lonely   349 天前 via iPhone
    那我问问楼主,怎样才叫精通前端呢?
        32
    dychenyi   349 天前   ♥ 2
    精通一词博大精深。。。
    请问你精通吃饭吗? 未必。。
        33
    WispZhan   349 天前
    看是什么方向。内核?驱动?应用?运维?日常使用?
        34
    codermagefox   349 天前
    @Lonely 那我抖个机灵,Brendan Eich 就是精通前端了:)
        35
    612   349 天前 via iPhone
    @ryd994 对的,只是 RHEL,我的遗漏。
        36
    sunnyadam   349 天前
    谁敢说精通。。。。我都只敢说了解,会用 lol
        37
    chenyu0532   349 天前
    不要执迷于这些,努力提高自己就可以了
        38
    WispZhan   349 天前
    @WispZhan 噢,看到楼主说了是运维。我对运维了解不多。
    必要的起码是:
    1.精通 Shell 或者至少一门其他脚本语言。
    2.日志管理
    3.常用开发环境搭建
    4.遇到 Linux 平台下的日常运维问题能够解决问题,并且了解原因以及常用解决办法。
    5.防火墙
    6.网络配置(虚拟网络,网桥,DNS,NAT 等等)
    7.系统用户权限配置
    8.Linux 服务(譬如 systemd 的配置或者写法)

    balbalabal 之类的一大堆。


    ---
    还有现在的自动化方向的 CI/CD,容器以及虚拟化方向的 K8s,openstack 等等
        39
    hardman   349 天前
    精通 是有自己的一套方法也可以给其他人布道
        40
    codermagefox   349 天前
    @chenyu0532 单纯好奇.
        41
    zoffy   349 天前   ♥ 1
    "精通"这个词已经违反程序员的政治正确了
        42
    zlfzy   349 天前
    人家问你会 linux 吗,你不要说熟悉或者还好,更不要说精通
    你要说“略懂,略懂”。
    深藏功与名
        43
    codermagefox   349 天前
    @zoffy
    @zlfzy
    只是单纯好奇,和找工作啥的都无关.求大佬们给我描述一下你们认为的精通是啥样的,就算政治不正确的也行
        44
    lykme   349 天前
    招聘的要求是我亲自打的,对于不同技术栈有不同要求。Linux 要求精通也得看哪个位面。
    相反好多求职者简历上自己写精通的不少,比如精通 MySQL、精通 Linux。一般这么写的,多半是水货
        45
    pq   349 天前
    如果是指某个发行版,我觉得没人敢自称“精通” Linux ;如果单指内核,可能会有部分开发者是精通的吧;如果是指从传统 UNIX 继承下来的那些东西,比如 sed & awk 之类,基本上学习半年就算精通了。。。
        46
    Cambrian07   349 天前   ♥ 1
    感觉自己开发的系统都不敢说精通了……
        47
    citydog   349 天前
    怎么才算精通 windows ?用了这么多年 windows 了,谁来带头吹个牛逼?哈哈
        48
    codermagefox   349 天前
    @citydog 我会 windows 系统的开关机.
        49
    Flygoat   349 天前 via iPhone
    @cevincheung 10 个 commit/patch 还可以 pr 有点过分了
    全世界能给 kernel pr 的也没多少人
        50
    AngelCriss   349 天前 via Android
    怎么样才算精通 Windows ?
        51
    mengzhuo   349 天前
    光内核我觉得应该是从按下电源键到 shell 执行命令,内存、中断、进程、线程、信号管理,CPU 指令、平台差异所有流程和代码都知道

    运维的话,参考楼上吧
        52
    webjin1   349 天前 via Android
    是啊,一千个人有一千个哈利波特,没必要纠结。
        53
    uuair   349 天前   ♥ 1
    在很早以前的绿色联盟的 irc 里面,有一个程序员,每天默默无闻的聊聊天,搞搞技术,后来出了一些花边新闻,就是黑了那个那个服务器,发现了那个那个漏洞,然后哥们准备去上班了,为了熟悉 linux,自己动手写了一个,完全自己写了一个,虽然跟现有的 linux 一样,但是从各个方面写了一遍。
    这样的人,我觉得就是精通 linux 了。
        54
    tabris17   349 天前
    我说个内核功能,你能报出源代码在哪个文件哪几行,这样应该就算精通了
        55
    cevincheung   349 天前
    @Flygoat #49 对啊。HR 不是要“精通”吗? 呵呵呵呵呵呵呵呵呵呵呵,自己公司给多少钱 HR 自己心里没点 B 数吗。233333
        56
    willakira   349 天前   ♥ 1
    精通和 bugfree 一样,基本上都是不可能的
    一定要理解的话,就是在自己的 role 职责范围内能够用 Linux 将 productivity 发挥到比较高的水准
    case by case:
    - 有的人比较擅长内核调优而且职责就是 Performance Engineer。
    - 有的人是运维工程师,脚本和各种命令工具用的飞起
    - 有的人是 SWE,linux 下面能够熟练使用各种开发和调试工具
    这些我觉得都可以认为是精通 Linux
        57
    wweir   349 天前   ♥ 1
    使用《性能之颠》里的一句话回答这个问题:
    所谓专家,就是在即使很小的领域,把所有的坑踩了一圈的人。
        58
    northisland   349 天前 via iPhone
    翻过文件系统的代码
        59
    Macbooker   349 天前 via iPhone
    @ryanhui 大厨师能不能说精通烹饪
    赛车手能不能说精通驾驶
    全运会季军能不能说精通某体育项目

    没必要把精通的门槛提那么高,那叫大师
    我觉得前 5%足以算得上精通
        60
    AppxLite   349 天前
    @danili 这不是叫熟悉么?
        61
    misaka19000   349 天前
    读了 Linux 最新内核的源码并且能独立写出一个相似的操作系统内核,这应该算是精通了吧。熟悉了 Linux 操作的那种只能算是 API 程序员👨‍💻‍
        62
    SgtDaJim   348 天前
    @anjing01
    6、不要用``,要用$()

    请教下这是为什么?
        63
    watara   348 天前   ♥ 1
    @SgtDaJim 我也应为这个被说过,不过没说为啥,我的理解可能是容易和单引号弄混吧
        64
    aksoft   348 天前
    用固定电话按一个 phone linux。。。
        65
    Attenuation   348 天前
    提问:怎样精通 c++?
        66
    reticentfat   348 天前
    能够再造一个轮子就是内核
        67
    daiwa   348 天前   ♥ 1
    @SgtDaJim @watara `` 嵌套处理比较麻烦,不如 $() 直观
        68
    laycher   348 天前
    面试简历上都这么写的。
        69
    wclebb   348 天前
    怎么说呢……
    能达到 1%领域的人,才能自称精通吧?……

    上次我在简历上写熟悉 PhotoShop 等几个软件时,我想了想总觉得熟悉这两个字好像有什么不对的地方……
        70
    123s   348 天前
    修改内核,写驱动?
        71
    abcbit   348 天前 via iPhone
    @aksoft 只用 0 和 1 嗎?很久以前有大神這樣做了一個 win95
        72
    msg7086   348 天前
    迈向精通 Linux 的第一步:先搞清楚精通 Linux 到底是在精通什么。
    GNU userland ?
    Linux ?
    各大发行版?
    桌面?
    Shell script ?
    运维?

    ( Linux 就是一个内核。你平时用的 Linux,全名叫 Linux 发行版,就是把一堆软件包在 Linux 内核外面,让人能用。)
        73
    konakona   348 天前
    1. 记住与日常工作有关的一切命令和命令里的参数。
    2. 遇到任何问题,都能有大概思路知道如何去解决问题,并且速度快,效率高。

    这就叫熟悉。

    至于精通,你可以靠写一本 Linux 深入浅出来自我实现。
        74
    salmon5   348 天前
    简历里面 写各种精通的,一律 KO,绝对没错。
        75
    redapple0204   348 天前
    简单点说,比如你发现一个进程总是占用 100% CPU,通过层层检查,发现是显卡驱动中的一个 针对特别硬件的新 bug。然后你决定修改驱动,同时顺便优化了一下 kernel 相关代码,一夜之后,当黎明的曙光照在显示屏上时,你决定将修改部分提交到社区。三天后,Linus 群发邮件,说这将是下一个 kernel 版本的一个重要特性,并感谢你的贡献。当然,你并没有及时看到邮件,因为你正一边搂着女友,一边跟她讲多年前看过的《暗店街》。

    作者:wsivoky
    链接: https://www.zhihu.com/question/23834032/answer/31723357
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
        76
    PythonAnswer   348 天前 via Android
    熟练日常使用,已经很 nb 了。碰到问题能解决,机器保持流畅稳定运行,有时还能向社区提个 bug。
        77
    tszyh   348 天前
    只敢说熟练
        78
    tiankong233   348 天前 via Android
    请问我会用一键脚本搭个酸酸的那种算入门吗?
        79
    ydxred   348 天前
    多使用 rm -rf / 就会越来越熟练的
        80
    lulinux   348 天前 via Android
    小撸主义认为:形容词通常用于竞争和冲突,而且描述一件事物的性质总是有一个相对参照物的。前一句可以让你看透,后一句可以让你看开。
        81
    wonpn   348 天前 via Android
    精通 windows,linux,android,ios 等单词的发音与拼写
        82
    dawncold   348 天前
    熟悉 Linux 内核模块的结构,能改的动,熟悉几个发行版的使用?常用命令使用,排查问题能知道搜什么内容就可以吧
        83
    lixuedong   348 天前
    @ydxred 前边得加上 sudo 呀
        84
    shuizhengqi   348 天前
    可以手写内核,并开发出类似安卓的系统
        85
    innoink   348 天前
    单纯一个精通,没有参照,没法说,应该放在一个评价体系当中
    比如,按照水平分出 1-10 个等级,规定“精通”代表哪一级,是第 5 级还是第 10 级
        86
    hqdmy   348 天前
    这个词啊,现在就不要叫真儿啦.就跟"美女""帅哥"一样
        87
    huiyue   348 天前
    从不敢说精通任何一样东西。
        88
    jadeity   348 天前
    自己发行一个版本
        89
    est   348 天前   ♥ 2
    跟 Linus 结婚。
        90
    codermagefox   348 天前
    @est 加入,特别关注
        91
    SingeeKing   348 天前
    个人感觉 Linux 不存在精通,只能精通某些发行版吧
        92
    vjnjc   347 天前
    题目问的不好,比如怎样才能称得上是精通算法。据我所知,很多算法很厉害的哥们都不会自夸说精通算法,因为找出一题他不会的算法太容易了。
        93
    anjing01   347 天前
    @SgtDaJim 美观好用把?好像官方也建议用这个
        94
    SgtDaJim   347 天前
    @anjing01 我也不清楚。。我也是被人推荐然后一直用$()。。觉得确实是能避免'和`的混淆。。
        95
    yylucifer   346 天前
    好像 Linus 都不敢说自己精通 Linux。。
        96
    kinneyyan   345 天前 via Android
    @AppxLite 哈哈哈兄弟说得走心了
        97
    thinkmore   272 天前
    @codermagefox 我认为精通就是出了什么 Linux 相关的问题,你都知道怎么产生的并且知道解决方案
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3255 人在线   最高记录 4019   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 84ms · UTC 05:12 · PVG 13:12 · LAX 21:12 · JFK 00:12
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1