麒麟服务器操作系统搭建内网仓库源并同步公网源

内部的服务器一般是不通互联网的,挂载本地光盘源,又不能下载最新的软件包,这使得内网使用yum或dnf安装软件变得非常麻烦。如果能在本地部署一个镜像源,那就能很好的解决这个问题,同步的时候链接互联网,同步完成后断开互联网,给内部的其他服务器提供最新yum源。

我这边使用的系统环境为,麒麟V10-SP1_x86,其他麒麟V10系列的操作系统步骤也基本相同。

一、首次搭建

  1. 安装所需软件包
yum -y install httpd reposync createrepo
  1. 修改/etc/yum.repo.d/下的xxxx.repo文件(修改前先备份旧的配置)需要同步什么版本的系统,就把这个系统的公网yum源配置文件放在这里,然后把$basearch修改为需要拉取镜像源的架构,例如:x86_64、aarch64、loongarch64。以v10-sp3 x86镜像源为例,参考配置文件如下
###Kylin Linux Advanced Server 10 - os repo###

[ks10-adv-os]
name = Kylin Linux Advanced Server 10 - Os
baseurl = https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/base/x86_64/
gpgcheck = 0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1

[ks10-adv-updates]
name = Kylin Linux Advanced Server 10 - Updates
baseurl = https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/x86_64/
gpgcheck = 0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1

修改完成后刷新缓存

yum clean all
yum makecache
  1. 拉取在线源到本地
# 新建仓库存储目录
mkdir -p /data/repo/V10-SP3-x86

# 开始同步
reposync -m -p /data/repo/V10-SP3-x86/
  1. 创建本地仓库并创建组信息
cd /data/repo/V10-SP3-x86/
createrepo -g ks10-adv-os/comps.xml .
  1. 配置httpd服务
# 链接仓库文件
ln -s /data/repo/V10-SP3-x86/ /var/www/html/repo/V10-SP3-x86

# 开启httpd服务
systemctl start httpd
systemctl enable httpd

# 添加防火墙策略
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --reload
  1. 浏览器访问仓库源地址,确认web服务能正常访问
    http://SERVER_IP/repo/V10-SP3-x86

二、后期再次同步

基于第一部分的搭建环境,后续如果需要再次同步仓库,可以按照如下步骤操作

  1. 确保目前/etc/yum.repo.d/下的xxxx.repo仓库文件配置的是需要同步外网仓库的地址和架构,配置完成后执行命令
yum clean all
yum makecache
  1. 使用命令yum repolist列出可同步的repo id
[root@localhost V10-SP3-x86]# yum repolist
repo id                     repo name
ks10-adv-os                 Kylin Linux Advanced Server 10 - Os
ks10-adv-updates            Kylin Linux Advanced Server 10 - Updates
  1. 同步仓库,全量同步、部分同步选择一种即可
  • 全量同步:
reposync -m -p /data/repo/V10-SP3-x86/
  • 部分同步
    例如:选择ks10-adv-os
reposync --repoid ks10-adv-os -p /data/repo/V10-SP3-x86/
  1. 刷新本地仓库
cd /data/repo/V10-SP3-x86/
createrepo -g ks10-adv-os/comps.xml .

三、 客户端配置方法

  1. 备份原yum配置文件
cd /etc/yum.repos.d/
mv kylin_x86_64.repo kylin_x86_64.repo.bak
  1. 创建新的仓库配置文件vi /etc/yum.repos.d/kylin_x86_64_localnet.repo,添加如下配置:(替换SERVER_IP)
[ks10-adv-local-net]
name = Kylin Linux Advanced Server 10 - local network repo
baseurl = http://SERVER_IP/repo/V10-SP3-x86/
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylin
enabled = 1
  1. 修改完成后刷新缓存
yum clean all
yum makecache

在这里插入图片描述
4. 验证可用性,能加载出来组列表,说明该内网源可以正常使用

yum grouplist

在这里插入图片描述

