诀窍就是同一个错误不要犯两次。

到目前为止,我已做了十多年 Fedora 贡献者。 Fedora 有一个由开发者和用户组成的大型社区,其中每一个人,不管是极富洞察力的用户还是出色的程序员,都有一些独有的技能。我喜欢这样的社区,因为它能激励我培养自己的新技能。

对我来说,培养技能最好的方法就是犯错,比如把事情搞得一团糟。犯什么样的错误不重要,因为相比错误本身,我在脱离困境的过程里学习到了什么更重要。

为什么犯错误是好事

我依然记得我犯的第一个计算机错误。我家的第一台电脑是我叔叔升职后送个我们的爱普生笔记本电脑,它有一个特别快的 10 MHz 处理器,因为太重了,所以还有一个手提把手。我很喜欢它。

它运行 DOS,但有一个基于文本的菜单应用,所以对新手用户比较友好。硬盘菜单有十个“页面”,每个“页面”可以配置十个命令。我们有一个游戏页面,还有一个页面放些“无聊的东西”,比如文字处理程序和电子表格等等。

硬盘菜单还有一些其他功能,当我玩腻了游戏,就会去探索它们。有一天,我决定使用菜单的账户功能。账户不会改变出现的应用程序,但在某种程度上,可以防止对应用程序未经授权的访问。你可以直接跳到 DOS 中取代它,但使用账户仍然是一个不错的尝试。

我为自己、父母和妹妹创建了账户。虽然我父母有点不开心,但他们最终迁就了我。万事顺遂了一段时间后,妹妹忘记了她的账户密码。于是,我父母让我删掉她的密码,但是没有妹妹的密码去登录账户,我就无法删除她的密码(那是在 90 年代初,一个比现在简单得多的时代)。要怎么办?要怎么办?

那以后一段时间,我们一直试着猜测密码,直到有一天,我决定尝试做一些我还没有做过的事情。当我第一次创建帐户时,我设置了一个主密码。如果我输入主密码来代替我妹妹的密码,会发生什么呢?

如果你在想,“这当然不会有用的”,那么显然你不熟悉 90 年代安全策略的天真幼稚。有了主密码(顺便说一下,主密码是 “worf” ,指的是企业号星舰的克林贡人安全主管,如果你不是《星际迷航:下一代》粉丝的话),我可以删除所有密码。于是,家里的每个人又都可以毫无障碍地使用电脑了。

试运行的重要性

在那之后,我又犯了更大更有益的错误。比如,在我第一次做系统管理员时,当时我正整理一些数据以重新配置存储阵列。有一次,我意外地颠倒了源路径和目标路径,而且那是一个带有 ——delete 标志的 rsync 命令。真的是太糟糕了!

幸运的是,我自己的账户也崩溃了,这让我的道歉更容易被其他受影响的用户接受。对我们所有人来说更幸运的是,我们有备份。所以那天结束的时候,每个人的文件都找回来了,我还学到了一个宝贵的教训,那就是在进行破坏性同步之前,先使用 --dry-run 标志试运行。

以正确的方式处理错误

我不介意犯错误。这些年来,我积累了很多实践经验,学到的诀窍就是不要犯同样的错误。从错误中学习能让我在技能和事业上取得进步,并发现新的会犯的错误。作为 Linux 系统管理员,我总是试图在一个安全的环境(测试平台就很好)中犯错误,确保我可以从错误中恢复(备份真的非常非常重要!),并给以后的我留个笔记,这样他就不会重复犯错(文档是你的朋友)。当然,还要勇于承认自己的错误,并在出现问题时清楚地与用户沟通。如果我一直这样做,也许有一天我就会觉得我很清楚我在做什么!

【编辑推荐】

