系统管理员常用的Linux命令-第4部分

2020-09-21 15:48:29

本系列共分五部分,标题为:Linux系统管理员经常使用的Linux命令,现在我们已经学习到了第4部分。在本系列结束时,我们将介绍至少50个命令。到目前为止,我们讨论了Linux系统管理员和高级用户经常使用的大约40个命令。请参阅第1部分、第2部分和第3部分。

现在让我们来看看另一组命令和命令行工具,这些命令和命令行工具经常用于在Linux系统上执行文件系统管理、安全性、权限、联网和其他管理任务。在本系列的最后一部分发布之后,我将对相关命令进行分组,并将所有五个部分链接起来。

无论您是Linux桌面高级用户还是经验丰富的Linux sysadmin,您都会发现自己经常使用这些命令。(第4部,共5部)。

下面列出的命令对于下载远程文件、从命令行使用WHOIS、添加用户、转换和复制文件等非常有用。当尝试修复无法引导的Linux系统时,这些命令也很有用。同样,如果您不熟悉使用这些命令中的一些命令,也可以很容易地构建您的系统。因此,我强烈建议首先在您的沙箱和家庭实验室环境中测试其中一些命令。请参阅我的家庭实验室设置指南。

Wget是一个命令行工具,用于通过HTTP、HTTPS、FTP和FTPS下载文件。由于wget命令仅限命令行,这意味着也可以从脚本、cron作业和其他非GUI方法调用它。Wget的语法如下:

因此,例如,如果您想要下载官方wget手册(PDF文件),您可以使用以下命令:

最常见的wget替代方案是curl。cURL支持更多协议,包括FTPS、Gopher、HTTP、HTTPS、SCP、SFTP、TFTP、Telnet、DICT、LDAP、LDAPS、IMAP、POP3、SMTP和URI。CURL是一种非常灵活的实用程序;例如,您可以使用它来测试网站的TTFB(第一个字节的时间)和许多其他用途。

上面的命令对任何网站URL运行TTFB检查。使用man curl解释上述命令参数。此外,请阅读“一切卷曲”(Everything Curl)。

最初,dd代表“复制和转换”,但它被重新命名是因为C编译器已经使用了cc.dd(来源:PDP-11上的unix-v7中的dd),也就是说,许多人明智地将dd命名为“数据销毁程序”或“磁盘销毁程序”。

DD是Linux可用的一个非常通用的实用程序。Ddd命令行实用程序的主要用途是转换和复制文件。Dd最流行的用途之一是从.img或.iso文件制作USB引导驱动器。例如,当第一次设置Raspberry PI时,您需要将操作系统复制到U盘(又名。U盘),您可以对其使用dd命令。

例如,下面是将.img或.iso写入U盘或其他可引导存储设备的命令:

将/dev/sdx更改为正确的设备名称。警告:如果您提供了错误的设备名称,您的数据将会丢失!

您还可以反转该命令,将USB备份到您的Linux系统。但是,如果USB是32G,而使用的存储只有8 GB,那么您就不会想要备份整个32 GB的设备。您可以使用以下命令,将“XXXX”替换为USB上已用空间的块数+1。您可以使用下面讨论的Fisk-l命令找到这一点。

Dd命令还有许多其他用法。例如,dd命令可以对存储设备(即SSD存储设备)的性能进行基准测试,甚至可以对您的CPU进行基准测试。

Fdisk实用程序用于更改存储设备的分区表。您可以使用以下命令列出Linux系统上所有设备的分区表。

要显示特定设备的分区,请包括设备名称。(参见上面截图中的示例):

Device:显示设备名称,后跟分区号。Boot:Boot列显示第一个分区/dev/sda1有一个星号(*),表示此分区包含引导加载程序引导系统所需的文件。开始和结束:显示每个分区的已用块的开始和结束。BLOCKS:显示分配给分区的块数。ID和SYSTEM:显示分区类型。

Fdisk是一个对话驱动的实用程序,用于创建和操作分区表。块设备可以划分为一个或多个称为分区的逻辑磁盘。此分区记录在分区表中,通常位于磁盘的0扇区中。fdisk支持GPT、MBR、Sun、SGI和BSD分区表。*损坏的分区表可以用fdisk修复。

Linux中的whis命令可用于查找有关域的信息,如域所有者、联系信息、正在使用的名称服务器等。例如,要查找Oracle.com的域信息,可以使用以下命令:

