第七次作业
第1题(填空题)
原题: 由Red Hat公司提出的软件包管理标准是( )。
答案: RPM (Red Hat Package Manager)
解析:
RPM (Red Hat Package Manager) 是一种强大的命令行驱动的软件包管理系统,能够安装、卸载、验证、查询和更新计算机软件。它最初由Red Hat公司开发,并已成为许多Linux发行版(如RHEL, CentOS, Fedora, openSUSE等)的标准软件包格式。
第10题(单选题)
原题: Apache的web服务器的主配置文件为( )。
A. /etc/httpd.conf
B. /etc/httpd/httpd.conf
C. /etc/httpd/conf.d
D. /etc/httpd/conf/httpd.conf
答案: D (在RHEL/CentOS等系统中) 或 B (有时也是这样,取决于具体的Apache版本和发行版配置)
解析:
Apache HTTP Server (通常简称为Apache,服务名为httpd) 的主配置文件位置因发行版和编译配置而异。
- 在基于RHEL的系统(如CentOS, Fedora)中,主配置文件通常是
/etc/httpd/conf/httpd.conf
。 conf.d
目录 (/etc/httpd/conf.d/
) 用于存放模块化的配置文件,这些文件会被主配置文件包含。
选项中:
- D.
/etc/httpd/conf/httpd.conf
: 这是RHEL系列发行版中常见的Apache主配置文件路径。 - B.
/etc/httpd/httpd.conf
: 在某些较早的配置或某些发行版中,主配置文件可能直接在/etc/httpd/
目录下。
考虑到通常的考试环境和较新的RHEL/CentOS约定,D 是最可能的答案。如果D不存在,B也可能是对的。但D的路径结构更符合模块化配置的习惯。
第17题(判断题)
原题: systemctl enable httpd命令语句可以启动httpd服务( )。
答案: 错误
解析:
systemctl enable httpd
命令的作用是设置 httpd
服务在系统启动时自动运行(即创建相应的启动链接)。它本身并不会立即启动服务。
要立即启动服务,应该使用 systemctl start httpd
命令。
要立即启动服务并设置开机自启,可以连续执行 systemctl start httpd
和 systemctl enable httpd
,或者在某些较新版本的systemd中使用 systemctl enable --now httpd
。
第3题(填空题)
原题: web服务器Apache运行的服务进程是( )。
答案: httpd
解析:
Apache HTTP Server 在Linux系统上运行时的服务进程名通常是 httpd
(HyperText Transfer Protocol Daemon)。在一些Debian/Ubuntu系统中,它可能是 apache2
。但题目中提到Apache,且在RPM系发行版中普遍使用 httpd
。
第4题(填空题)
原题: 在web应用中服务端和客户端之间进行安全通信的加密协议是( )。
答案: HTTPS (或 TLS/SSL)
解析:
HTTPS (HyperText Transfer Protocol Secure) 是通过在HTTP和TCP之间加入一层加密/认证层(通常是TLS - Transport Layer Security,或其前身SSL - Secure Sockets Layer)来实现的安全通信协议。它用于在客户端(如Web浏览器)和服务器之间建立加密连接,保护数据传输的机密性和完整性。
第11题(多选题)
原题: repo服务器的搭建方式有( )。
A. 部署本地repo源
B. 部署远端repo源
C. 本地远端混合搭建
D. 只有本地部署
答案: A, B, C (从用户的角度看,B可以看作使用远端源)
解析:
一个“repo服务器”(通常指YUM/DNF的软件仓库服务器)的搭建方式:
- A. 部署本地repo源: 可以在本地网络中的一台服务器上搭建一个完整的软件仓库,供局域网内的其他机器使用。这可以是官方镜像的本地副本,也可以是自定义的软件包仓库。
- B. 部署远端repo源: 严格来说,用户通常是“使用”远端的repo源(如官方的镜像站点,或云服务商提供的源)。“部署”远端repo源指的是在互联网上建立一个公共的或私有的仓库服务器。
- C. 本地远端混合搭建: 一台客户端机器的YUM/DNF配置可以同时指向本地搭建的repo源和互联网上的远端repo源,实现混合使用。
- D. “只有本地部署” 是不准确的。
从“搭建”的角度看,A是完全的本地搭建。B可以理解为在某处(可能是远端)搭建一个仓库供他人使用。C是客户端配置层面可以混合使用本地和远端源。
如果题目是从“搭建一个可供自己或他人使用的仓库”角度出发,A和B(指在某个位置搭建仓库,这个位置相对于使用者可能是本地或远端)都是搭建方式。C更多的是客户端的配置策略。
考虑到选项的表述,A(在本地网络搭建)和B(搭建一个可被远程访问的仓库)是最直接的“搭建方式”。
第12题(多选题)
原题: openGauss数据库的部署有 ( )。
A. 单机部署
B. 一主多备
C. 多主多备
D. 双机热备
答案: A, B, D (C 通常指分布式多活,openGauss目前更强调主备架构)
解析:
openGauss 是一款开源的关系型数据库管理系统。其常见的部署模式包括:
- A. 单机部署: 将openGauss数据库部署在一台服务器上,简单快捷,但没有高可用性。
- B. 一主多备: 一个主节点处理读写请求,一个或多个备用节点通过流复制同步主节点数据,主节点故障时备节点可以接管服务,实现高可用。
- C. 多主多备: 这通常指分布式数据库的多活架构,每个主节点都可以处理写操作。openGauss的传统高可用是主备架构。虽然有分布式能力(如DWS基于openGauss),但“多主多备”作为其核心部署模式的表述需要谨慎。
- D. 双机热备: 这是一主一备的特例,也是常见的高可用部署方式。
根据openGauss的官方文档和常见实践,A、B、D 是其明确支持和常见的部署模式。
第13题(判断题)
原题: openGauss数据库目前不支持远程连接( )。
答案: 错误
解析:
openGauss数据库作为一款企业级的关系型数据库,支持远程连接是其基本功能。它允许客户端通过网络连接到数据库服务器进行数据操作和管理。这需要正确配置数据库服务器的网络监听(listen_addresses
参数)以及客户端的认证(pg_hba.conf
文件)。
第16题(判断题)
原题: dnf命令安装过程中不会去解决软件依赖问题( )。
答案: 错误
解析:
DNF (Dandified YUM) 是新一代的RPM软件包管理器,是YUM的后继者。与YUM一样,DNF的一个核心功能就是自动解决软件包之间的依赖关系。当用户尝试安装一个软件包时,DNF会自动检查该软件包所依赖的其他软件包,如果这些依赖包未安装或版本不符,DNF会尝试从配置的软件仓库中找到并安装合适的依赖包。
第2题(填空题)
原题: DNF的主要配置文件是( )。
答案: /etc/dnf/dnf.conf
解析:
DNF的主要全局配置文件是 /etc/dnf/dnf.conf
。这个文件包含了DNF的默认行为设置,如缓存目录、日志级别、是否保留已下载的包等。此外,软件仓库的定义通常放在 /etc/yum.repos.d/
目录下的 .repo
文件中(DNF仍然兼容并使用此目录)。
第6题(单选题)
原题: linux下软件包分为两类,分别为( )。
A. 源码包和可执行包
B. 源码包和二进制包
C. 二进制包和可执行包
D. e源码包和编译包
答案: B
解析:
在Linux下,软件包通常可以分为两大类:
- 源码包 (Source Package): 包含程序的源代码,需要用户在本地进行编译和安装。这种方式灵活性高,可以自定义编译选项,但安装过程相对复杂。
- 二进制包 (Binary Package): 包含已经编译好的可执行文件、库文件、配置文件等。用户可以直接安装使用,无需编译。例如RPM包、DEB包都是二进制包。
选项分析:
- A. “可执行包” 通常就是指二进制包的一种形式。
- C. 同A。
- D. “编译包” 不是一个标准的分类术语,编译是源码包安装过程中的一个步骤。
因此,源码包和二进制包是最准确和常见的分类。
第15题(判断题)
原题: 搜索httpd软件包的命令为dnf list httpd( )。
答案: 正确 (部分正确,更精确的是 dnf search httpd
或 dnf list available httpd
)
解析:
dnf list httpd
: 如果httpd
软件包已安装,此命令会列出已安装的httpd
包。如果未安装,但仓库中有,也可能会列出(取决于DNF版本和配置)。dnf search httpd
: 这是更通用的搜索命令,它会在所有可用软件包的名称和描述中搜索关键字httpd
。dnf list available httpd
: 这会明确列出仓库中可用的(未安装的)名为httpd
的软件包。
如果理解为“检查仓库中是否有httpd包”,那么 dnf list httpd
在很多情况下可以达到目的。但更标准的“搜索”是 dnf search
。
考虑到 list
也能提供相关信息,可以认为此判断是基本正确的,但 search
更为精确。 如果题目要求最准确的“搜索”,则此判断有瑕疵。但如果只是想知道是否存在,list
也可以。
第7题(单选题)
原题: 查询系统中安装所有的bind软件的命令为( )。
A. rpm -q bind
B. rpm -qa bind
C. rpm -qa | grep bind
D. rpm -qa bind grep bind
答案: C
解析:
- A.
rpm -q bind
: 查询名为bind
的软件包是否已安装,如果安装了多个包含bind
字符的包(例如bind-utils
,bind-libs
),这个命令可能只显示精确匹配bind
的那个,或者需要完整包名。 - B.
rpm -qa bind
:-qa
用于列出所有已安装的包。后面直接跟bind
不是rpm -qa
的标准用法来过滤。rpm -qa
会列出所有包,然后管道给grep
过滤才是正确做法。 - C.
rpm -qa | grep bind
:-qa
列出所有已安装的软件包,然后通过管道|
将输出传递给grep bind
,grep
会筛选出所有包含 “bind” 字符串的行。这是查询系统中所有与 “bind” 相关的已安装软件包的常用方法。 - D.
rpm -qa bind grep bind
: 语法错误。
因此,rpm -qa | grep bind
是正确的命令。
第14题(判断题)
原题: 关闭交换内存的命令语句为swapoff -a( )。
答案: 正确
解析:
swapoff
命令用于停用指定的交换设备或交换文件。
swapoff <device_or_file>
: 停用指定的交换空间。swapoff -a
: 停用在/etc/fstab
文件中标记为 “sw” 类型的所有交换空间。这相当于关闭系统中所有当前活动的交换分区和交换文件。
因此,该命令语句是正确的。
第8题(单选题)
原题: 与rpm -ivh命令语句对应的dnf命令语句为( )。
A. dnf install
B. dnf info
C. dnf list
D. dnf update
答案: A
解析:
rpm -ivh <package_file.rpm>
命令用于安装本地的RPM软件包文件。
-i
: install (安装)-v
: verbose (显示详细信息)-h
: hash (显示安装进度条)
DNF中对应的操作是:
- A.
dnf install <package_name_or_path_to_rpm_file>
:dnf install
既可以从配置的软件仓库中按包名安装,也可以直接安装本地的.rpm
文件。当安装本地文件时,DNF也会处理依赖关系(如果配置了可用的仓库)。
其他选项:
dnf info <package_name>
: 显示软件包的详细信息,类似于rpm -qi
。dnf list <package_name>
: 列出软件包,类似于rpm -q
或rpm -qa | grep
。dnf update <package_name>
: 更新指定的软件包,类似于rpm -Uvh
(如果包已安装) 或rpm -Fvh
(只更新已安装的包)。
因此,dnf install
是与 rpm -ivh
(用于安装) 最对应的命令。
第9题(单选题)
原题: 与dnf grouplist等价的命令语句为( )。
A. dnf group list
B. dnf list group
C. dnf install group
D. dnf group install
答案: A
解析:
DNF 中管理软件包组的命令通常使用 group
子命令。
dnf grouplist
(旧的YUM风格,DNF也兼容) 用于列出可用的和已安装的软件包组。- A.
dnf group list
: 这是DNF中标准的列出软件包组的命令格式。 - B.
dnf list group
: 不是标准的DNF语法。 - C.
dnf install group
: 尝试安装一个名为 “group” 的包。 - D.
dnf group install <group_name>
: 用于安装一个指定的软件包组。
因此,dnf group list
是与 dnf grouplist
等价的命令。
第5题(填空题)
原题: 能够解决软件安装的软件包的源和软件的依赖问题的服务器是( )。
答案: 软件仓库服务器 (或 YUM源服务器 / DNF源服务器 / repo服务器)
解析:
YUM (Yellowdog Updater, Modified) 和 DNF (Dandified YUM) 是基于RPM的Linux发行版中常用的软件包管理器。它们依赖于配置好的软件仓库(repository,简称repo)。软件仓库服务器上存储了大量的RPM软件包及其元数据(metadata),元数据中包含了软件包的依赖关系信息。当用户使用YUM或DNF安装软件时,它们会连接到这些服务器,下载所需的软件包,并自动解决依赖关系。