java系统管理员停用,为什么犯错让我成为一个更好的系统管理员相关推荐

  1. java中最容易犯错的特殊字符

    问题背景 能准确说出下面的java 执行完毕后会打印出什么? System.out.println(String.class.getName()+ ".class");System ...

  2. java程序员第二语言_惊呆了!Java程序员最常犯的错竟然是这10个

    和绝大多数的程序员一样,我也非常的宅.周末最奢侈的享受就是逛一逛技术型网站,比如说 programcreek,这个小网站上有一些非常有意思的主题.比如说:Java 程序员最常犯的错竟然是这 10 个, ...

  3. Java线程同步容易犯错的坑

    在Java开发过程中,通过线程同步机制确保线程安全,线程同步机制说起来挺简单,大家也都能说出个一二来,实际应用过程中一不小心就容易犯错,这里把自己的历程写下来作为记录,有则改之,无则加勉. 1.线程同 ...

  4. 惊呆了!Java程序员最常犯的错竟然是这10个

    和绝大多数的程序员一样,我也非常的宅.周末最奢侈的享受就是逛一逛技术型网站,比如说 programcreek,这个小网站上有一些非常有意思的主题.比如说:Java 程序员最常犯的错竟然是这 10 个, ...

  5. Java开发中最常犯的10个错误,你中招了吗?

    http://www.programcreek.com/2014/05/top-10-mistakes-java-developers-make/ 阅读目录 Array转ArrayList 判断一个数 ...

  6. Java开发人员最常犯的10个错误,你犯过几个?

    点击蓝色"程序猿DD"关注我哟 加个"星标",不忘签到哦 来源:http://t.cn/EJscOju 阅读目录 Array转ArrayList 判断一个数组是 ...

  7. Java开发者写SQL时常犯的10个错误

    首页 所有文章 资讯 Web 架构 基础技术 书籍 教程 我要投稿 更多频道 » - 导航条 -首页所有文章资讯Web架构基础技术书籍教程我要投稿更多频道 »- iOS- Python- Androi ...

  8. Java程序员最常犯的 10 个错误

    转载自 Java程序员最常犯的 10 个错误 这个列表总结了Java开发人员经常犯的10个错误. 一 .把数组转成ArrayList 为了将数组转换为ArrayList,开发者经常会这样做: List ...

  9. 软件构造-犯错的艺术——健壮性与正确性,异常,防御式编程,debugging与test的思考与总结...

    健壮性与正确性 健壮性与正确性是不同的--一个倾向于使程序尽可能保持运行,即使遇到错误,一个倾向于使程序尽可能正确,不在意保持运行 异常 异常分为两种--checked exception与unche ...

最新文章

  1. 电视机检测大巴徘徊在英格兰的大街上
  2. Linux下vsftpd服务器
  3. 计算机技术停滞,究竟什么原因让科技停滞不前呢?
  4. scihub只能用doi查吗_同步带轮齿形加工只能用滚齿机吗?
  5. freebsd mysql5.7_FreeBSD 环境下Mysql问题解决方法集锦
  6. ICPC China Nanchang National Invitational -- D. Match Stick Game(dp)
  7. 基于迭代局部搜索和随机惯性权重的BA算法MATLAB实现(ILSSIWBA)
  8. 修改后的LOGO发布(确定稿)
  9. iOS开发 ☞ 系统自带字体
  10. ykhmi是什么触摸屏软件_一体机使用中常见问题-中达优控|YKHMI|触摸屏|一体机|云组态-深圳市中达优控科技有限公司 —— YKHMI|触摸屏|一体机|云组态...
  11. 云计算 三种模式 各种云的区别
  12. 何钦铭c语言第三版第3章答案,何钦铭版C语言第3章答案精选.pdf
  13. 赏析角度有哪些_从“视听语言”角度,主要从哪些方面进行影视赏析(? ?)。...
  14. 矩阵的转置与矩阵的逆
  15. 期货止损篇2:ATR止损,高手都在悄悄用的止损利器
  16. Java Stream流总结
  17. Excel转xml简单方法
  18. 如何在visual studio下编译zxing cpp,以及zxing c++的使用
  19. web前端目前的就业形势_2020年Web前端的前景及就业形势
  20. CDN模式引用js包的常见问题及解决方案引用public文件夹静态资源问题

热门文章

  1. linux运维平台工具,Linux运维自动化工具 Kickstart
  2. webbrowser实现input tab事件_如何合理构造一个Uploader工具类(设计到实现)
  3. Hive的使用之hwi
  4. linux kvm查看线程状态,kvm线程-005-线程状态-THREAD_JUST_BORN
  5. c 语言bool 类型数据_C ++中的bool数据类型
  6. python日历模块_Python日历模块| prmonth()方法与示例
  7. python 字符串 变量_检查变量是否为字符串的Python程序
  8. MySQL小黑框怎么打开_打开你的小黑框命令行,来跟我一起嗨嗨嗨
  9. 2019聊大考研计算机调剂,2019年聊城大学硕士研究生预调剂工作说明
  10. Castor xsd生成java_java – Castor可以处理从基础XSD导入的多个XSD生成类吗?