1. ホーム
  2. Qt

中国標準のKirin OSのyumソースの構成

2022-02-19 09:12:34

linuxシステムでは、パッケージ間の依存関係を解決することが重要なことです。パッケージがないために、おそらく多くの作業ができなくなり、あらゆる手段でそのパッケージを探そうとすると、現在のシステムと互換性がないことがわかります。ですから、ほとんどのパッケージをインストールして使えるようにするために、ソフトウェアリポジトリをシステムに追加することは、非常に重要なことの一つです。(プロテスト済み) <スパン 設定を行う前に、記事を読むことをお勧めします [... ソース変更後、全てのシステムソフトウェアをアップデートすることは推奨されない ]

実験環境です。

[1-06@localhost Desktop]$ uname -a
Linux localhost 4.4.13-200.nd7.3.x86_64 #1 SMP Sat Jul 8 23:22:12 CST 2017 x86_64 x86_64 x86_64 GNU/Linux

kylinソフトウェアのダウンロードコマンドは、yum installです。

fedora、Redhat、centos系に似ている。

kylin-netease 163の標準的なyumソースの構成を勝ち取る。

1. etc/yum/repos.d/ ディレクトリに移動します(このディレクトリには、yum リポジトリの設定ファイルが格納されます)。

[2-05@localhost yum.repos.d]$ cd /etc/yum.repos.d/
[2-05@localhost yum.repos.d]$ ls
neokylin.repo neokylin-updates.repo

2. 元のyumソースを削除する

[2-05@localhost yum.repos.d]$ rm -f *

3. vim エディターを使用して、新しい設定ファイルを作成します(ファイル名は任意ですが、接尾辞は .repo でなければなりません)。

[2-05@localhost yum.repos.d]$ sudo vim mirrors.163.com.repo

Configure the parameters:

[2-05@localhost yum.repos.d]$ cat mirrors.163.com.repo
[mirrors.163.com]
name=mirrors.163.com
baseurl=http://mirrors.163.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0

4. 設定が正しいことを確認する

[2-05@localhost yum.repos.d]$ yum repolist
Loaded plugins: langpacks
mirrors.163.com | 3.6 kB 00:00:00     
(1/2): mirrors.163.com/group_gz | 166 kB 00:00:00     
(2/2): mirrors.163.com/primary_db | 6.0 MB 00:00:01     
Source identifier Source name Status
mirrors.163.com mirrors.163.com 10,019
repolist: 10,019


5. Yumキャッシュを更新する

[root@localhost yum.repos.d]# yum list
[root@localhost yum.repos.d]# yum clean all 
[root@localhost yum.repos.d]# yum makecache

キリン・アリ・クラウド標準のyumソース設定を勝ち取る

