Home Linux 学习 第八、九章 学习系统管理与安装 Linux
Post
Cancel

Linux 学习 第八、九章 学习系统管理与安装 Linux

第八章 学习系统管理

8.1 理解系统管理

  • su 命令 — 以 root 用户身份打开一个 shell

  • sudo 命令 — 普通用户通过此命令运行其他命令时,该才会被赋予 root 权限

8.2 使用图形化管理工具

Cockpit 是基于浏览器的系统管理工具

  1. 安装 Cockpit
1
sudo dnf install cockpit
  1. 以 root 身份登录,启用 Cockpit 套接字
1
sudo systemctl enable --now cockpit.socker
  1. 在浏览器打开界面: localhost:9090

8.2.1 使用 system-config-* 工具

工具 命令 描述
域名系统 system-config-bind 如果计算机充当 DNS 服务器,应创建和配置区域 (Zone)
HTTP system-config-httpd Apache Web 服务器
NFS system-config-nfs 设置与其他使用了 NFS 服务的计算机共享的目录
Root Password system-config-rootpassword 更改 root 密码
Samba NFS system-config-samba 配置 Win 共享文件夹
Services system-config-services 显示和更改 Fedora 中在不同运行级别的服务
Authentication authconfig-gtk 更改系统中对用户进行身份验证的方式
Date & Time system-config-date 设置日期和时间或与 NTP 服务器保存同步
Firewall system-config-firewall 配置防火墙
Language system-config-language 选择语言
Printing system-config-printer 配置本地和网络打印机
SELinux Management policycoreutils-gui 设置 SELinux 的强制模式和默认策略
Users & Groups system-config-users 用户账户相关

8.3 使用 root 用户账户

8.3.1 通过 shell 成为 root 用户

使用命令 su 即可转为 root 用户,但此时环境变量还是原来的账户

使用 su - 以将变量也转变为 root 用户的

此外,通过 su - username 可切换到指定用户

8.3.2 使用 sudo 获取管理访问权限

使用 sudo 运行的命令拥有 root 权限,而且不需要 root 密码,只需要赋予相应用户权限即可

以下为赋予 sudo 权限

  1. 以 root 身份运行 visudo 命令

  2. 添加如下所示行

1
2
3
4
5
yexca    ALL=(ALL)    ALL

# 或下面为使用 sudo 时不需要密码
# (该用户的密码,不是 root 用户的密码)
yexca    ALL=(ALL)    NOPASSWD:ALL

这样将赋予用户 yexca 以 sudo 权限

  1. 保存更改后文件

8.4.2 管理配置文件

大部分配置文件以纯文本的形式存在 /etc 目录下,以下为部分文件

目录 描述
/etc/cron* 定义了 crond 计划执行的程序,如 cron.daily、cron.hourly
/etc/cups 配置 CUPS 打印服务的文件
/etc/default 为各种实用工具设置默认值的文件
/etc/httpd 配置 Apache Web 服务器行为
/etc/rc?.d 针对每一种有效的系统状态,都有一个单独的 rc?.d 目录:rc0.d (关闭状态)、rc1.d (单用户状态)、rc2.d (多用户状态)、rc3.d (多用户加网络状态)、rc4.d (用户定义的状态)、rc5.d (多用户、网络与 GUI 登录状态) 和 rc6.d (重新启动状态)
/etc/skel 创建新用户时,该目录文件被复制到新用户的主目录
/etc/sysconfig 包含各种服务所创建和维护的重要系统配置文件
/etc/systemd 包含与 systemd 实用工具 (用来管理启动进程和系统服务) 相关联的文件
/etc/xinetd.d 包含一组文件,每一个文件定义了一个 xinted 守护进程监听某一个特定端口所需的点播网络服务

8.4.3 管理日志文件和 Systemd.Journal

rsyslogd 和 systemd 的 journalctl 命令

rsyslogd 及前身 syslogd 将文件放到 /var/log 目录

8.5 使用其他管理账户

例如 lp 、apache 、bin 等用户,默认不允许登录

如果要登录需要将默认 shell 从 /sbin/nologin/bin/false 改为真实 shell,例如 /bin/bash

8.6 检查和配置硬件

8.6.1 检查硬件

通过 dmesgjournalctl 命令查看 Linux 启动时硬件检测信息以及驱动加载信息

通过 lspci 命令查看计算机上 PCI 总线及连接到这些总线上的设备,lsusb 命令列出 USB 设备信息,lscpu 列出处理器信息

8.6.2 使用可加载模块

如果想添加未被正确识别的硬件,可能需要手动加载

  1. 列出可加载模块

通过 lsmod 命令,如要获取某一模块详情,通过 modinfo -d 模块 命令

  1. 加载模块

使用 modprobe 命令加载任何被编译并安装到运行内核的模块

  1. 删除模块

使用 rmmod 命令,或使用 modprobe -r 以将依赖模块一起删除

8.7 小结

在 Linux中应该把各项服务 (http、git 等) 单独创建用户并限制登录权限以保证系统安全

第九章 安装 Linux

なし

图形化安装不必多说,其他安装可参考 Arch 参考手册

我也写了一篇比 Arch 手册垃圾的文章:虚拟机中 Arch Linux 安装记录 – yexca’Blog

另有远程安装例 PXE 启动之类因无法复现,无法理解

This post is licensed under CC BY 4.0 by the author.

Linux 学习 第七章 编写简单的 shell 脚本

Linux 学习 第十章 获取和管理软件