WHOIS还向whis.networkolutions.com查询NIC句柄,或向whis.arin.net查询IPv4地址和网络名称。

NC(Netcat)是一个方便的命令行联网实用程序。NNC可用于端口扫描、端口重定向、端口侦听、打开远程连接,仅举几个技巧。

要在IP地址为192.168.1.11的远程计算机上扫描打开的TCP端口22,请使用以下命令:

要在IP地址为192.168.1.11的远程计算机上扫描打开的TCP端口22和80,请使用以下命令:

要在IP地址为192.168.1.11的远程计算机上扫描端口范围为20到8080的开放TCP端口,请使用以下命令:

请注意,所有数千个关闭的端口都有大量连接被拒绝。如果您只想显示打开的端口,则可以使用:

你可以在我列出的大约60个Linux联网命令和脚本中找到Netcat的替代方案。

Umask(用户文件创建掩码)是用于确定掩码设置的命令,该掩码控制如何为新创建的文件设置文件权限。它还可能影响显式更改文件权限的方式。这种位(掩码)分组限制了如何为新创建的文件设置相应的权限。Uask由open、mkdir和其他系统调用使用,用于修改新创建的文件或目录上的权限。

Chmod(更改模式)是用于更改Linux文件和目录的访问权限以及更改特殊模式标志的命令和系统调用。Chmod请求按umask过滤。命令语法如下所示:

有一种使用八进制模式设置权限的简单方法。读(R)权限的值为4,写(W)权限的值为2,执行(X)权限的值为1。如下所示:r=4 w=2 x=1。

这些值可以相加在一起,例如:1=仅执行2=只写3=写入并执行(1+2)4=只读5=读取并执行(4+1)6=读取和写入(4+2)7=读取和写入并执行(4+2+1)。

可以使用三位数字组合设置访问权限。例如:chmod 640 file1=rw-r-chmod 754 file1=rwx r-x r--chmod 664 file1=rw-rw-r--。

您还可以使用符号模式设置确切的权限。例如,此命令还设置了754个权限:

U-user g-group o-ther=0-完全按照如下方式设置权限。,-逗号分隔不同的权限类别(无空格)rwx=7 rx=5 r=4。

在Linux系统中,每个文件都与组所有权和所有者相关联。Chown(更改所有者)命令用于更改文件系统文件和目录的所有权。非root用户无法更改文件的所有权,即使该用户拥有该文件。只有root帐户可以执行所有权更改,而只有组的成员可以将文件的组ID更改为该组。

如果没有特权的用户希望更改他们拥有的文件的组成员身份,他们可以使用cchgrp命令来执行此操作。

[选项]*=附加选项。(可选)[用户]*=所有者的用户名或数字用户ID。:=更改一组文件时使用。[GROUP]*=更改文件的组所有权时使用。(可选)FILE*=目标文件。

根或“/”是整个Linux文件系统的挂载点,机器上的任何文件或目录都可以引用回此挂载点。Cchroot命令(Change Root)用于将根挂载点更改为不同位置。例如:

进行此更改的最常见原因之一是为应用程序或用户创建沙箱。一旦使用chroot设置了新的根目录,用户或应用程序对“/”的任何引用都将解析到新的chroot目录。这也是限制对系统根目录和文件系统访问的好方法。镀铬的贝壳也被称为监禁贝壳。

在无法引导的损坏系统上尝试Live CD/USB恢复时,也会使用Chroot。

添加和删除用户是一项基本的Linux管理任务。新的Linux服务器通常默认设置为仅使用超级用户帐户进行访问。但是,要执行许多系统管理任务,最好添加非特权用户。

上面的命令还自动创建一个名为James的组,并使其成为用户James的默认组。如果要将默认组设置为其他组,请使用-g选项。

Userdel-用于删除用户帐户和所有相关文件。此命令删除引用给定用户名的所有条目。

Sudo-对于需要root权限的任务,可以使用nsudo命令。基本上,ksudo允许您以另一个用户(包括root用户)的身份运行命令。在添加新用户后,您可能需要为其分配sudo权限并删除用户。-另请参见.sudo.ws和Arch Linux sudo wiki。

-在命令行上作弊(Github):作弊允许您在命令行上创建和查看交互式作弊单。

现在就到此为止吧!我希望你喜欢第四部分。回来看看第五部分!请添加书签、分享、订阅,并留下您可能有的任何评论或建议。