5

我是网络程序员,我处理 html、css、javascript、php 和 asp.net。

是否有一些好书/网站可以用来成为系统管理员?通过系统管理员,我的意思是了解 TCP/IP、Linux/Win 网络等。

请不要说“谷歌是你的朋友”,我知道它是,但我只想要好的网站或书籍,而不是谷歌给我的数万亿个链接。

我知道这不是一个简单的步骤,但也不是不可能的,对吧?

4

7 回答 7

5

不知道任何网站,因为我在有网络之前就学习了大部分系统管理知识。:-(

以下是我学到的一些非技术性的东西来帮助你入门:

  • 备份是您的朋友,但前提是您验证它们。
  • 跟踪您对系统所做的每一次更改。
  • 测试环境对系统管理员和开发人员一样重要。
  • 习惯在其他人都睡着的时候工作。
于 2009-03-01T20:44:28.710 回答
4

除了 tvanfosson 的回答,我还要补充:

记录一切——即使是你认为你永远不会忘记的东西。

于 2009-03-01T20:46:21.267 回答
3

我将您的问题发送给了这里的团队中的一些成员。

这就是我们想出的。

  • 使用 puppet、cfengine 学习配置管理
  • 学习并记住常见的突袭级别。你需要交换磁盘,你需要知道什么时候可以,什么时候不能。您还需要知道为什么您使用一个突袭级别而不是另一个。
  • 增加您对不同 FS 类型 ext3/ext4 等的熟悉程度。
  • 了解linux启动过程
  • 提高您对 Linux 内核的熟悉程度,特别是虚拟内存、分页、内存分配、进程创建。
  • 从内到外学习你的包管理器。了解如何使用您的 pkg 管理器从源代码或二进制文件恢复、应用、更新和安装软件包。
  • 了解如何读取“iostat, vmstat, free, valgrind, top, traceroute, ping, netstat, route and chkconfig(如果你使用的话)”中包含的数据
  • 了解如何阅读 strace 输出。我不能强调这一点。一点也不难读。
  • 了解 Unix 和 Linux 之间的区别
  • 学习脚本语言 X,其中 X 是你喜欢的任何东西(我使用 Perl 和 Python)
  • 学习一些 C。真的,当您解决奇怪的内存问题时,它会有所帮助。
  • 了解如何启动、停止、启用和禁用服务。
  • 从不同的人那里学习故障排除方法。系统管理员不是一个人的军队,他们在团队中工作。了解自己的弱点,承认并加强该领域。
  • 学习如何在停电的情况下在工作中获得很多乐趣。我希望这永远不会发生在你身上。
  • 培养您管理项目和截止日期的能力。
  • 学会说“不”
  • 批判性地思考,即使有人告诉你“我的代码不可能使服务器崩溃”,无论如何都要调查它。
  • 学习如何管理 apache、邮件服务器(我推荐 postfix)
  • 了解如何添加 ips、路由等,并通过引导使它们持久化。
  • 学习、爱、记忆、吃、睡和喝灾难恢复,成为一个伟大的计划者和组织者。如果你不擅长这些事情,那就去努力吧。
  • 培养维护正常运行时间和用户隐私的责任感。这是系统管理员最重要的价值。在我看来,做正确的事的真诚愿望对于成为一名优秀的系统管理员至关重要。
  • 阅读,阅读,阅读并充满热情。刻意练习会让你变得很棒!
  • 学会保持冷静。Panic 不会让您的服务恢复正常运行。- 由生产运营经理 Eric Ericson 供稿 - Baynote, Inc
  • 评估和了解不同的身份验证,例如 NIS/LDAP/AD 与本地身份验证 - 由高级系统管理员 Truong Pham 提供 - Baynote, Inc
  • 在 LISA 或其他一些系统管理员组中处于活动状态。并在系统管理员论坛/博客/新闻列表中闲逛。- 由匿名者提供 - Baynote, Inc. 必读:

http://en.wikipedia.org/wiki/Man_page#Manual_sections - 认真阅读手册页上的整个 wiki 页面。

Cricket Liu's DNS & Bind - 你必须阅读这本书并学会爱上它。

O'Reilly 的基本系统管理 - 一本非常适合新手的书

有一个名为http://www.linux-tutorial.info/modules.php?name=MContent&pageid=89 的站点 该站点上的一些数据已经过时,但最好通读一遍,因为有些商店仍然使用非常旧的发行版在生产中。

我自己订阅了 O'Reilly 图书馆。

你知道吗!我喜欢成为系统管理员。我也喜欢写代码。作为一名系统管理员,我可以和很多人一起工作,这是我非常喜欢的。我也喜欢当我没有多少信息但我可以通过分析和批判性思维来确定问题的根本原因时。我喜欢在所有的起起落落中成为一名系统管理员。

我不确定您是否希望以此为职业,但作为系统管理员,我在财务上做得很好。我希望你喜欢阅读。如果您愿意,请随时与我联系。我喜欢与人交谈,尤其是那些与我一样热衷于保持长时间正常运行和帮助他人的人。

很抱歉这篇文章很长。

于 2012-03-23T05:11:06.260 回答
2

在虚拟机中安装 Linux 或租用服务器。购买一本关于您选择的发行版的好书。将服务器设置为您的网络服务器。安装 Jabber/XMPP 服务器。使用 SMTP/IMAP 等安装邮件服务器。学习 OSI 模型。用 C 或 CPP 之类的系统语言编写一个简单的服务器,它使用套接字与某物进行通信。

...为自己设定一些目标并开始黑客攻击。最好的学习方法是设定一个目标并努力工作直到完成。

于 2009-03-01T20:45:43.327 回答
1

与其试图从书本中学习,如果这是你想做的职业转变,那就不要贪便宜。

查找您居住的地方提供的一些好的计算机培训课程,这将为您提供所需的系统管理员培训。愿意为此花几百到几千美元。

您会以十倍的速度学习所有内容,并会获得参考资料供您阅读和建议购买的书籍。

您将能够立即获得答案,然后在有不清楚或没有意义的情况下回答您提出的问题。

如果你想开始你的职业生涯,从一些培训开始是非常值得的。在你的简历中添加正式的培训也没有什么坏处。

于 2009-03-01T20:47:01.497 回答
1

您要使用的材料取决于您可能选择的系统管理专业。大多数系统管理员一开始就属于 Unix 阵营或 Windows 阵营作为主要专业。对于这些,您可以做的最好的事情是获得一个带有操作系统的虚拟机,并试验和学习它们的功能。一旦您觉得自己能够胜任基本的系统管理员任务(编写脚本、安装应用程序服务器、配置网络、补丁等),我建议您获得您想要被聘用的任何“核心”技术的认证。

如果你是一个体面的自学者,你会发现大多数 UNIX 和 Windows 证书都增加了一些晦涩的知识,但大多缺乏很多实用领域。没关系,因为证书不会使您成为系统管理员;他们只声称您在某些领域的能力最低,如果您没有该领域的经验,则在被雇用时会给您带来一点优势。这些通常很贵,但有一些是物有所值的(稍后您也许可以让您的雇主为您支付费用)。

一旦你真正进入你就会发现,在实践中,技术部分并不是很困难(它主要是阅读手册并记住操作系统功能的足够子集),但是在与你的雇主打交道时你会陷入困境/需要扑灭火灾时的客户/最终用户,这意味着您必须学习如何处理高压力情况,并能够说服人们实施技术上优越的解决方案,从而使您免于日后的额外工作。

非常确定为什么要进行此跳跃。根据我的经验,系统管理是 IT 中压力最大的职业,涉及的时间最长(一次 24/7 全天候待命),在某些情况下,大脑活动最少,因为日常操作涉及琐碎的任务和等待系统响应。最重要的技能真正归结为能够说不并在与几位高管在脖子上呼吸以​​启动生产服务器的通话中保持冷静。

从好的方面来说,你可以玩一些很酷的玩具,而且钱也很好。

于 2009-03-01T21:38:49.143 回答
1

来自系统管理员转为系统工程师的一些想法。

学习和使用配置管理系统。ChefPuppet是非常强大的选择(我喜欢 Chef),它们都是用 Ruby 编写的。如果那是您的平台,则不确定 Windows;Chef 计划在明年内支持 Windows。

充分利用您的软件控制技能。使用 Git 或 Subversion(或其他)存储库维护您的配置。我喜欢 Git,因为每个签出/克隆都是一个完整的存储库,所以备份很容易 :-)。

尽可能使用开源工具。您可以通过改进他们来使用您的开发人员技能。

阅读 Tom Limoncelli 的“系统和网络管理实践”——这是一本很好的书,涵盖了端到端的系统管理领域,而不是特定于平台的。

为您的平台查找本地用户组。加入 Twitter,寻找谈论你兴趣的人。进入 Freenode 网络上的 IRC 并与其他管理员讨论系统管理。

于 2009-03-04T23:19:41.980 回答