Fedora系统工具与管理全解析
1. 硬件传感器管理
许多用户关心计算机组件的温度和使用情况,可通过安装不同软件包来启用特定传感器。
| 传感器应用 | 描述 |
|---|---|
| lm_sensors | 检测并访问计算机(主板)传感器,如CPU和风扇速度。运行一次sensors-detect进行配置。 |
| hddtemp | 检测硬盘温度。 |
| ksenors | KDE传感器小程序。 |
1.1 lm_sensors配置
对于CPU、系统、风扇速度以及主板支持的其他传感器,使用lm_sensors服务。操作步骤如下:
1. 下载并安装lm_sensors软件包。
2. 配置传感器检测:
su
sensors-detect
此服务将检测计算机上的硬件传感器,并以lm_sensors服务运行。
1.2 hddtemp配置
要检测硬盘温度,需安装hddtemp。操作步骤如下:
1. 以root用户身份使用service命令启用hddtemp守护进程并启动服务器:
su
service hddtemp enable
service hddtemp start
-
如果未检测到硬盘,可配置
/etc/sysconfig/hddtemp文件来检测特定硬盘。例如,添加设备名称/dev/sd[abcd]:
HDDTEMP_OPTIONS="-l 127.0.0.1 /dev/sd[abcd]"
- 编辑hddtemp文件:
su root
nano /etc/sysconfig/hddtemp
使用nano编辑器(Ctrl - o保存,Ctrl - x退出,箭头键导航)。
1.3 KSensors安装与配置
可下载并安装KSensors软件包,用于显示传感器信息。
- 在GNOME中,从“系统工具”|“KSensors”访问,它将位于消息托盘(右下角),点击打开。
- 在KDE中,从“应用程序”|“系统”|“硬件监视器”访问,它将作为系统托盘上的图标出现。
配置步骤如下:
1. 打开KSensors后,右键点击对话框,从弹出菜单中选择“配置”打开配置对话框。
2. 在侧边栏选择传感器类别,如“硬盘”或“Nouveau(Nvidia显卡)”传感器。
3. 在右侧面板,可选择“传感器”、“系统面板”或“首选项”选项卡。“首选项”选项卡设置更新频率和温度刻度;“传感器”选项卡有子选项卡,可更改名称、在面板或停靠栏显示或设置警报。
2. SELinux配置与管理
使用
system-config-selinux
可管理和配置SELinux策略,但不能创建新策略(需使用
policycoreutils-gui
)。从“其他”|“SELinux管理”访问
system-config-selinux
,其窗口有侧边栏菜单,包含“状态”、“布尔值”、“文件标签”、“用户映射”、“SELinux用户”、“转换”、“网络端口”、“策略模块”和“进程域”等面板。
2.1 状态面板
设置默认和当前强制模式,可启用或禁用SELinux,指定策略类型。默认强制模式为“强制”,还有“禁用”和“宽容”选项。若访问系统有困难,可将强制模式设置为“宽容”或“禁用”。“宽容”模式允许访问但会发出警告消息,“禁用”模式将完全关闭SELinux。策略通常是有针对性的,专注于网络服务,如Samba和Apache。还可下载并安装更严格的策略,但可能需要深入了解SELinux才能管理。此面板还有重新标记选项,安装新服务器软件或更新系统时,可能需要重新标记部分文件和目录,勾选“下次重启时重新标记”即可执行,这可能需要一些时间。
2.2 用户映射面板
显示用户登录名到SELinux用户的映射,初始有root用户和默认用户两个映射。
2.3 布尔值面板
列出针对目标服务(如Web和FTP服务器、NFS和Samba)的各种选项,可进一步修改每个服务的控制方式。不同服务有可展开的菜单,如FTP条目可选择是否允许访问主目录或NFS传输。要允许访问许多网络服务,不仅要通过防火墙允许访问,还要通过SELinux。Samba尤其需要设置其布尔值条目才能访问Samba共享。
2.4 文件标签面板
列出系统目录和文件,显示其安全上下文和类型。选择条目并点击“属性”可编辑文件属性,显示包含“文件名”、“类型”、“SELinux类型”和“MLS级别”选项的对话框,可更改SELinux类型或MLS级别。对于宽容策略,MLS级别为s0,允许任何人访问,还可添加或删除条目。
2.5 SELinux用户面板
显示不同类型的SELinux用户,初始有root、system_u和user_u等用户类型。root用户对整个系统有完全的管理访问权限;system_u用户允许用户在需要时获得管理访问权限;user_u用户为普通用户。每个条目列出其SELinux用户、SELinux前缀、MLS级别、MLS范围和SELinux角色。
2.6 转换面板
可设置MLS符号,初始有SystemHigh和SystemLow - SystemHigh范围的符号,可更改映射的MLS级别,改变整个系统的安全级别访问。
2.7 网络端口面板
列出系统端口的网络协议、SELinux类型和MLS安全级别。选择条目并点击“属性”可更改端口的SELinux类型或MLS级别。“组视图”按钮将显示SELinux类型以及应用到的端口列表,此视图不显示MLS级别,因为这些是单独应用于端口的。
2.8 策略模块面板
列出不同的SELinux策略模块,可看到针对不同应用(如Thunderbird和Evolution)以及设备服务(如USB)的模块,还有桌面(如GNOME)的模块。此面板允许添加或删除模块,还可启用或添加模块的审计规则进行日志记录。
3. SELinux故障排除
Fedora包含SELinux故障排除程序,当SELinux拒绝访问文件或应用程序时,内核会发出AVC通知,故障排除程序会分析这些通知以检测用户可能需要处理的问题。当检测到问题时,桌面消息托盘中会显示SELinux故障排除程序通知和图标。
3.1 故障排除程序使用
- 点击图标或通知将打开SELinux故障排除程序窗口,也可随时从“系统工具”|“SELinux故障排除程序”访问。
- 窗口显示当前通知,使用“下一个”和“上一个”按钮浏览通知,右上角显示当前通知编号和“显示所有”按钮。
- 点击“故障排除”按钮显示通知的详细信息,列出可能尝试执行的操作和可能的解决方案。点击解决方案描述右侧的“详细信息”按钮,可在单独窗口中查看问题和解决方案的完整描述。
3.2 常见问题解决
很多情况下问题可能很容易解决,如更改文件的安全上下文以允许访问,或设置特定端口的访问权限。例如,SELinux需要为puppetmaster服务在端口8141设置端口访问权限,可使用以下命令:
semanage port -a -t puppet_port_t -p tcp 8141
也可使用SELinux管理工具进行更改,选择“网络端口”选项卡并点击“添加”按钮打开“添加网络端口”对话框。对于安全上下文更改,使用chcon命令,如授予Samba对
/mymedia
目录的访问权限:
chcon -R -t samba_share_t '/mymedia'
要一次性查看所有错误消息列表,点击“列出所有警报”按钮显示警报通知列表,包括日期、发生次数、类别和简要说明。点击“删除”按钮可删除警报。
3.3 复杂问题解决
更复杂的问题(尤其是未知问题)可能需要使用审计日志中的AVC消息创建新的策略模块,可使用audit2allow命令。操作步骤如下:
1. 生成策略模块:
cat /var/log/audit/audit.log | audit2allow -M local
- 加载模块:
semodule -i local.pp
- 若要先编辑允许条目,可创建.te文件:
audit2allow -m local -i /var/log/audit/audit.log > local.te
- 编辑.te文件后,编译模块并创建策略模块:
checkmodule -M -m -o local.mod local.te
semodule_package -o local.pp -m local.mod
semodule -i local.pp
4. Fedora系统管理工具
要有效使用Fedora Linux系统,需了解如何配置某些功能和服务,可使用用户友好的系统工具执行管理操作,如添加用户和安装软件。配置操作可通过桌面界面(如GNOME或KDE)或简单的shell命令行执行,也可手动访问系统配置文件进行编辑。配置工具仅对root用户可用,从任何用户账户访问时,需先输入root用户密码。
| Fedora管理工具 | 应用程序 | 描述 |
|---|---|---|
| system-config-authentication | 身份验证 | 设置身份验证设置。 |
| system-config-date | 日期与时间 | 更改系统时间/日期。 |
| firewall-config | 防火墙 | 配置网络防火墙。 |
| system-config-lvm | 逻辑卷管理 | 配置LVM文件系统卷。 |
| system-config-printer | 打印 | 打印机配置工具。 |
| system-config-rootpassword | 根密码 | 更改root用户密码。 |
| system-config-samba | Samba | 配置Samba。 |
| system-config-services | 服务 | 管理服务,如启动和停止服务器。 |
| system-config-users | 用户与组 | 用户和组配置工具。 |
| User Accounts | 用户账户 | 系统设置用户配置工具。 |
| policycoreutils-gui | SELinux管理 | SELinux配置。 |
| nm-connections-editor | 网络连接 | 网络管理器配置工具。 |
部分工具与新的GNOME 3系统设置工具重叠,如“用户”用于用户账户管理,“打印机”用于打印配置。设置日期时,可使用“系统设置”中的“日期和时间”或
system-config-date
(“其他”|“日期与时间”)。
5. 超级用户控制:root用户
要执行系统管理操作,必须提供root用户密码,成为超级用户。超级用户几乎可以更改系统上的任何内容,因此该密码通常仅提供给负责管理系统的人员。有了超级用户密码,可作为系统管理员登录系统并以不同方式配置系统,也可从任何账户访问特定任务的管理工具,临时获得超级用户权限。超级用户可执行启动和关闭系统、添加或删除用户、格式化文件系统、备份和恢复文件以及指定系统主机名等任务。
5.1 普通用户账户的管理访问
访问管理工具时,只需登录普通账户,选择所需工具,会弹出对话框提示输入root用户密码,输入后所选管理工具将启动,其功能将具有完整的root用户访问权限。更新操作也需要相同的权限,登录普通账户时会收到新更新通知,打开软件更新工具时,也会先弹出对话框要求输入root用户密码。每次启动不同的管理工具,都必须单独输入root用户密码。
5.2 直接登录root用户账户:su
在某些情况下,可能需要直接登录root用户账户。如果同时执行多个管理任务或需要直接修改配置文件,root用户账户访问可能是最佳选择。root用户是用于系统管理操作的特殊账户,对Linux操作系统的所有组件具有无限制的访问权限。可从终端窗口或命令行登录提示符登录root用户。
- 从命令行界面登录时,可运行相应的管理命令,如rpm安装软件包或useradd添加新用户。从桌面也可使用终端窗口运行命令行管理工具,root用户的命令行界面使用特殊提示符
#
。
- 当在桌面以普通用户身份登录时,可使用终端窗口和su命令登录root用户:
su root
输入密码后即可登录。例如,登录root用户后启动nmb服务:
su
service nmb start
完成操作后,输入
exit
退出su登录操作。
需要注意的是,使用su命令在终端窗口登录root用户后,不能从该终端窗口以root用户身份运行桌面应用程序,但可以运行leafpad编辑器来编辑配置文件:
su
leafpad /etc/default/grub
实际上,su命令可用于登录任何用户,前提是有该用户的密码。
5.3 root密码管理
由于超级用户几乎可以更改系统上的任何内容,root用户密码通常是严格保密的,需要经常更改,并且仅提供给负责管理系统的人员。使用正确的密码,可作为系统管理员登录系统并以不同方式配置系统,还可添加或删除用户、添加或删除整个文件系统、备份和恢复文件,甚至指定系统的名称和地址。
要更改root用户密码,可使用“根密码”对话框(“其他”|“根密码”,
system-config-rootpassword
软件包),也可在以root用户身份登录终端窗口后使用
passwd
命令。两种方法都会检查密码是否容易被破解。
5.4 受控管理访问:sudo
sudo命令允许普通用户针对特定任务获得有限的root用户管理访问权限,用户可以执行超级用户操作而无需拥有完整的root权限。可在http://www.sudo.ws 了解更多关于sudo的信息。默认情况下,普通用户未配置sudo访问权限,若指定了root用户,则root用户有sudo访问权限。普通用户需要先编辑
/etc/sudoers
文件来配置sudo访问权限。拥有sudo访问权限后,可像root用户一样使用管理工具,获得具有桌面功能的直接root用户访问权限。
sudo访问由
/etc/sudoers
文件控制,该文件列出用户及其可以运行的命令,以及访问所需的密码。如果设置了NOPASSWD选项,用户将不需要密码。ALL根据上下文可以指网络上的所有主机、所有root级命令或所有用户。
Fedora系统工具与管理全解析
6. 配置sudo访问权限流程
为普通用户配置sudo访问权限,可按以下步骤操作:
1. 以root用户身份登录系统。
2. 打开
/etc/sudoers
文件进行编辑,可使用
visudo
命令,它能在保存时检查语法错误。
visudo
-
在文件中添加或修改相应条目,赋予用户sudo权限。例如,若要让用户
testuser拥有所有sudo权限,可添加如下行:
testuser ALL=(ALL) ALL
若希望该用户执行命令时无需输入密码,可使用
NOPASSWD
选项:
testuser ALL=(ALL) NOPASSWD: ALL
-
保存并退出文件。若使用
visudo,保存并退出即可;若使用其他编辑器,需确保文件权限和内容无误。
7. 管理工具使用示例流程图
graph LR
A[普通用户登录] --> B{选择管理工具}
B -->|如Users & Groups| C[提示输入root密码]
C --> D{密码正确?}
D -->|是| E[启动管理工具]
D -->|否| C
E --> F[执行相应操作]
F -->|如创建用户| G[完成操作]
8. 硬件传感器配置总结
| 传感器应用 | 配置步骤 |
|---|---|
| lm_sensors |
1. 下载安装lm_sensors包
2. 以root身份运行
sensors-detect
|
| hddtemp |
1. 安装hddtemp
2. 以root身份启用并启动服务:
service hddtemp enable
和
service hddtemp start
3. 若未检测到硬盘,编辑
/etc/sysconfig/hddtemp
文件
|
| KSensors |
1. 下载安装KSensors包
2. 在GNOME或KDE中访问并配置 |
9. SELinux管理总结
SELinux管理涉及多个方面,包括策略配置、故障排除等。以下是关键要点总结:
-
策略配置
:使用
system-config-selinux
工具,可在不同面板进行状态设置、用户映射、布尔值调整等操作。
-
故障排除
:通过SELinux故障排除程序分析AVC通知,针对不同问题采用不同解决方案,如使用
semanage
、
chcon
命令或创建新的策略模块。
10. 系统管理最佳实践
为了更好地管理Fedora系统,可遵循以下最佳实践:
-
权限管理
:合理分配root权限,使用sudo为普通用户提供有限的管理访问权限,避免滥用root账户。
-
定期维护
:定期更新系统软件包,检查SELinux配置和硬件传感器状态,确保系统安全稳定运行。
-
备份数据
:定期备份重要数据,可使用系统自带的备份工具或第三方软件。
-
日志监控
:监控系统日志,及时发现并处理异常情况,如SELinux故障排除程序发出的通知。
11. 常见问题解答
-
问题
:使用su命令登录root用户后,为什么不能运行桌面应用程序?
解答 :使用su命令在终端窗口登录root用户后,环境变量等设置可能不适合运行桌面应用程序。若需要运行桌面应用程序,可使用su -命令,它会加载root用户的完整环境。 -
问题
:KSensors无法显示某些传感器信息怎么办?
解答 :首先确保相应的传感器软件包(如lm_sensors、hddtemp)已正确安装和配置。若仍有问题,可检查KSensors的配置,确保选择了正确的传感器类别。 -
问题
:SELinux故障排除程序提示的问题无法解决怎么办?
解答 :对于复杂问题,可使用audit2allow命令创建新的策略模块。若问题仍然存在,可参考相关文档或社区论坛,寻求更多帮助。
12. 总结
通过对Fedora系统工具和管理的介绍,我们了解了硬件传感器管理、SELinux配置与故障排除、系统管理工具的使用以及超级用户控制等方面的知识。合理运用这些工具和方法,能够更好地管理和维护Fedora系统,确保系统的安全性、稳定性和高效性。在实际操作中,应根据具体需求和情况,灵活运用各种工具和技巧,不断积累经验,提高系统管理能力。
超级会员免费看
974

被折叠的 条评论
为什么被折叠?



