部署DNF仓库及NFS共享服务

一  配置DNF

1.DNF配置文件

配置文件路径

/etc/dnf/dnf.conf

文件结构

[main]
cachedir=/var/cache/dnf
keepcache=0
debuglevel=2
logfile=/var/log/dnf.log
...

2.配置mian部分

常用配置参数:

参数 说明
cachedir 缓存目录(默认:/var/cache/dnf
keepcache 保留已安装的 RPM 包(0:不保留,1:保留)
debuglevel 日志详细程度(0-10,默认 2)
logfile 日志文件路径
gpgcheck 是否验证 GPG 签名(0:禁用,1:启用)
installonly_limit 保留的内核版本数量(默认 3)

3.配置repository部分

软件源配置文件路径

/etc/yum.repos.d/

示例(CentOS Stream 9 BaseOS):

[baseos]
name=CentOS Stream 9 - BaseOS
baseurl=https://mirror.centos.org/centos/9-stream/BaseOS/$basearch/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

关键参数说明

  • name:软件源名称
  • baseurl:软件源地址(支持 HTTP/HTTPS/ftp/file)
  • enabled:是否启用(0:禁用,1:启用)
  • gpgcheck:是否验证包签名
  • gpgkey:GPG 公钥文件路径

4.创建本地软件源仓库

  1. 安装工具

bash

sudo dnf install createrepo_c

  1. 创建仓库目录

bash

sudo mkdir -p /var/local/repo

  1. 复制 RPM 包到仓库

bash

sudo cp /path/to/*.rpm /var/local/repo/

  1. 生成仓库元数据

bash

sudo createrepo -v /var/local/repo

5.添加  启用和禁止软件源

1. 添加新软件源
  • 方法 1:直接创建 .repo 文件

    bash

    sudo vi /etc/yum.repos.d/local.repo
    
     

    内容示例:

    ini

    [local]
    name=Local Repository
    baseurl=file:///var/local/repo
    enabled=1
    gpgcheck=0
    
  • 方法 2:使用 dnf config-manager

    bash

    sudo dnf config-manager --add-repo=http://example.com/repo.repo
    
2. 启用 / 禁用软件源

bash

# 启用
sudo dnf config-manager --enable 

# 禁用
sudo dnf config-manager --disable 
3. 验证软件源

bash

sudo dnf repolist

二  管理软件包

常用命令速查表

操作 命令示例
安装 sudo dnf install package
更新 sudo dnf update
卸载 sudo dnf remove package
搜索 dnf search keyword
查看信息 dnf info package
列出依赖 dnf deplist package
清理缓存 sudo dnf clean all
回滚事务 sudo dnf history rollback ID

三  管理软件包组

常用命令速查表

操作 命令示例
列出所有组 dnf group list --all
安装组 sudo dnf group install "组名称"
卸载组 sudo dnf group remove "组名称"
更新组 sudo dnf group update "组名称"
查看组内容 dnf group info "组名称"
标记组状态 sudo dnf group mark install "组名称"
修复组依赖 dnf resolve --group "组名称"

四  检查更新

常用命令速查表

操作 命令示例
检查所有更新 sudo dnf check-update
检查特定包 sudo dnf check-update
查看更新详情 dnf info
清理缓存 sudo dnf clean all
自动更新 sudo dnf-automatic --apply
回滚更新 sudo dnf history rollback
查看仓库状态 dnf repolist
强制更新 sudo dnf update --allowerasing

五  NFS共享存储服务

常用命令速查表

操作 命令示例
启动 NFS 服务 sudo systemctl start nfs-server
查看共享目录 showmount -e
挂载 NFS 共享 sudo mount -t nfs :/path /mnt
刷新共享配置 sudo exportfs -ra
检查 NFS 状态 sudo rpcinfo -p
卸载 NFS 挂载 sudo umount /mnt/nfs

1.使用NFS发布共享资源

(1)安装nfs-utils;rpcbind 软件包

sudo dnf install nfs-utils rpcbind

(2)设置共享目录

sudo mkdir -p /data/nfs_share
sudo chown -R nfsnobody:nfsnobody /data/nfs_share
sudo chmod 777 /data/nfs_share

(3)启动NFS服务程序

sudo systemctl start rpcbind
sudo systemctl start nfs-server
sudo systemctl enable rpcbind
sudo systemctl enable nfs-server

(4)查看本机发布的NFS共享目录

sudo exportfs -v

2.在客户机中访问NFS共享资源

(1)安装并启动rpcbind

NFS 依赖 RPC 服务进行通信,需确保客户机已安装并运行rpcbind

bash

# 安装rpcbind(CentOS/RHEL系)
sudo dnf install rpcbind

# 启动服务并设置开机自启
sudo systemctl start rpcbind
sudo systemctl enable rpcbind

(2)手动挂载NFS共享目录

基础挂载命令

bash

# 语法:mount -t nfs [服务端IP]:[共享路径] [本地挂载点]
sudo mount -t nfs 192.168.1.100:/data/nfs_share /mnt/nfs

验证挂载

bash

# 查看挂载状态
df -h

# 检查NFS共享列表(可选)
showmount -e 192.168.1.100

(3)fstab自动挂载设置

编辑 fstab 文件

bash

sudo vi /etc/fstab

添加以下内容(根据实际环境调整):

ini

192.168.1.100:/data/nfs_share /mnt/nfs nfs defaults,vers=4.2,proto=tcp 0 0

(4)强制卸载NFS

普通卸载

bash

sudo umount /mnt/nfs

强制卸载(当挂载点忙碌时)

bash

sudo umount -f /mnt/nfs  # 强制终止占用进程

你可能感兴趣的:(linux,运维,服务器)