Writing Your Own Shell

博客围绕编写自己的Shell展开,但内容仅提示点击阅读原文,未提供更多关键信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

### CentOS 7 使用本地介质配置安装源 #### 创建本地源文件夹 为了使用本地介质作为安装源,首先需要创建一个用于存储挂载内容的文件夹。通常情况下,这个文件夹会被命名为 `/mnt/cdrom` 或者 `/iso` 来表示这是一个 ISO 文件或者光盘的内容挂载点[^1]。 ```bash mkdir -p /mnt/cdrom ``` #### 挂载镜像文件至指定目录 如果已经准备好了 CentOS 的 ISO 镜像文件,则可以将其挂载到之前创建的文件夹中。假设镜像文件名为 `CentOS-7-x86_64-DVD-2009.iso` 并位于当前用户的下载目录下: ```bash mount -o loop ~/Downloads/CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom/ ``` 对于物理光驱中的光盘,可以直接挂载设备路径: ```bash mount /dev/sr0 /mnt/cdrom/ ``` 此操作完成后,ISO 中的内容将会被映射到 `/mnt/cdrom/` 下面[^3]。 #### 备份默认 YUM 源 为了避免覆盖原有的网络 YUM 源,在修改前建议先对其进行备份。可以通过复制整个原始仓库配置文件夹来实现这一点: ```bash cp -a /etc/yum.repos.d/ /etc/yum.repos.d.backup/ ``` 接着删除掉不需要使用的远程在线源链接文件,仅保留自定义的部分。 #### 编写 Local.repo 文件 进入 YUM 软件包管理器读取的配置位置,并新建一个描述本地资源库的新文档——比如叫作 `local.repo`: ```bash vi /etc/yum.repos.d/local.repo ``` 向其中输入如下信息(注意替换实际路径): ``` [Local-CentOS] name=CentOS-$releasever - Media baseurl=file:///mnt/cdrom/AppStream file:///mnt/cdrom/BaseOS enabled=1 gpgcheck=1 gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-centosofficial ``` 上述片段指定了两个子目录分别对应应用流 (AppStream) 和基础操作系统组件(BaseOS)[^2]。 #### 加载本地源并验证其可用性 完成以上步骤之后刷新缓存数据以便让系统重新扫描新的软件仓库地址列表: ```bash yum clean all && yum makecache fast ``` 最后确认新加入的数据源已被正确识别出来: ```bash yum repolist enabled | grep 'Local' ``` 如果有返回结果表明成功启用了名称含有 “Local” 字样的条目即说明一切正常。 #### 自动化处理脚本样例 下面给出一段简单的 Bash Shell Script 实现自动化部署流程: ```bash #!/bin/bash # Step 1: Create Mount Point Directory If Not Exists Already. if [[ ! -e "/mnt/cdrom" ]]; then mkdir -pv /mnt/cdrom ; fi # Step 2: Attempt To Auto Detect And Attach Physical Optical Drive Content Or Use Predefined Path For Virtual Machines Instead. if lsblk |grep sr0 >/dev/null;then DEVICE="/dev/sr0";else read -rp "Please Enter Full Absolute File System Location Of Your Image:" IMAGE_PATH;DEVICE="loopback:${IMAGE_PATH}";fi mount ${DEVICE#/dev/*} /mnt/cdrom/ # Step 3: Backup Existing Repository Configurations Before Overwriting Them With New Ones Based On Current Setup Details Provided Above In This Guide Section About Writing Custom .repo Files Manually By Hand Using Text Editor Tools Such As Vim/Nano Etc... mv -v /etc/yum.repos.d/*.repo{,.bak} cat <<EOF>/etc/yum.repos.d/custom_local_source.repo [Custom_Local_Source] name=A Personalized Collection Of Packages Available Through My Own Defined Sources Inside The Machine Itself Without Needing Internet Connection At All Times! baseurl=file://$(pwd)/mnt/cdrom/{BaseOS,AppStream} enable=1 gpgcheck=0 EOF echo Done! Please Reboot Now To Apply Changes Permanently Across Sessions After Testing Everything Works Fine First Though.. ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值