gitコマンドをLinuxで使おうとインストールしてみる事にしました。環境はCentOS 7系列
★Intel Mac(x86)のmacOS 12のVirtualBOX(仮想環境)でLinux(CentOS 7)のインストールからサーバー環境構築(2022年11月08日 (火曜日))
詳細に言いますと
cat /etc/redhat-release
の結果は
CentOS Linux release 7.9.2009 (Core)
です。
ちなみにWindows 11のWSL環境
★HP Pavilion Aero 13-be1000(Windows 11 Pro)にWSL2とDocker Desktop(Ver 4.16.2) をインストールしてみた(2023年01月25日 (水曜日))
こちらの方の環境には入っておりました。
git --version
とすると
git version 2.34.1
でした。
ただ使いたい方の環境はLinux(CentOS 7)の方でございまして。
まずは環境確認。
git --version
とすると
-bash: git: コマンドが見つかりません
となります。インストールされてません。
*古いgitがインストールされていたら
└sudo yum remove git が必要です。
じゃあ
yum install git
でいいのかな?と思ったらCentOS 7だとgit 1.8系がインストールされるとの事。
ではVer2系列インストールする為には?とググると
★【2021年確認済み】centos7系にgit2系をインストールする(依存関係エラー解消版) | きなこもちエクステンド!
★CentOS7にGit2系をyumでインストール - Qiita
こちらが紹介されました。ちなみにMicrosoftのチャットで聞いても上記サイトが紹介されました。あとは
★CentOS7.x::Git最新版2.4xをインストール!
こちらも参考にしました。
CentOS 7系列にgit Ver 2系列インストールするにはサードパーティリポジトリを利用する必要があるらしい。
それが
★IUS - Setup
こちらに書いてある
yum install \
https://repo.ius.io/ius-release-el7.rpm \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
をコピペしてターミナルに貼り付けて実行。
読み込んだプラグイン:fastestmirror, product-id, search-disabled-repos, subscription-
: managerThis system is not registered with an entitlement server. You can use subscription-manager to register.
ius-release-el7.rpm | 8.2 kB 00:00
/var/tmp/yum-root-Ws9Y_R/ius-release-el7.rpm を調べています: ius-release-2-1.el7.ius.noarch
/var/tmp/yum-root-Ws9Y_R/ius-release-el7.rpm をインストール済みとして設定してい ます
epel-release-latest-7.noarch.rpm | 15 kB 00:00
/var/tmp/yum-root-Ws9Y_R/epel-release-latest-7.noarch.rpm を調べています: epel-release-7-14.noarch
/var/tmp/yum-root-Ws9Y_R/epel-release-latest-7.noarch.rpm をインストール済みとして設定しています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ epel-release.noarch 0:7-14 を インストール
---> パッケージ ius-release.noarch 0:2-1.el7.ius を インストール
--> 依存性解決を終了しました。依存性を解決しました
================================================================================
Package アーキテクチャー
バージョン リポジトリー 容量
================================================================================
インストール中:
epel-release noarch 7-14 /epel-release-latest-7.noarch 25 k
ius-release noarch 2-1.el7.ius /ius-release-el7 4.5 kトランザクションの要約
================================================================================
インストール 2 パッケージ合計容量: 30 k
インストール容量: 30 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : epel-release-7-14.noarch 1/2
インストール中 : ius-release-2-1.el7.ius.noarch 2/2
検証中 : epel-release-7-14.noarch 1/2
検証中 : ius-release-2-1.el7.ius.noarch 2/2
base/7/x86_64 | 3.6 kB 00:00
docker-ce-stable/7/x86_64 | 3.5 kB 00:00
docker-ce-stable/7/x86_64/primary_db | 102 kB 00:00
extras/7/x86_64 | 2.9 kB 00:00
updates/7/x86_64 | 2.9 kB 00:00
updates/7/x86_64/primary_db | 20 MB 00:01インストール:
epel-release.noarch 0:7-14 ius-release.noarch 0:2-1.el7.ius完了しました!
この設定が終わったらgitをインストール。
sudo yum install git --enablerepo=ius --disablerepo=base,epel,extras,updates
読み込んだプラグイン:fastestmirror, product-id, search-disabled-repos, subscription-
: managerThis system is not registered with an entitlement server. You can use subscription-manager to register.
ius-release-el7.rpm | 8.2 kB 00:00
/var/tmp/yum-root-Ws9Y_R/ius-release-el7.rpm を調べています: ius-release-2-1.el7.ius.noarch
/var/tmp/yum-root-Ws9Y_R/ius-release-el7.rpm をインストール済みとして設定してい ます
epel-release-latest-7.noarch.rpm | 15 kB 00:00
/var/tmp/yum-root-Ws9Y_R/epel-release-latest-7.noarch.rpm を調べています: epel-release-7-14.noarch
/var/tmp/yum-root-Ws9Y_R/epel-release-latest-7.noarch.rpm をインストール済みとして設定しています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ epel-release.noarch 0:7-14 を インストール
---> パッケージ ius-release.noarch 0:2-1.el7.ius を インストール
--> 依存性解決を終了しました。依存性を解決しました
================================================================================
Package アーキテクチャー
バージョン リポジトリー 容量
================================================================================
インストール中:
epel-release noarch 7-14 /epel-release-latest-7.noarch 25 k
ius-release noarch 2-1.el7.ius /ius-release-el7 4.5 kトランザクションの要約
================================================================================
インストール 2 パッケージ合計容量: 30 k
インストール容量: 30 k
Is this ok [y/d/N]: yDownloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : epel-release-7-14.noarch 1/2
インストール中 : ius-release-2-1.el7.ius.noarch 2/2
検証中 : epel-release-7-14.noarch 1/2
検証中 : ius-release-2-1.el7.ius.noarch 2/2
base/7/x86_64 | 3.6 kB 00:00
docker-ce-stable/7/x86_64 | 3.5 kB 00:00
docker-ce-stable/7/x86_64/primary_db | 102 kB 00:00
extras/7/x86_64 | 2.9 kB 00:00
updates/7/x86_64 | 2.9 kB 00:00
updates/7/x86_64/primary_db | 20 MB 00:01インストール:
epel-release.noarch 0:7-14 ius-release.noarch 0:2-1.el7.ius完了しました!
sudo yum install git --enablerepo=ius --disablerepo=base,epel,extras,updates
を実行。
読み込んだプラグイン:fastestmirror, product-id, search-disabled-repos, subscription-
: managerThis system is not registered with an entitlement server. You can use subscription-manager to register.
Determining fastest mirrors
ius | 1.3 kB 00:00
ius/x86_64/primary | 44 kB 00:00
ius 194/194
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ git236.x86_64 0:2.36.5-1.el7.ius を インストール
--> 依存性の処理をしています: perl-Git = 2.36.5-1.el7.ius のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: git-core-doc = 2.36.5-1.el7.ius のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: git-core = 2.36.5-1.el7.ius のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: emacs-filesystem >= 24.3 のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: perl(Term::ReadKey) のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: perl(Git::I18N) のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: perl(Git) のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ git236.x86_64 0:2.36.5-1.el7.ius を インストール
--> 依存性の処理をしています: emacs-filesystem >= 24.3 のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: perl(Term::ReadKey) のパッケージ: git236-2.36.5-1.el7.ius.x86_64
---> パッケージ git236-core.x86_64 0:2.36.5-1.el7.ius を インストール
--> 依存性の処理をしています: libpcre2-8.so.0()(64bit) のパッケージ: git236-core-2.36.5-1.el7.ius.x86_64
---> パッケージ git236-core-doc.noarch 0:2.36.5-1.el7.ius を インストール
---> パッケージ git236-perl-Git.noarch 0:2.36.5-1.el7.ius を インストール
--> 依存性の処理をしています: perl(Error) のパッケージ: git236-perl-Git-2.36.5-1.el7.ius.noarch
--> 依存性解決を終了しました。
エラー: パッケージ: git236-2.36.5-1.el7.ius.x86_64 (ius)
要求: perl(Term::ReadKey)
エラー: パッケージ: git236-2.36.5-1.el7.ius.x86_64 (ius)
要求: emacs-filesystem >= 24.3
エラー: パッケージ: git236-perl-Git-2.36.5-1.el7.ius.noarch (ius)
要求: perl(Error)
エラー: パッケージ: git236-core-2.36.5-1.el7.ius.x86_64 (ius)
要求: libpcre2-8.so.0()(64bit)
問題を回避するために --skip-broken を用いることができます。
これらを試行できます: rpm -Va --nofiles --nodigest
依存関係でエラーが出ます。
エラー: パッケージ: git236-2.36.5-1.el7.ius.x86_64 (ius) 要求: perl(Term::ReadKey) エラー: パッケージ: git236-2.36.5-1.el7.ius.x86_64 (ius) 要求: emacs-filesystem >= 24.3 エラー: パッケージ: git236-perl-Git-2.36.5-1.el7.ius.noarch (ius) 要求: perl(Error) エラー: パッケージ: git236-core-2.36.5-1.el7.ius.x86_64 (ius) 要求: libpcre2-8.so.0()(64bit)この辺りのperl(Term::ReadKey)、emacs-filesystem >= 24.3、libpcre2-8.so.0()(64bit)が不足しているようです。
★CentOS7 で、git 2系 をインストールしてみる | よしにぃのあふぱくブログ
同じような所で詰まってる方のブログがありましたのでそれを参考に足りない物をyunでインストール。
sudo yum install pcre2 libsecret emacs-filesystem perl-TermReadKey perl-Error
読み込んだプラグイン:fastestmirror, product-id, search-disabled-repos, subscription-
: managerThis system is not registered with an entitlement server. You can use subscription-manager to register.
Loading mirror speeds from cached hostfile
epel/x86_64/metalink | 7.1 kB 00:00
* base: ftp-srv2.kddilabs.jp
* epel: ftp.iij.ad.jp
* extras: ftp-srv2.kddilabs.jp
* updates: ftp-srv2.kddilabs.jp
epel | 4.7 kB 00:00
(1/3): epel/x86_64/group_gz | 99 kB 00:00
(2/3): epel/x86_64/updateinfo | 1.0 MB 00:00
(3/3): epel/x86_64/primary_db | 7.0 MB 00:00
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ emacs-filesystem.noarch 1:24.3-23.el7 を インストール
---> パッケージ libsecret.x86_64 0:0.18.6-1.el7 を インストール
---> パッケージ pcre2.x86_64 0:10.23-2.el7 を インストール
---> パッケージ perl-Error.noarch 1:0.17020-2.el7 を インストール
---> パッケージ perl-TermReadKey.x86_64 0:2.30-20.el7 を インストール
--> 依存性解決を終了しました。依存性を解決しました
================================================================================
Package アーキテクチャー
バージョン リポジトリー
容量
================================================================================
インストール中:
emacs-filesystem noarch 1:24.3-23.el7 base 58 k
libsecret x86_64 0.18.6-1.el7 base 153 k
pcre2 x86_64 10.23-2.el7 base 201 k
perl-Error noarch 1:0.17020-2.el7 base 32 k
perl-TermReadKey x86_64 2.30-20.el7 base 31 kトランザクションの要約
================================================================================
インストール 5 パッケージ総ダウンロード容量: 475 k
インストール容量: 1.1 M
Is this ok [y/d/N]: y
Downloading packages:
(1/5): emacs-filesystem-24.3-23.el7.noarch.rpm | 58 kB 00:00
(2/5): perl-TermReadKey-2.30-20.el7.x86_64.rpm | 31 kB 00:00
(3/5): perl-Error-0.17020-2.el7.noarch.rpm | 32 kB 00:00
(4/5): libsecret-0.18.6-1.el7.x86_64.rpm | 153 kB 00:00
(5/5): pcre2-10.23-2.el7.x86_64.rpm | 201 kB 00:00
--------------------------------------------------------------------------------
合計 1.3 MB/s | 475 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : 1:emacs-filesystem-24.3-23.el7.noarch 1/5
インストール中 : libsecret-0.18.6-1.el7.x86_64 2/5
インストール中 : perl-TermReadKey-2.30-20.el7.x86_64 3/5
インストール中 : pcre2-10.23-2.el7.x86_64 4/5
インストール中 : 1:perl-Error-0.17020-2.el7.noarch 5/5
検証中 : 1:perl-Error-0.17020-2.el7.noarch 1/5
検証中 : pcre2-10.23-2.el7.x86_64 2/5
検証中 : perl-TermReadKey-2.30-20.el7.x86_64 3/5
検証中 : libsecret-0.18.6-1.el7.x86_64 4/5
検証中 : 1:emacs-filesystem-24.3-23.el7.noarch 5/5インストール:
emacs-filesystem.noarch 1:24.3-23.el7 libsecret.x86_64 0:0.18.6-1.el7
pcre2.x86_64 0:10.23-2.el7 perl-Error.noarch 1:0.17020-2.el7
perl-TermReadKey.x86_64 0:2.30-20.el7完了しました!
再び
sudo yum install git --enablerepo=ius --disablerepo=base,epel,extras,updates
読み込んだプラグイン:fastestmirror, product-id, search-disabled-repos, subscription- : managerThis system is not registered with an entitlement server. You can use subscription-manager to register.
Loading mirror speeds from cached hostfile
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ git236.x86_64 0:2.36.5-1.el7.ius を インストール
--> 依存性の処理をしています: perl-Git = 2.36.5-1.el7.ius のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: git-core-doc = 2.36.5-1.el7.ius のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: git-core = 2.36.5-1.el7.ius のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: perl(Git::I18N) のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> 依存性の処理をしています: perl(Git) のパッケージ: git236-2.36.5-1.el7.ius.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ git236-core.x86_64 0:2.36.5-1.el7.ius を インストール
---> パッケージ git236-core-doc.noarch 0:2.36.5-1.el7.ius を インストール
---> パッケージ git236-perl-Git.noarch 0:2.36.5-1.el7.ius を インストール
--> 依存性解決を終了しました。依存性を解決しました
================================================================================
Package アーキテクチャー
バージョン リポジトリー
容量
================================================================================
インストール中:
git236 x86_64 2.36.5-1.el7.ius ius 71 k
依存性関連でのインストールをします:
git236-core x86_64 2.36.5-1.el7.ius ius 6.2 M
git236-core-doc noarch 2.36.5-1.el7.ius ius 2.8 M
git236-perl-Git noarch 2.36.5-1.el7.ius ius 46 kトランザクションの要約
================================================================================
インストール 1 パッケージ (+3 個の依存関係のパッケージ)総ダウンロード容量: 9.1 M
インストール容量: 40 M
Is this ok [y/d/N]: y^[[5~
Is this ok [y/d/N]: y
Downloading packages:
警告: /var/cache/yum/x86_64/7/ius/packages/git236-2.36.5-1.el7.ius.x86_64.rpm: ヘッダー V4 RSA/SHA256 Signature、鍵 ID 4b274df2: NOKEY
git236-2.36.5-1.el7.ius.x86_64.rpm の公開鍵がインストールされていません
(1/4): git236-2.36.5-1.el7.ius.x86_64.rpm | 71 kB 00:01
(2/4): git236-core-2.36.5-1.el7.ius.x86_64.rpm | 6.2 MB 00:01
(3/4): git236-perl-Git-2.36.5-1.el7.ius.noarch.rpm | 46 kB 00:00
(4/4): git236-core-doc-2.36.5-1.el7.ius.noarch.rpm | 2.8 MB 00:00
--------------------------------------------------------------------------------
合計 3.4 MB/s | 9.1 MB 00:02
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-IUS-7 から鍵を取得中です。
Importing GPG key 0x4B274DF2:
Userid : "IUS (7)"
Fingerprint: c958 7a09 a11f d706 4f0c a0f4 e558 0725 4b27 4df2
Package : ius-release-2-1.el7.ius.noarch (@/ius-release-el7)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-IUS-7
上記の処理を行います。よろしいでしょうか? [y/N]y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : git236-core-2.36.5-1.el7.ius.x86_64 1/4
インストール中 : git236-core-doc-2.36.5-1.el7.ius.noarch 2/4
インストール中 : git236-perl-Git-2.36.5-1.el7.ius.noarch 3/4
インストール中 : git236-2.36.5-1.el7.ius.x86_64 4/4
検証中 : git236-core-2.36.5-1.el7.ius.x86_64 1/4
検証中 : git236-perl-Git-2.36.5-1.el7.ius.noarch 2/4
検証中 : git236-core-doc-2.36.5-1.el7.ius.noarch 3/4
検証中 : git236-2.36.5-1.el7.ius.x86_64 4/4インストール:
git236.x86_64 0:2.36.5-1.el7.ius依存性関連をインストールしました:
git236-core.x86_64 0:2.36.5-1.el7.ius
git236-core-doc.noarch 0:2.36.5-1.el7.ius
git236-perl-Git.noarch 0:2.36.5-1.el7.ius完了しました!
でインストール完了。
git --version
でVerを見てみると
git version 2.36.5
と表示されました。
IUSリポジトリは今の所、他に使う予定がないので
sudo yum-config-manager --disable ius
と。
epel が「enabled=0」になったからこれで無効化OKかな?
fastestmirror, product-id, subscription-managerThis system is not registered with an entitlement server. You can use subscription-manager to register.
================================== repo: ius ===================================
[ius]
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = https://repo.ius.io/7/x86_64/
cache = 0
cachedir = /var/cache/yum/x86_64/7/ius
check_config_file_age = True
compare_providers_priority = 80
cost = 1000
deltarpm_metadata_percentage = 100
deltarpm_percentage =
enabled = 0
enablegroups = True
exclude =
failovermethod = priority
ftp_disable_epsv = False
gpgcadir = /var/lib/yum/repos/x86_64/7/ius/gpgcadir
gpgcakey =
gpgcheck = True
gpgdir = /var/lib/yum/repos/x86_64/7/ius/gpgdir
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-IUS-7
hdrdir = /var/cache/yum/x86_64/7/ius/headers
http_caching = all
includepkgs =
ip_resolve =
keepalive = True
keepcache = False
mddownloadpolicy = sqlite
mdpolicy = group:small
mediaid =
metadata_expire = 21600
metadata_expire_filter = read-only:present
metalink =
minrate = 0
mirrorlist =
mirrorlist_expire = 86400
name = IUS for Enterprise Linux 7 - x86_64
old_base_cache_dir =
password =
persistdir = /var/lib/yum/repos/x86_64/7/ius
pkgdir = /var/cache/yum/x86_64/7/ius/packages
proxy = False
proxy_dict =
proxy_password =
proxy_username =
repo_gpgcheck = False
retries = 10
skip_if_unavailable = False
ssl_check_cert_permissions = True
sslcacert =
sslclientcert =
sslclientkey =
sslverify = True
throttle = 0
timeout = 30.0
ui_id = ius/x86_64
ui_repoid_vars = releasever,
basearch
username =
にしても少し古めのLinuxディストリビューションなので、まあしょうがないっちゃしょうがないけど
★Dockerで--mountしてたらそんなフラグ(オプション)はない、とエラー。yumで入れたCentOS 7のDockerのバージョンが古かった【なので最新?安定VerのDockerインストールした】(2023年02月04日 (土曜日))
もそうだが、今時の普通の環境構築、ちょっと面倒くさいね・・・・・CentOS 8かAlmaLinux 8の仮想環境も作った方が楽かしら?