1. オンラインでダウンロード[インターネット接続が必要

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

2. Centos-7.repoファイル内の$で始まる変数を置換します。

sed -i 's/$releasever/7/g' /etc/yum.repos.d/CentOS-Base.repo


3. yumキャッシュの更新

Clear the cache: yum clean all
Generate cache: yum makecache

キリン標準の勝利 - 公式yumソース設定

注意:OSが使用するソースはOS全体に影響する場合がありますので、公式ソースを使用する場合は、/etc/yum.repo.d/のソースファイルを以下のように設定します。/etc/yum.repo.d/フォルダに、neokylin.repoとneokylin-updates.repoという二つのファイルがあり、以下のように設定される。

neokylin.repo

[root@localhost yum.repos.d]# cat neokylin.repo 
[neokylin]
name= NeoKylin 7.0
baseurl=http://download.cs2c.com.cn/neokylin/desktop/releases/7.0/x86_64/zx/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-$basearch

[neokylin-32]
name= NeoKylin 7.0 32-bit
baseurl=http://download.cs2c.com.cn/neokylin/desktop/releases/7.0/i386/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-i386


neokylin-updates.repo

[root@localhost yum.repos.d]# cat neokylin-updates.repo 
[neokylin-updates]
name= NeoKylin 7.0 Updates
baseurl=http://download.cs2c.com.cn/neokylin/desktop/updates/7.0/x86_64/zx/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-$basearch

[neokylin-updates-32]
name= NeoKylin 7.0 Updates 32-bit
baseurl=http://download.cs2c.com.cn/neokylin/desktop/updates/7.0/i386/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-i386


<スパン 質問です。 私は32ビットと64ビットのyumソースの設定を含む公式のyumソースを設定しました、あなたはそれを使用する際にあなたの必要性に応じてyumソースを設定することができます。私はソフトウェアをインストールするときに多くのパッケージの依存関係の問題があるyumソース[公式のyumソース、163またはcentosソースはこの問題があります]を使用して、解決策は、次の記事で紹介されています。解決策は、以下の記事にあります。[依存パッケージの問題を解決するためにソフトウェアをインストールするためにNeoKylin-Live-Desktop-7.0-SDK-x86_64-B036-20160811.isoイメージを使用する方法を見つける下、それはまだテスト中です 】。

---> Package xml-commons-resolver.noarch 0:1.2-17.nd7.1 will be installed
--> Finished Dependency Resolution
Error: Package: 1:cups-1.7.5-13.nd7.4.x86_64 (neokylin)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
           Available: 1:dbus-libs-1.8.6-3.nd7.4.x86_64 (neokylin)
               libdbus-1.so.3(LIBDBUS_1_3)(64bit)
           Installed: 1:dbus-libs-1.8.20-1.nd7.1.x86_64 (@neokylin-updates-32/"7.0")
               Not found
           Available: 1:dbus-libs-1.8.6-3.nd7.1.i686 (neokylin-32)
               Not found
Error: Package: filezilla-3.8.1-3.nd7.7.x86_64 (neokylin)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
           Available: 1:dbus-libs-1.8.6-3.nd7.4.x86_64 (neokylin)
               libdbus-1.so.3(LIBDBUS_1_3)(64bit)
           Installed: 1:dbus-libs-1.8.20-1.nd7.1.x86_64 (@neokylin-updates-32/"7.0")
               Not found
           Available: 1:dbus-libs-1.8.6-3.nd7.1.i686 (neokylin-32)
               Not found
Error: Package: caja-1.8.2-1.nd7.105.x86_64 (neokylin-updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
           Available: 1:dbus-libs-1.8.6-3.nd7.4.x86_64 (neokylin)
               libdbus-1.so.3(LIBDBUS_1_3)(64bit)
           Installed: 1:dbus-libs-1.8.20-1.nd7.1.x86_64 (@neokylin-updates-32/"7.0")
               Not found
           Available: 1:dbus-libs-1.8.6-3.nd7.1.i686 (neokylin-32)
               Not found



PS:この記事は継続的に更新され、中国標準のキリンOSのソフトウェアのインストールに関する様々な問題を解決するために専用に、貴重なアドバイスを与えるためにすべての神を歓迎します[インストール問題のみ

2019-09-15

何度も投げて、ようやくyum updateが動くようになった

1. 実験環境です。

[root@root01 ~]# cat /etc/issue
NeoKylin Linux Desktop release 7.0 (zhaoxin)
Kernel \r on an \m (\l)

[root@root01 ~]# uname -a
Linux root01 4.4.13-200.nd7.3.x86_64 #1 SMP Sat Jul 8 23:22:12 CST 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@root01 ~]# 


2. 公式のyumソースです。

[root@root01 ~]# cd /etc/yum.repos.d/

[root@root01 yum.repos.d]# ls
neokylin.repo neokylin-updates.repo

[root@root01 yum.repos.d]# cat neokylin*

[neokylin]
name= NeoKylin 7.0
baseurl=http://download.cs2c.com.cn/neokylin/desktop/releases/7.0/x86_64/zx/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-$basearch


[neokylin-updates]
name= NeoKylin 7.0 Updates
baseurl=http://download.cs2c.com.cn/neokylin/desktop/updates/7.0/x86_64/zx/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neokylin-$basearch



3. エラーメッセージと解決方法。

[root@root01 yum.repos.d]# yum -y update --skip-broken
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package PackageKit.x86_64 0:1.0.10-1.nd7.3 will be updated
。。。。。。

Error: Multilib version problems found. This often means that the root
       cause is something else and multilib version checking is just
       This often means that the root cause is something else and multilib version checking is just pointing out that there is a problem:
       
         You have an upgrade for gtk3 which is missing some
            Yum is trying to
            solve this by installing an older version of gtk3 of the
            If you exclude the bad architecture
            yum will tell you what the root cause is (which package
            If you exclude the bad architecture yum will tell you what the root cause is (which package requires what). You can try redoing the upgrade with
            --exclude gtk3.otherarch ... This should give you an error
            This should give you an error message showing the root cause of the problem.
       
         2. You have multiple architectures of gtk3 installed, but
            yum can only see an upgrade for one of those architectures.
            If you don't want/need both architectures anymore then you
            can remove the one with the missing update and everything
            You have duplicate versions of the architectures.
       
         You have duplicate versions of gtk3 installed already.
            You can use "yum check" to get yum show these errors.
       
       ... . you can also use --setopt=protected_multilib=false to remove
       this checking, however this is almost never the correct thing to
       do as something else is very likely to go wrong (often causing
       much more problems).
       
       Protected multilib versions: gtk3-3.22.10-5.nd7.1.x86_64 ! = gtk3-3.14.15-1.nd7.2.x86_64


[root@root01 yum.repos.d]# yum install gtk3
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package gtk3.x86_64 0:3.14.15-1.nd7.2 will be updated


[root@root01 yum.repos.d]# yum -y update --skip-broken
。。。。。。 Successfully executed the update command
Replaced:
  PackageKit-cached-metadata.x86_64 0:1.0.10-1.nd7.3                                 
  libertas-usb8388-firmware.noarch 2:20150904-56.git6ebf5d57.nd7.1                   
  xorg-x11-drv-modesetting.x86_64 0:0.9.0-2.nd7.1                                    

Complete!


説明します。yum update 中に、解決できないいくつかのインストーラ依存性の問題が常に存在するため、プロンプトコマンドを実行します。

この問題を回避するために、-skip-brokenを使用してみてください。
 rpm -Va --nofiles --nodigest を実行してみてください。

上記のgtk3で表示されます、gtk3を再インストールしたら、パッケージの依存問題が解決しました、依存問題の原因は現在調査中です、専門家の皆様のご指導をお願いします。

ps: 今日、centos7を実行すると、yum updateでもパッケージの依存性の問題が発生し、以下のようなエラーメッセージが表示されました。

Error: Package: nettle-3.2-2.el6.x86_64 (epel)
           Requires: libgmp.so.3()(64bit)
Error: Package: gnutls-3.3.26-9.el7.x86_64 (base)
           Requires: libnettle.so.4()(64bit)
           Removing: nettle-2.7.1-4.el7.x86_64 (installed)
               libnettle.so.4()(64bit)
           Updated By: nettle-3.2-2.el6.x86_64 (epel)
              ~libnettle.so.6()(64bit)
           Available: nettle-2.7.1-8.el7.x86_64 (base)
               libnettle.so.4()(64bit)
Error: Package: gnutls-3.3.26-9.el7.x86_64 (base)


これはEPELのバージョンが間違っているためで、以下のコマンドを順番に実行すればOKです。

yum remove epel-release
yum --enablerepo=extras install epel-release
yum clean all

yum、apt-get、rpmなどのソフトウェア管理ツールについては、後日、その原理を説明できるように、国内のソフトウェアやオープンソースのために少しでも役に立てればと思い、少しずつ探っています。

2020-06-29

CSC Kirin OSからリリースされたOSの最新版は、前バージョンに比べてlinuxカーネルが下がり、yumツールは前バージョンより少し使いやすくなりましたが、公式ソフトウェアソースはまだ改善する必要があります。

実験環境です。

[neokylin@localhost Desktop]$ uname -a
Linux localhost.localdomain 3.10.0-862.9.1.nd7.zx.18.x86_64 #1 SMP Tue Nov 12 09:16:38 CST 2019 x86_64 x86_64 x86_64 x86_64 GNU/Linux


<イグ

1. キリン公式ソースを獲得

公式ソースを使わなかったので、新たに /etc/yum.repos.d/neokylin/ フォルダに入れました

2. キリンのサードパーティソースの設定を勝ち取る

centosで使用できる公式およびサードパーティのソースは、理論的にはCSP Kirinでも使用できますが、やはりサードパーティのソースは、非公式のソフトウェアや依存関係の使用によるシステムクラッシュがよく見られるため、注意が必要です。

Centosソースの構成

上記をご参照ください。 キリン・アリ・クラウド標準のyumソース設定を勝ち取る ;です。 キリン・ネットイース163のyumソース構成を落札

エルレポ ソースコンフィギュレーション

ElRepoは、LinuxとCentOSのOSのソフトウェアのインストールとアップグレードをサポートする、Linux専用の海外のサードパーティ製フリーソフトウェアレポジトリで、国内で利用可能です。以下の構成は、上記の実験環境のみのものです。

1. 鍵のインポート

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

2. ElRepoのインストール

コマンドインストールはいつも問題があります、ここではインストールを行います。

yum install https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

上記のyumが成功した場合、以下のアドバイスは無視して構いません。

提案:elrepo.repoファイルを作成し、そのファイルに###で始まる以下をコピーし、更新するだけです。

[neokylin@localhost yum.repos.d]$ cat elrepo.repo 
### Name: ELRepo.org Community Enterprise Linux Repository for el7
### URL: http://elrepo.org/

[elrepo]
name=ELRepo.org Community Enterprise Linux Repository - el7
baseurl=http://elrepo.org/linux/elrepo/el7/$basearch/
	http://mirrors.coreix.net/elrepo/elrepo/el7/$basearch/
	http://mirror.rackspace.com/elrepo/elrepo/el7/$basearch/
	http://repos.lax-noc.com/elrepo/elrepo/el7/$basearch/
	http://mirror.ventraip.net.au/elrepo/elrepo/el7/$basearch/
mirrorlist=http://mirrors.elrepo.org/mirrors-elrepo.el7
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0

[elrepo-testing]
name=ELRepo.org Community Enterprise Linux Testing Repository - el7
baseurl=http://elrepo.org/linux/testing/el7/$basearch/
	http://mirrors.coreix.net/elrepo/testing/el7/$basearch/
	http://mirror.rackspace.com/elrepo/testing/el7/$basearch/
	http://repos.lax-noc.com/elrepo/testing/el7/$basearch/
	http://mirror.ventraip.net.au/elrepo/testing/el7/$basearch/
mirrorlist=http://mirrors.elrepo.org/mirrors-elrepo-testing.el7
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0

[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository - el7
baseurl=http://elrepo.org/linux/kernel/el7/$basearch/
	http://mirrors.coreix.net/elrepo/kernel/el7/$basearch/
	http://mirror.rackspace.com/elrepo/kernel/el7/$basearch/
	http://repos.lax-noc.com/elrepo/kernel/el7/$basearch/
	http://mirror.ventraip.net.au/elrepo/kernel/el7/$basearch/
mirrorlist=http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0

[elrepo-extras]
name=ELRepo.org Community Enterprise Linux Extras Repository - el7
baseurl=http://elrepo.org/linux/extras/el7/$basearch/
	http://mirrors.coreix.net/elrepo/extras/el7/$basearch/
	http://mirror.rackspace.com/elrepo/extras/el7/$basearch/
	http://repos.lax-noc.com/elrepo/extras/el7/$basearch/
	http://mirror.ventraip.net.au/elrepo/extras/el7/$basearch/
mirrorlist=http://mirrors.elrepo.org/mirrors-elrepo-extras.el7
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0


エペルソースの構成

EPEL (Extra Packages for Enterprise Linux)は、Fedora Special Interest Groupによって管理されているEnterprise Linux (RHEL、CentOS)で頻繁に使用されるパッケージです。

1. 新しいレポを /etc/yum.repos.d/ にダウンロードする。

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo


2021-09-22

すべてのコメントに回答する時間とエネルギーには限りがあるため、コメント欄の質問に対する私の回答を以下のようにまとめます。

1. CPUについて

        CPUはアーキテクチャと命令セットに依存し、より高い効率を達成するためにCPUは常に更新されています(ビット数、コア数、統合GPU、その他の機能)。異なるアーキテクチャのCPUは異なる世代環境に適応し、異なる命令セットを使用しますが、命令セットの互換性がある場合もあります。

2. オペレーティングシステム

        オペレーティングシステムのカーネルもアーキテクチャを区別している

        i386のCPUにx86_64のOSイメージをインストールした場合、どうなりますか?互換性の問題が発生し、インストールに失敗します。

3. アプリケーション層ソフトウェア(一番言いたいこと)

        OSカーネルは、x86_64, ppc64, aarch64, s390xなど、確実にアーキテクチャを区別しており、異なるアーキテクチャは確実にターゲットカーネルをコンパイルして動作させています(互換性のあるものを除く)。上位層のソフトウェアは、アーキテクチャに関連するものと関連しないものに分けられ、アーキテクチャに関連するものは異なるアーキテクチャ用に別々にコンパイルする必要がある(上記の通り)、一部のドキュメントやpythonなどの高級言語で書かれた単純なソフトウェアなどのアーキテクチャに関連しないソフトウェアは、一度コンパイルすればどこでも動くようにすることができる。 32ビットプロセッサに64ビットシステムをインストールできますか?x86とx64の両方のバージョンを持つプロセッサーはありますか?- 知っている

rpmパッケージのファイル名には、ソフトウェア名、バージョン情報だけでなく、適用されるハードウェアアーキテクチャの情報も含まれています。
i386 は、このパッケージが Intel 80386 以降の x86 アーキテクチャーのコンピュータ (AI32) 用であることを意味します i686 は、このパッケージが Intel 80686 以降 (Pentium pro 以降) の x86 アーキテクチャーのコンピュータ (IA32) 用であることを意味します。
noarch は、このパッケージがハードウェアアーキテクチャに依存せず、汎用的に使用できることを意味します。
i686 パッケージは通常 CPU 向けに最適化されており、一般的な構成のマシンで利用できるようになりました。

<スパン バイナリにコンパイルされたrpmパッケージの場合、OS環境が異なるため、一般的に混在させることはできません。src.rpm として配布されているパッケージの場合、インストール時にローカルでコンパイルする必要があるため、通常は異なるシステムでインストールすることができます。

RPM パッケージ管理とハードウェアアーキテクチャの問題_郑陆伟先生_新浪博客。

        この記事で使用している実験環境は、x86_64アーキテクチャのNeoKylinオペレーティングシステムです(私もシステムイメージを持っていないので、NeoKylinに連絡して利用を依頼してください)。

NeoKylinデスクトップ版の公式ソースです。

neokylin/desktop/releases/7.0 のインデックスです。

サードパーティのソースを設定する際には、OSのアーキテクチャに注意し、それに対応したパッケージかnoarchパッケージを選択してください。

        CPU、OS、アプリケーション層ソフトウェアのアーキテクチャについては、後日詳しく説明する予定ですので、お気軽に追加してください!!。