热门排行
简介
本文所用的 Linux 发行版是 Ubuntu 10.0.4,有默认的 GNOME 桌面和主题,根据您的 Linux 版本具体情况,屏幕和各种工具的默认位置在本文中的描述可能略有不同。查看您的发行版文档了解更多细节。
先决条件
要充分理解本系列的文章,应该具备管理用户和组帐户、文件、文件夹、以及在 Windows 服务器环境下查看日志文件的相关知识。希望对登录和导航 Linux 桌面环境(比如 LXDE、GNOME,或者是 KDE)有一个基本的了解。除此之外,使用一个运行的 Linux 计算机来探讨本文的概念和示例是很有帮助的。
使用用户和组帐户
当您考虑从桌面环境实现服务器管理时,一个用户和组管理工具是必备的。对于最新发布的 GNOME 3.2,该工具位于 GNOME Control Center 中。GNOME Control Center 是一个中央位置,用来管理 Linux 计算机的各个方面(与 Windows Control Panel 没什么不同)。如今仍然广泛使用的是 GNOME System Tools (GST)。GST 为 Linux 管理员提供有用的工具,包括一个管理用户和组帐户的工具。一些流行的 Linux 发行版还提供 “系统-用户-配置” 工具作为默认的用户管理器。因此,不管您的 Linux 是哪个版本,都应该可以直接管理本地用户帐户,这些帐户通常在用户和组标签下。
Linux 没有注册表,因此,您使用的 GUI 工具仅仅是在文件系统中将数据写入一个文件的前端工具。对于管理用户和组的任务,只需要使用这些工具管理基础的 /etc/passwd 和 /etc/group 文件。/etc/passwd 文件维护用户帐户信息,而 /etc/group 文件存储组帐户信息。用户密码在 /etc/shadow 文件中进行加密,而组密码存储在 /etc/gshadow 文件中。
GNOME 用户和组管理工具提供一个简单直观的帐户管理界面,如图 1 所示。
图 1. 创建一个用户
只要拥有权限,您就可以创建并编辑用户和组帐户。此外,您还可以管理具体帐户设置,比如主目录位置、用户 ID、默认登录 shell、密码重置,以及组成员分配。标准用户通常可以使用该工具进行密码管理。
要创建一个新组,单击 Group 选项卡然后输入组名。如 图 2 所示,创建一个组之后,您就可以管理成员了,选择用户名旁边的复选框或取消选中即可。
图 2. 创建一个组
管理文件和文件夹
在 Windows 中,Windows Explorer 是诸多导航文件系统的首选工具。GNOME 项目拥有 Nautilus。Nautilus 是一个文件管理器,有一个强大的开发团队和广泛的用户群。Nautilus 自 2001 年以来一直在不断发展。
如果您使用 GNOME 桌面,则很有可能已经安装了 Nautilus。如果您没有使用 GNOME,仍然可以下载并安装 Nautilus,因此,查看一下您的发行版文档。
使用一个文件管理器时,执行的一个主要任务是导航文件系统。有了 Nautilus,您甚至可以将它切换到浏览器模式,这会给您更多的 Windows Explorer 感觉。请记住,在 Linux 中,所有文件夹都是作为子文件夹挂载到主 root (/) 目录下的。因此,如果您使用远程驱动器挂载到您的 Linux 服务器,比如从一个 Windows 或者另一个 Linux 计算机挂载,可以从 root (/) 目录浏览该文件系统,就像您在本地文件系统目录下操作一样,如 图 3 所示。
图 3. 导航文件系统
使用 Nautilus 导航和使用 Windows Explorer 导航一样。单击文件夹从而逐层打开子文件夹。右键单击任何文件夹或文件执行使用文件管理器所执行的常见任务,比如,复制、重命名、打开、压缩,以及管理权限。
对于查看首选项,可以设置选项,比如 detailed view(详细信息视图)、listed view(列表视图)、by name(按名称),等等,如 图 4 所示。
图 4. 管理文件首选项
读、写和执行
右键单击从而管理文件夹或文件权限时,您可以查看或更改权限(如果您的帐户有这样的权限)。在 Nautilus 中,如果一个文件或文件夹不在用户帐户的安全权限范围内,它旁边会有一个锁状图标。对于 Linux,每个文件夹都有 3 个权限集:用户所有者 (u)、组所有者 (g),及其他 (o),在每个权限集中可以分配基本的读、写、或执行权限。
记得给 shell 脚本或用户需要执行的任何其他文件分配执行权限。不像 Windows,在 Linux 中,您需要明确地授权文件执行权限给需要执行该操作的用户组。参见 图 5 示例。
图 5. 在文件上设置权限
表 1 概述了一个典型 Linux 文件的基本权限选项。在此使用八进制表示法,因为许多 Linux 相关的安装和软件文档以八进制计数法引用这些权限。
表 1. Linux 权限
权限 八进制表示法
只读 4
只写 2
只执行 1
读和写 6
读和执行 5
所有权限(读、写和执行) 7
使用 Nautilus 创建一个新文件时,使用基础 Linux 配置实现 umask,这和您从命令行创建文件一样,umask 确定默认权限。多数 Linux 发行版的 umask 默认为 022。文件从八进制数 666 开始工作。您只需要做一点简单的减法就可了解 umask 如何工作。如果创建一个新文件且 umask 是 022,该文件的默认权限为 666 - 022,或是 644。也就是说该用户所有者拥有读和写权限,而组所有者和其他用户仅有只读权限。
同样的概念也适用于使用 Nautilus 创建文件夹。文件夹从八进制数 777 开始工作。使用同样为 022 的 umask,如果创建一个新文件夹,其默认权限是 777-022,或是 755。这意味着用户所有者拥有所有权限,而组所有者和其他用户仅有读和执行权限。
共享
就像在 Windows Explorer 中一样,您可以使用 Nautilus 轻松地共享一个文件夹。要实现这一点,右键单击要共享的文件夹,并选择Sharing Options 菜单项。接着,选择 Share this folder 复选框。如 图 6 所示。
图 6. 共享一个文件夹
除此之外,如果想让其他用户能够保存该文件夹中的文档,可以选择 Allow others to create and delete files in this folder 复选框。如果您这样做,Nautilus 会要求您确认更改文件夹权限。
如果您有用户使用混合环境,可以选择 Guest access 复选框,允许这些用户可以在没有一个本地 Samba 帐户进行身份验证的情况下访问该文件夹。要谨慎使用这一选项,因为它可能会给您的 Linux 服务器带来不必要的安全漏洞。
如果您想与 Windows 用户共享文件夹,并对其进行验证,必须首先在您的 Linux 服务器上建立和配置 Samba。
使用服务
安装了 GST 之后,就可以在桌面环境下管理您的服务器服务和各种其他的 daemon(一个实现服务的 Linux 术语),这与使用 Windows 服务相类似。该工具通常被称作 Startup Preference,可以从 System 菜单单击 Preferences 启动它。
迄今为止,GST 不能完全管理诸如登录、重载、重启等服务。它为您提供一个基础依据,以便您了解您的 Linux 计算机上安装了什么服务以及是否需要在系统引导时运行特定服务。
如 图 7 显示,显示服务的绿色和红色图标表示在系统引导时这些服务是否启用或禁用。这类似于 Windows 服务的自动和手动选项,一个单独图标代表服务是否正在运行。
图 7. 使用 GST 查看一个正在运行的 sendmail 服务
监控系统
尽管和 Windows Task Manager 并不一样,但 GNOME System Monitor 提供类似功能。如果您需要一个 Linux 计算机资源使用的高级视图,GNOME System Monitor 可以提供该系统的一个快照。用于监控的 4 个主要选项卡为:
System
Processes
Resources
File Systems
System 选项卡提供一般的操作系统和硬件信息(内存和处理器),就像 Windows 中的 System 对话框,可以从 Window Manager 桌面图标中单击 Properties 时显示。
Processes 选项卡(图 8),显示所有正在运行的进程(有很多!)。可以将这些进程按名称、中央处理单元使用等进行排序,
图 8. 终止一个进程
Resources 选项卡(图 9)类似于 Windows Task Manager Performance 选项卡。它提供 CPU、内存/交换,以及网络带宽使用状况的历史图表。
图 9. 监控系统资源
File Systems 选项卡显示所有挂载的文件系统和常用信息,比如各个分区的挂载点、空闲空间、总空间,等等。
查看日志文件
GNOME System Log Viewer 足以与 Windows 中的 Event Viewer 相媲美。从本质上来说,Linux 通常使用 syslog(或 rsyslog)机制为各种应用程序、服务器服务和系统消息生成日志文件。这些文件通常位于 Linux 文件系统的 /var/log 目录下。因此,当您第一次打开 GNOME System Log Viewer 时,您所用的版本可能提供一种方法,可以使用该工具自动读取该目录下的各个日志。如果不是,您需要选择在查看器中添加附加日志文件,只需单击 File > Add,即可导航到所需的日志文件。
表 2 列出了一些您想使用日志查看器进行监控的常见 Linux 日志,并对其进行了描述。
表 2. Linux 日志文件
日志文件 描述
boot.log 硬件检测、挂载,以及机器启动时的其他系统消息
secure 安全性相关的消息
message 内核和其他一般系统消息的信息
httpd Web 服务器日志目录,分别在文件中包含访问和错误日志。
cups 包含打印相关的日志消息的目录
cron 计划作业相关的日志消息
Xorg.0.log X-Window 服务器相关的日志消息
auth.log 验证成功和失败
samba Samba 服务器相关的访问和错误日志目录
表 2 并不是一个使用日志查看器读取的详尽日志文件列表。即使您服务器上安装的是商用软件,也可以使用日志查看器查看这些日志文件,只要它们有正确的日志格式。查看 /var/log 目录,根据需要添加适当的日志文件。
GNOME System Log Viewer 与 Windows Event Viewer 大不相同的是,许多日志视图依赖于基础系统配置的设置。例如,Apache Web 服务器的日志可配置为日循环。在这种情况下,httpd access.log 仅显示当天的日志消息,而旧的日志文件则被归档。您仍然可以配置日志文件查看器查看归档日志,通过添加这些归档日志即可。
查看日志时,可以轻松地滚动并读取各种消息。有时候大量消息使得查找有趣的日志(比如错误或重大的消息)很像我们常说的大海捞针。GNOME System Log Viewer 提供一个过滤特性,允许您使用正则表达式定义各种过滤器,从而突出或只显示指定的日志消息。例如,在对具体用户的邮件问题进行故障排除时,可能需要进行过滤,只显示包含该用户邮箱地址的消息,如 图 10 所示。
图 10. 仅显示基于一个过滤器的消息
一个更典型的日常使用示例是创建过滤器来用红色突出显示错误消息,同时使用另一种颜色(比如橙色)显示警告消息。
图 11 演示了一个仅显示 root 登录尝试的过滤器配置。
图 11. 突出显示基于过滤器的日志消息
有了正则表达式,您就可以真正运用您的想象力根据需要突出显示或只显示您所需要的消息。
先决条件
要充分理解本系列的文章,应该具备管理用户和组帐户、文件、文件夹、以及在 Windows 服务器环境下查看日志文件的相关知识。希望对登录和导航 Linux 桌面环境(比如 LXDE、GNOME,或者是 KDE)有一个基本的了解。除此之外,使用一个运行的 Linux 计算机来探讨本文的概念和示例是很有帮助的。
使用用户和组帐户
当您考虑从桌面环境实现服务器管理时,一个用户和组管理工具是必备的。对于最新发布的 GNOME 3.2,该工具位于 GNOME Control Center 中。GNOME Control Center 是一个中央位置,用来管理 Linux 计算机的各个方面(与 Windows Control Panel 没什么不同)。如今仍然广泛使用的是 GNOME System Tools (GST)。GST 为 Linux 管理员提供有用的工具,包括一个管理用户和组帐户的工具。一些流行的 Linux 发行版还提供 “系统-用户-配置” 工具作为默认的用户管理器。因此,不管您的 Linux 是哪个版本,都应该可以直接管理本地用户帐户,这些帐户通常在用户和组标签下。
Linux 没有注册表,因此,您使用的 GUI 工具仅仅是在文件系统中将数据写入一个文件的前端工具。对于管理用户和组的任务,只需要使用这些工具管理基础的 /etc/passwd 和 /etc/group 文件。/etc/passwd 文件维护用户帐户信息,而 /etc/group 文件存储组帐户信息。用户密码在 /etc/shadow 文件中进行加密,而组密码存储在 /etc/gshadow 文件中。
GNOME 用户和组管理工具提供一个简单直观的帐户管理界面,如图 1 所示。
图 1. 创建一个用户
只要拥有权限,您就可以创建并编辑用户和组帐户。此外,您还可以管理具体帐户设置,比如主目录位置、用户 ID、默认登录 shell、密码重置,以及组成员分配。标准用户通常可以使用该工具进行密码管理。
要创建一个新组,单击 Group 选项卡然后输入组名。如 图 2 所示,创建一个组之后,您就可以管理成员了,选择用户名旁边的复选框或取消选中即可。
图 2. 创建一个组
管理文件和文件夹
在 Windows 中,Windows Explorer 是诸多导航文件系统的首选工具。GNOME 项目拥有 Nautilus。Nautilus 是一个文件管理器,有一个强大的开发团队和广泛的用户群。Nautilus 自 2001 年以来一直在不断发展。
如果您使用 GNOME 桌面,则很有可能已经安装了 Nautilus。如果您没有使用 GNOME,仍然可以下载并安装 Nautilus,因此,查看一下您的发行版文档。
使用一个文件管理器时,执行的一个主要任务是导航文件系统。有了 Nautilus,您甚至可以将它切换到浏览器模式,这会给您更多的 Windows Explorer 感觉。请记住,在 Linux 中,所有文件夹都是作为子文件夹挂载到主 root (/) 目录下的。因此,如果您使用远程驱动器挂载到您的 Linux 服务器,比如从一个 Windows 或者另一个 Linux 计算机挂载,可以从 root (/) 目录浏览该文件系统,就像您在本地文件系统目录下操作一样,如 图 3 所示。
图 3. 导航文件系统
使用 Nautilus 导航和使用 Windows Explorer 导航一样。单击文件夹从而逐层打开子文件夹。右键单击任何文件夹或文件执行使用文件管理器所执行的常见任务,比如,复制、重命名、打开、压缩,以及管理权限。
对于查看首选项,可以设置选项,比如 detailed view(详细信息视图)、listed view(列表视图)、by name(按名称),等等,如 图 4 所示。
图 4. 管理文件首选项
读、写和执行
右键单击从而管理文件夹或文件权限时,您可以查看或更改权限(如果您的帐户有这样的权限)。在 Nautilus 中,如果一个文件或文件夹不在用户帐户的安全权限范围内,它旁边会有一个锁状图标。对于 Linux,每个文件夹都有 3 个权限集:用户所有者 (u)、组所有者 (g),及其他 (o),在每个权限集中可以分配基本的读、写、或执行权限。
记得给 shell 脚本或用户需要执行的任何其他文件分配执行权限。不像 Windows,在 Linux 中,您需要明确地授权文件执行权限给需要执行该操作的用户组。参见 图 5 示例。
图 5. 在文件上设置权限
表 1 概述了一个典型 Linux 文件的基本权限选项。在此使用八进制表示法,因为许多 Linux 相关的安装和软件文档以八进制计数法引用这些权限。
表 1. Linux 权限
权限 八进制表示法
只读 4
只写 2
只执行 1
读和写 6
读和执行 5
所有权限(读、写和执行) 7
使用 Nautilus 创建一个新文件时,使用基础 Linux 配置实现 umask,这和您从命令行创建文件一样,umask 确定默认权限。多数 Linux 发行版的 umask 默认为 022。文件从八进制数 666 开始工作。您只需要做一点简单的减法就可了解 umask 如何工作。如果创建一个新文件且 umask 是 022,该文件的默认权限为 666 - 022,或是 644。也就是说该用户所有者拥有读和写权限,而组所有者和其他用户仅有只读权限。
同样的概念也适用于使用 Nautilus 创建文件夹。文件夹从八进制数 777 开始工作。使用同样为 022 的 umask,如果创建一个新文件夹,其默认权限是 777-022,或是 755。这意味着用户所有者拥有所有权限,而组所有者和其他用户仅有读和执行权限。
共享
就像在 Windows Explorer 中一样,您可以使用 Nautilus 轻松地共享一个文件夹。要实现这一点,右键单击要共享的文件夹,并选择Sharing Options 菜单项。接着,选择 Share this folder 复选框。如 图 6 所示。
图 6. 共享一个文件夹
除此之外,如果想让其他用户能够保存该文件夹中的文档,可以选择 Allow others to create and delete files in this folder 复选框。如果您这样做,Nautilus 会要求您确认更改文件夹权限。
如果您有用户使用混合环境,可以选择 Guest access 复选框,允许这些用户可以在没有一个本地 Samba 帐户进行身份验证的情况下访问该文件夹。要谨慎使用这一选项,因为它可能会给您的 Linux 服务器带来不必要的安全漏洞。
如果您想与 Windows 用户共享文件夹,并对其进行验证,必须首先在您的 Linux 服务器上建立和配置 Samba。
使用服务
安装了 GST 之后,就可以在桌面环境下管理您的服务器服务和各种其他的 daemon(一个实现服务的 Linux 术语),这与使用 Windows 服务相类似。该工具通常被称作 Startup Preference,可以从 System 菜单单击 Preferences 启动它。
迄今为止,GST 不能完全管理诸如登录、重载、重启等服务。它为您提供一个基础依据,以便您了解您的 Linux 计算机上安装了什么服务以及是否需要在系统引导时运行特定服务。
如 图 7 显示,显示服务的绿色和红色图标表示在系统引导时这些服务是否启用或禁用。这类似于 Windows 服务的自动和手动选项,一个单独图标代表服务是否正在运行。
图 7. 使用 GST 查看一个正在运行的 sendmail 服务
监控系统
尽管和 Windows Task Manager 并不一样,但 GNOME System Monitor 提供类似功能。如果您需要一个 Linux 计算机资源使用的高级视图,GNOME System Monitor 可以提供该系统的一个快照。用于监控的 4 个主要选项卡为:
System
Processes
Resources
File Systems
System 选项卡提供一般的操作系统和硬件信息(内存和处理器),就像 Windows 中的 System 对话框,可以从 Window Manager 桌面图标中单击 Properties 时显示。
Processes 选项卡(图 8),显示所有正在运行的进程(有很多!)。可以将这些进程按名称、中央处理单元使用等进行排序,
图 8. 终止一个进程
Resources 选项卡(图 9)类似于 Windows Task Manager Performance 选项卡。它提供 CPU、内存/交换,以及网络带宽使用状况的历史图表。
图 9. 监控系统资源
File Systems 选项卡显示所有挂载的文件系统和常用信息,比如各个分区的挂载点、空闲空间、总空间,等等。
查看日志文件
GNOME System Log Viewer 足以与 Windows 中的 Event Viewer 相媲美。从本质上来说,Linux 通常使用 syslog(或 rsyslog)机制为各种应用程序、服务器服务和系统消息生成日志文件。这些文件通常位于 Linux 文件系统的 /var/log 目录下。因此,当您第一次打开 GNOME System Log Viewer 时,您所用的版本可能提供一种方法,可以使用该工具自动读取该目录下的各个日志。如果不是,您需要选择在查看器中添加附加日志文件,只需单击 File > Add,即可导航到所需的日志文件。
表 2 列出了一些您想使用日志查看器进行监控的常见 Linux 日志,并对其进行了描述。
表 2. Linux 日志文件
日志文件 描述
boot.log 硬件检测、挂载,以及机器启动时的其他系统消息
secure 安全性相关的消息
message 内核和其他一般系统消息的信息
httpd Web 服务器日志目录,分别在文件中包含访问和错误日志。
cups 包含打印相关的日志消息的目录
cron 计划作业相关的日志消息
Xorg.0.log X-Window 服务器相关的日志消息
auth.log 验证成功和失败
samba Samba 服务器相关的访问和错误日志目录
表 2 并不是一个使用日志查看器读取的详尽日志文件列表。即使您服务器上安装的是商用软件,也可以使用日志查看器查看这些日志文件,只要它们有正确的日志格式。查看 /var/log 目录,根据需要添加适当的日志文件。
GNOME System Log Viewer 与 Windows Event Viewer 大不相同的是,许多日志视图依赖于基础系统配置的设置。例如,Apache Web 服务器的日志可配置为日循环。在这种情况下,httpd access.log 仅显示当天的日志消息,而旧的日志文件则被归档。您仍然可以配置日志文件查看器查看归档日志,通过添加这些归档日志即可。
查看日志时,可以轻松地滚动并读取各种消息。有时候大量消息使得查找有趣的日志(比如错误或重大的消息)很像我们常说的大海捞针。GNOME System Log Viewer 提供一个过滤特性,允许您使用正则表达式定义各种过滤器,从而突出或只显示指定的日志消息。例如,在对具体用户的邮件问题进行故障排除时,可能需要进行过滤,只显示包含该用户邮箱地址的消息,如 图 10 所示。
图 10. 仅显示基于一个过滤器的消息
一个更典型的日常使用示例是创建过滤器来用红色突出显示错误消息,同时使用另一种颜色(比如橙色)显示警告消息。
图 11 演示了一个仅显示 root 登录尝试的过滤器配置。
图 11. 突出显示基于过滤器的日志消息
有了正则表达式,您就可以真正运用您的想象力根据需要突出显示或只显示您所需要的消息。