<think>好的,我现在需要帮助用户解决在麒麟操作系统上开发本地应用程序的问题。首先,用户已经提供了一些相关的引用内容,我需要仔细阅读这些引用内容,提取有用的信息来构建回答。 首先,引用[1]提到麒麟操作系统支持大多数开软件和工具,包括Python和Flask,给出了安装Python和pip的步骤。这说明使用Python进行开发是可行的。引用[2]则建议用户如果对Linux不熟悉,可以尝试使用简单的发行版,比如Ubuntu,或者在虚拟机中运行。这可能意味着在麒麟系统上开发与其他Linux发行版类似,用户可以借鉴通用的Linux开发经验。引用[3]提到跨平台开发工具的选择,这可能涉及到Qt或其他框架。引用[4]提到在麒麟服务器上安装MATLAB的Linux版本,说明专业软件的支持情况。引用[5]强调了麒麟的开性和社区支持,这对开发者来说是资。 接下来,我需要根据这些信息,组织一个结构清晰的回答。用户需要的是开发本地应用程序的方法或教程,可能涉及编程语言选择、环境配置、工具使用等步骤。考虑到麒麟是基于Linux的,应该与其他Linux发行版类似,但可能需要特定的适配或工具。 第一步应该是安装开发环境,比如Python、C/C++编译器、Java等,这里引用[1]提到了Python和pip的安装,可以作为例子。第二步可能是选择开发工具,比如Qt Creator或VS Code,这些在Linux上常用。第三步是编写代码,引用[1]中的Flask示例可以作为参考,但用户需要的是本地应用,可能需要图形界面,比如GTK或Qt。第四步是构建和调试,需要用到make、gdb等工具。第五步是打包发布,使用deb或rpm包,麒麟可能基于Debian或Red Hat系,需要确认。 另外,引用[5]提到开社区的支持,可以建议用户参与社区获取资。可能还需要提到跨平台开发工具,如Qt,如引用[3]所述,或者使用Web技术如Electron。同时,引用[4]提到的MATLAB安装说明专业软件的支持,但用户的问题更偏向通用应用开发,可能不需要深入这一点。 需要考虑用户可能的后续问题,比如如何调试、打包工具的具体使用,或者麒麟特有的配置。因此,在相关问题部分,可以列出跨平台开发、GUI框架选择、打包工具、调试方法、社区资等。 现在需要确保回答符合系统级指令:使用正确的中文,数学公式的格式(但这个问题可能不涉及数学公式),结构清晰,引用标识正确。例如,在提到安装Python时引用[1],提到开社区引用[5],提到跨平台工具引用[3]。 可能还需要检查是否有遗漏的信息,比如是否麒麟有特定的SDK或开发工具,但根据提供的引用,没有提到,所以可能无法包含。需要根据现有引用构建回答,不添加未提及的信息。 最后,生成的相关问题需要围绕开发环境、工具选择、优化、打包、社区资等,确保问题有针对性,基于引用内容。</think>以下是在麒麟操作系统上进行本地应用程序开发的指南,结合系统特性和开发工具进行分步说明: ### 一、开发环境搭建 1. **安装基础编译工具链** 麒麟操作系统支持标准Linux开发工具链,通过终端执行: ```bash sudo apt-get install build-essential cmake gdb ``` (适用于基于Debian的麒麟版本,其他分支可使用`yum`命令[^1]) 2. **选择编程语言环境** - **Python开发**: 通过系统仓库安装Python3和包管理工具: ```bash sudo apt-get install python3 python3-pip ``` 引用[1]中的Flask示例可直接运行 - **C/C++开发**: 使用预装的GCC编译器,验证版本: ```bash gcc --version ``` ### 二、开发工具选择 1. **GUI应用开发框架** - **Qt Creator**:支持跨平台GUI开发 ```bash sudo apt-get install qtcreator qt5-default ``` - **GTK+**:GNOME桌面标准工具包 ```bash sudo apt-get install libgtk-3-dev ``` 2. **IDE配置** 推荐使用VS Code(支持ARM/龙芯架构): ```bash sudo snap install --classic code ``` ### 三、开发流程示例(以Qt为例) 1. 创建基础窗口程序 ```cpp #include <QApplication> #include <QLabel> int main(int argc, char *argv[]) { QApplication app(argc, argv); QLabel label("麒麟原生应用示例"); label.show(); return app.exec(); } ``` 2. 编译与运行 ```bash qmake -project && qmake && make ./项目名称 ``` ### 四、高级特性支持 1. **系统服务集成** 可通过DBus接口调用系统功能: ```python import dbus bus = dbus.SystemBus() notify = bus.get_object('org.freedesktop.Notifications','/org/freedesktop/Notifications') ``` 2. **国产硬件适配** 针对龙芯/飞腾平台编译时添加优化参数: ```bash CFLAGS="-march=loongson3a -mtune=loongson3a" ./configure ``` ### 五、部署与分发 1. 打包为DEB安装包 创建标准目录结构: ``` myapp_1.0-1/ ├── DEBIAN/ │ └── control └── usr/ └── local/ └── bin/ └── myapp ``` 2. 生成安装包: ```bash dpkg-deb --build myapp_1.0-1 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会飞的果粒橙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值