Linux 附录二,实验一

1. 修改 yum 配置文件

第一步:Windows 与 Linux 虚拟机共享文件夹配置

① 目的: 让 Linux 能访问 Windows 指定目录的文件(如D:\qq)。

② 操作:

  • 打开 VMware,选中 Linux 虚拟机,点击 **"虚拟机"→"设置"。
  • 切换到 "选项"标签页,选择 "文件夹共享",设置为"总是启用"。
  • 点击 "添加",选择 Windows 需共享的目录(如D:\qq),完成后点击 "确定" 保存。
第二步:Linux 终端中访问 Windows 共享文件夹

前提:确保你已打开 Linux 系统(如文档中的 CentOS 7)的终端 ,且当前登录用户为root(文档中终端前缀为[root@localhost ~]#,若不是 root,可先执行 su - root切换为 root 权限,避免权限不足)。

① 进入虚拟机默认共享挂载目录

在 Linux 终端中输入以下命令,按回车键执行:

java 复制代码
cd /mnt/hgfs

该命令用于切换到虚拟机默认的 Windows 共享文件夹挂载路径,文档中明确此路径为 /mnt/hgfs,所有 Windows 端设置的共享文件夹都会在此路径下显示。

② 查看 Windows 共享的文件夹列表

输入以下命令,查看 /mnt/hgfs 目录下的 Windows 共享文件夹:

java 复制代码
ll

执行后可看到 Windows 端共享的文件夹,因你实际共享的 Windows 目录为 D:\qq,列表中会显示名为 qq 的文件夹(对应 Windows 端 D:\qq),文档中类似示例为显示 new 文件夹(对应 D:\new)。

③ 进入 Windows 共享文件夹

输入以下命令,进入上一步看到的 qq 共享文件夹(替换文档中示例的 new 文件夹):

java 复制代码
cd qq

此操作等同于访问 Windows 系统中的 D:\qq 目录,进入后即可操作该目录下的共享文件。

④ 查看共享文件夹内的文件(验证访问成功)

继续在终端中输入 ll 命令,查看 qq 文件夹内的文件(即 Windows 端 D:\qq 下的文件):

java 复制代码
ll
第三步:yum 源配置
① 进入 Yum 源配置文件目录

Yum 仓库的所有.repo格式配置文件,均存放在/etc/yum.repos.d/目录下,需先进入该目录才能进行后续修改。执行以下命令:

java 复制代码
cd /etc/yum.repos.d/
② 备份旧的CentOS-Base.repo文件

备份核心配置文件,防止新文件替换出错后,无法恢复原有仓库配置(属于 "容错保护" 的必备步骤)。执行以下命令:

java 复制代码
cp CentOS-Base.repo CentOS-Base.repo.bak

2. 实验一

步骤 1:安装 Samba 服务器
(1) 检测是否已安装 Samba

① 执行命令检测系统中是否存在 Samba 相关包:

复制代码
# rpm -qa | grep samba

注意是 rpm -qa( - 和 q 之间没有空格)

② 若输出类似以下版本信息(版本号可能因 CentOS 更新变化),说明已安装:

复制代码
samba-client-libs-4.10.4-11.el7_8.x86_64
samba-4.10.4-11.el7_8.x86_64
samba-libs-4.10.4-11.el7_8.x86_64

重启 Samba 服务:执行以下命令

复制代码
systemctl restart smb.service  # 或简化为 systemctl restart smb
(2) 创建 Samba 用户与用户组

① 创建maryjohnguest三个用户,并设置系统密码(密码输入时无明文显示,按提示输入即可):

复制代码
useradd mary    # 新建mary用户
passwd mary     # 设置mary的Linux系统密码
useradd john    # 新建john用户
passwd john     # 设置john的Linux系统密码
useradd guest   # 新建guest用户
passwd guest    # 设置guest的Linux系统密码

② 创建share用户组,将maryjohn加入该组(用于控制share共享目录的权限):

复制代码
groupadd share  # 新建share组
usermod -G share mary  # 将mary加入share组
usermod -G share john  # 将john加入share组

③ 将用户添加到 Samba 认证列表

Samba 需单独注册用户(即使已创建 Linux 用户,未添加到 Samba 列表仍无法访问),执行以下命令:

复制代码
smbpasswd -a mary  # 注册mary为Samba用户(按提示设置Samba密码,可与系统密码不同)
smbpasswd -a john  # 注册john为Samba用户
smbpasswd -a guest # 注册guest为Samba用户

注意:需要输入两次密码

(3) 创建共享目录并配置权限

① 创建共享目录:

复制代码
mkdir -p /home/share  # -p确保父目录不存在时自动创建

② 修改目录组属性 :将/home/share的所属组改为share组(确保maryjohn有权访问):

复制代码
chown :share /home/share  # 格式:chown 用户名:组名 目录

③ 设置目录权限 :赋予share组读写执行权限(770表示:所有者rwx、组用户rwx、其他用户---):

复制代码
chmod 770 /home/share

再次重启 Samba 服务:确保目录配置生效:

复制代码
systemctl restart smb
(4) 禁用 SELinux 与防火墙(关键!避免访问拦截)

① 禁用 SELinux, 永久禁用(重启后生效)

编辑 SELinux 配置文件/etc/selinux/config

复制代码
vi /etc/selinux/config

找到SELINUX=行,将值改为permissivedisabled(推荐permissive,保留日志但不拦截):

复制代码
SELINUX=permissive  # 原值可能为Enforcing
② 禁用 firewalld 防火墙

永久禁用(重启后不自动开启):

复制代码
systemctl disable firewalld.service
(5) 测试文件共享(Linux 客户端 + Windows 客户端)

① 查看 Samba 服务器共享列表

复制代码
smbclient -L //172.16.57.1 -U mary
  • 输入 mary 的 Samba 密码后,若能看到 homes(用户主目录共享)、tmp(匿名共享)、share(自定义组共享)等目录,说明共享配置成功。
相关推荐
神秘的土鸡1 小时前
Linux中使用Docker构建Nginx容器完整教程
linux·nginx·docker
i***51261 小时前
Failed to restart nginx.service Unit nginx.service not found
运维·nginx
Molesidy1 小时前
【Embedded Development】BootROM的详细分析以及Linux开发板的上电启动流程初步分析
linux
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [block]kyber-iosched
linux·笔记·学习
赖small强2 小时前
【Linux驱动开发】Linux dd 命令详解
linux·dd命令
neo_will_mvp2 小时前
IDC服务器故障排除思路
运维·服务器
8***84822 小时前
Nginx代理到https地址忽略证书验证配置
运维·nginx·https
傲世(C/C++,Linux)2 小时前
Linux系统编程——TCP客户端
linux·运维·tcp/ip