高效的Linux系统管理员需要具备的技巧
发布时间:2022-07-20 11:11:22 所属栏目:云计算 来源:互联网
导读:跟大家分享的文章是关于高效的Linux系统管理员需要具备的技巧。好的系统管理员区分在效率上。如果一位高效的系统管理员能在10分钟内完成一件他人需要2个小时才能完成的任务,那么他应该受到奖励(得到更多报酬),因为他为公司节约了时间,而时间就是金钱。
|
跟大家分享的文章是关于高效的Linux系统管理员需要具备的技巧。好的系统管理员区分在效率上。如果一位高效的系统管理员能在10分钟内完成一件他人需要2个小时才能完成的任务,那么他应该受到奖励(得到更多报酬),因为他为公司节约了时间,而时间就是金钱。以下这些技巧可以节约时间 —— 即使没有因为高效而得到更多的报酬,但至少可以有更多的自由支配时间。对于Linux入门的小伙伴一定要看看这篇文章,下面我们就来看一看高效的Linux系统管理员需要具备的技巧。 技巧1:卸载无响应的DVD驱动器 网络新手的经历:按下服务器(运行基于Redmond的操作系统)DVD驱动器上的Eject按钮时,它会立即弹出。他然后抱怨说,在大多数企业Linux服务器中,如果在那个目录中运行某个进程,弹出就不会发生。作为一名长期的Linux管理员,我会重启机器。如果我不清楚正在运行什么,以及为何不释放DVD驱动器,我则会弹出磁盘。但这样效率很低。 下面介绍如何找到保持DVD驱动器的进程,并轻松弹出DVD驱动器:首先进行模拟。在DVD驱动器中放入磁盘,打开一个终端,装载DVD驱动器: # mount /media/cdrom # cd /media/cdrom # while [ 1 ]; do echo "All your drives are belong to us!"; sleep 30; done 现在打开第二个终端并试着弹出DVD驱动器: # eject 将得到以下消息: umount: /media/cdrom: device is busy 在释放该设备之前,让我们找出谁在使用它 # fuser /media/cdrom 进程正在运行,无法弹出磁盘其实是我们的错误。现在,如果您是根用户,可以随意终止进程: # fuser -k /media/cdrom 现在终于可以卸载驱动器了: # eject fuser很正常。 技巧2:恢复出现问题的屏幕 尝试以下操作: # cat /bin/cat 注意!终端就想垃圾一样。输入的所有内容非常零乱。那么该怎么做呢? 输入reset。但是,输入reset与 输入reboot或shutdown太接近了。吓得手心冒汗了吧 — 特别是在生产机器上执行这个操作时。 放心吧,在进行此操作时,机器不会重启。继续操作: # reset 现在屏幕恢复正常了。这比关闭窗口后再次登陆好多了,特别是必须经过5台机器和SSH才能到达这台机器时。 技巧3:屏幕协作 来自产品工程的高级维护用户David打电话说:“为什么我不能在您部署的这些新机器上编译supercode.c”。 您会问他:“您运行的是什么机器?” David答道:“Posh”。(这个虚够的公司将它的5台生产服务器以纪念Spice Girls的方式命名)。这下您可以大显身手了,另一台机器由David操作: # su - david 转到posh: # ssh posh 到达之后,运行以下代码: # screen -S foo 然后呼叫David:“David,在终端运行命令# screen -x foo”。 这时您和David的会话在Linux shell中联接在一起。您可以输入,他也可以输入,但彼此可以看到对方所做的事情。这避免了进入其他层次,而且双方都有相同的控制权。这样做的好处是David可以观察到您的故障诊断技巧,并能准确了解如何解决问题。 最后大家都能看到问题所在:David的编译脚本对一个不在此新服务器上的旧目录进行了硬编码。将它装载后再次编译即可解决问题,然后David继续工作。您则可以继续之前的娱乐活动。 关于此技巧需要注意的一点是,双方需要以同一用户登录。screen命令还可以:实现多个窗口和拆分屏幕。请阅读手册页获取更多相关信息。 对于screen会话,我还有最后一个技巧。要从中分离并让它打开,请输入 Ctrl-A D (即按住Ctrl键并点击A键。然后按D键)。然后通过再次运行screen -x foo命令可以重新拼接起来。 技巧4:找回根密码 如果忘记根密码,就必须重新安装整台机器。更惨的是,许多人都会这样做。但是启动机器并更改密码却十分简单。这并非在所有情况下都适用(比如设置了一个GRUB密码,但也忘记了),但这里介绍一个Cent OS Linux示例,说明一般情况下的操作。 首先重启系统。重启时会跳出如图1所示的GRUB屏幕。移动箭头键,这样可以保留在此屏幕上,而不是进入正常启动。 重启后的GRUB屏幕 图1.重启后的GRUB屏幕 然后,使用箭头键选择要启动的内核,并输入E编辑内核行。然后便可看到如图2所示的屏幕: 准备编辑内核行 图2:准备编辑内核行 再次使用箭头键突出显示以kernel开始的行,按E编辑内核参数。到达如图3所示的屏幕时,在图3中所示的参数后追加数字1即可: 在参数后追加数字1 图3.在参数后追加数字1 然后按Enter和B,内核会启动到单用户模式。然后运行passwd命令,更改用户根密码: sh-3.00# passwd New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully 现在可以重启了,机器将使用新密码启动。 技巧5:SSH后门 有很多次,我所在的站点需要某人的远程支持,而他却被公司防火强阻挡在外。很少有人意识到,如果能通过防火墙到达外部,那么也能轻松实现让外部的信息进来。从本意讲,这称为 “在防火墙上砸一个洞”。我称之为SSH后门。为了使用它,必须有一台作为中介的连接到Internet的机器。在本例中,将这样台机器称为blackbox.example.com。公司防火墙后面的机器称为ginger。此技术支持的机器称为tech。图4解释了设置过程。 在防火墙上砸一个洞 图4.在防火墙上砸一个洞 以下是操作步骤: 检查什么是允许做的,但要确保您问对了人。大多数人都担心您打开了防火墙,但他们不明白这是完全加密的。而且,必须破解外部机器才能进入公司内部。不过,您可能属于 “敢作敢为” 型的人物。自己进行判断应该选择的方式,但不如意时不抱怨别人。 使用-R标记通过SSH从ginger连接到blackbox.example.com。假设您是ginger上的根用户,tech需要根用户ID来帮助使用系统。使用-R标记将blackbox上端口2222的说明转发到ginger的端口22上。这就设置了SSH通道。注意,只有SSH通信可以进入ginger:您不会将ginger放在无保护的Internet上。可以使用以下语法实现此操作: ~# ssh -R 2222:localhost:22 thedude@blackbox.example.com 进入blackbox后,只需一直保持登录状态。我总是输入以下命令: thedude@blackbox:~$ while [ 1 ]; do date; sleep 300; done 使机器保持忙碌状态。然后最小化窗口。 现在指示tech上的朋友使用SSH连接到blackbox,而不需要使用任何特殊的SSH标记。但必须把密码给他们: root@tech:~# ssh thedude@blackbox.example.com tech位于blackbox上后,可以使用以下命令从SSH连接到ginger: thedude@blackbox:~$: ssh -p 2222 root@localhost Tech将提示输入密码。应该输入ginger的根密码。现在您和来自tech的支持可以一起工作并解决问题。甚至需要一起使用屏幕!(参见 技巧4)。 技巧6:通过SSH通道进行远程VNC会话 VNC或虚拟网络计算已经存在很长时间了。通常,当远程服务器上的某类图形程序只能在此服务器上使用时,我才需要VNC。 例如,假设在 技巧5中,ginger是一台存储服务器。许多设备都使用GUI程序来管理存储控制器。这些GUI管理工具通常需要通过一个网络直接连接到存储服务器,而这个网络有时保存在专用的子网络中。因此,只能通过ginger访问这个GUI。 可以尝试使用-X选项通过SSH连接到ginger并启动它,但这对带宽要求很高,您需要忍受等待的痛苦。VNC是一个网络友好的工具,几乎适用于所有操作系统。 假设设置与技巧5中的一样,但希望tech能访问VNC而不是SSH。对于这种情况,需要进行一些类似的操作,不过转发的是VNC端口。执行以下操作步骤: 在ginger上启动一个VNC服务器会话。运行以下命令: root@ginger:~# vncserver -geometry 1024x768 -depth 24 :99 这些选项指示启动服务器,分辨率为1024×768,像素深度为每像素24位。如果使用较慢的连接设置,8也许是更好的选项。使用:99指定可访问VNC服务器的端口。VNC协议在5900处启动,因此:99表示服务器可从端口5999访问。 启动该会话时,要求您指定密码。用户ID与启动VNC服务器时的用户相同(本例中就是根用户)。 (编辑:阜阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

