经过得到这些起码的能力,开始你的系统管理员职业。html
昔日的系统管理员成天都在调教用户和摆弄服务器,一天的时间都奔波在几百米长的电缆之间。随着云计算、容器和虚拟机的复杂性的增长,而今依然如此。linux
之外行人来看,很难准确肯定系统管理员的确切职能,由于他们在许多地方都扮演着一个不起眼的角色。没人能在培训中知道本身工做中所须要的一切知识,可是每一个人其实都须要一个坚实的基础。若是你想走上系统管理的道路,那么这是你我的自学或在正式培训中应重点关注的内容。git
当你学习 Bash Shell 时,你学习的不只是 Bash Shell,你学习的也是 Linux、BSD、MacOS 甚至Windows(在适当条件下)的通用界面。你将了解语法的重要性,所以能够快速适应思科路由器的命令行或微软 PowerShell 等系统,最终你甚至能够学习更强大的语言,如 Python 或 Go。并且,你还会开始进行程序性思考,以即可以分析复杂的问题并将其分解为单个组件,这很关键,由于这就是系统(例如互联网、组织的内部网、Web 服务器、备份解决方案)是如何设计的。github
不止于此,还有更多。web
因为最近 DevOps 和容器的发展趋势,了解 Bash shell 变得尤其重要。你的系统管理员职业可能会将你带入一个视基础设施为代码的世界,这一般意味着你必须了解脚本编写的基础知识、基于 YAML配置的结构,以及如何与容器(运行在沙盒文件内部的微型 Linux 系统)交互。你会知道 Bash 是高效管理激动人心的开源技术的门户,所以请进入 Bash 世界吧。shell
有不少方法能够在 Bash shell 中进行练习。apache
尝试一下便携式 Linux 发行版。你无需安装 Linux 便可使用 Linux,所以,请拿一块闲置的 U 盘,花个晚上或周末的空闲时光,来适应基于文本的界面。centos
要注意的是 Bash 练习的关键在于要练习,你必须有要作的练习才行。并且,在你知道如何使用 Bash 以前,你可能不知道该练习什么。若是是这样,请去 Over The Wire 玩一下 Bandit 游戏。这是一款针对绝对初学者的游戏,具备 34 个级别的交互式基本技巧,可以让你熟悉 Linux shell。bash
一旦你习惯了 Bash,你应该尝试设置一个 Web 服务器。并非全部的系统管理员都会四处设置 Web 服务器甚至维护 Web 服务器,可是你在安装和启动 HTTP 守护程序、配置 Apache 或 Nginx,设置正确权限和配置防火墙时所掌握的技能是你天天都须要使用的技能。通过一些努力,你可能会开始注意到本身的某些工做模式。在尝试管理可用于生产环境的软件和硬件以前,你可能认为某些概念是理所固然的,而你在成为新手的管理员角色时,将再也不受到它们的影响。起初这可能会使人沮丧,由于每一个人都喜欢在本身作好所作的事情,但这其实是一件好事。让本身接触新技能,那就是你学习的方式。
此外,你在第一步中付出的努力越多,最终当你在默认的 index.html 上看到胜利的“it works!”就越甜蜜!
David Both 撰写了有关 Apache Web 服务器配置的出色文章。值得一提的是,请逐步阅读他的后续文章,其中介绍了如何在一台计算机上托管多个站点。
动态主机配置协议(DHCP)是为网络上的设备分配 IP 地址的系统。在家里,ISP(互联网服务提供商)支持的调制解调器或路由器可能内置了 DHCP 服务器,所以可能不在你的权限范围内。若是你曾经登陆家用路由器来调整 IP 地址范围或为某些网络设备设置了静态地址,那么你至少对该概念有所了解。你可能会将其理解为对网络上的设备分配了一种 IP 地址形式的电话号码,而且你可能会意识到计算机之间经过广播发送到特定 IP 地址的消息彼此进行通讯。消息标头由路径上的路由器读取,每一个消息标头都将消息定向到路径上的第二个逻辑路由器,以达到其最终目标。
即便你了解了这些概念,要从对 DHCP 的基本了解再进一步是架设 DHCP 服务器。安装和配置本身的 DHCP 服务器可能会致使家庭网络中的 DHCP 冲突(若是能够的话,请尽可能避免这样作,由于它确定会干掉你的网络,直到解决为止),要控制地址的分配、建立子网,并监控链接和租赁时间。
更重要的是,设置 DHCP 并尝试不一样的配置有助于你了解网络之间的关系。你会了解网络如何在数据传输中表示“分区”,以及必须采起哪些步骤才能将信息从一个网络传递到另外一个。这对于系统管理员来讲相当重要,由于网络确定是工做中最重要的方面之一。
在运行本身的 DHCP 服务器以前,请确保家庭路由器(若是有)中的 DHCP 服务器处于非活动状态。一旦启动并运行了 DHCP 服务器,请阅读 Archit Modi 的网络命令指南,以获取有关如何探索网络的提示。
这听起来很普通,可是熟悉网络电缆的工做方式不只使你的周末变得很是有趣,并且还使你对数据是如何经过缆线的获得了全新的了解。最好的学习方法是去当地的业余爱好商店并购买五类线剥线钳和压线钳以及一些五类线水晶头。而后回家,拿一根备用的以太网电缆,切断水晶头,花一些时间从新制做网线接头,将电缆从新投入使用。
解决了这个难题后,请再作一次,此次建立一条有效的交叉电缆。
你如今应该还在沉迷于有关电缆管理。若是你有些强迫症,喜欢沿着地板线或桌子的边缘整齐地排列电缆,或者将电缆绑在一块儿以保持它们的整齐有序,那么就可使本身免受永久混乱的电缆困扰。你一开始可能不会理解这样作的必要性,可是当你第一次走进服务器机房时,你会立刻知道缘由。
Ansible 是配置管理软件,它在系统管理员和 DevOps 之间架起了一座桥梁。系统管理员使用 Ansible 来配置全新安装的操做系统并在计算机上维护特定的状态。DevOps 使用 Ansible 减小了在工具上花费的时间和精力,从而在开发上能够花费更多的时间和精力。做为系统管理员培训的一部分,你应该学习 Ansible,并着眼于 DevOps 实践,由于 DevOps 如今开创的大多数功能将最终成为未来系统管理中工做流的一部分。
Ansible 的好处是你能够当即开始使用它。它是跨平台的,而且能够向上和向下缩放。对于单用户计算机, Ansible 多是小题大作,可是话又说回来,Ansible 可能会改变你启动虚拟机的方式,或者能够帮助你同步家庭或家庭实验室中全部计算机的状态。
阅读 Jay LaCroix 的如何使用 Ansible 管理工做站配置中的典型介绍,以轻松地在平常之中开始使用 Ansible。
因为用户的错误、软件的错误、管理员(就是你!)的错误以及许多其余因素,计算机上会出现问题。没法预测将要失败的缘由,所以你的我的系统管理员培训制度的一部分应该是破坏你设置的系统,直到它们失败为止。你本身的实验室基础设施越是脆弱,发现弱点的可能性就越大。并且,你越是常常修复这些弱点,你对解决问题的能力就越有信心。
除了严格设置全部常见的软件和硬件以外,做为系统管理员的主要工做是查找解决方案。有时候,你可能会遇到职位描述以外的问题,甚至可能没法解决,但这彻底取决于你的解决方法。
如今,你越多地折腾并努力加以解决,则以系统管理员的身份进行的准备就越充分。
你是系统管理员吗?你是否但愿本身为更好的任务作好准备?在下面的评论中写下它们!
via: opensource.com/article/19/…
做者:Seth Kenlon 选题:lujun9972 译者:wxy 校对:wxy