WSL-RockyLinux をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
&size(10){当初 AlmaLinuxを作ろうとしたが挫折した... 触感...
参照先 [[https://docs.rockylinux.org/guides/interoperabil...
すでにWSLでubuntu20.04な環境が整備されているのが前提. こ...
***下拵え [#o43235a3]
WSLで作ったubuntu20.04でRockyLinuxのイメージを作るのだが...
#code(nonumber){{
saber@st200e:~$ sudo apt update
saber@st200e:~$ sudo apt install rinse
saber@st200e:~$ dpkg -L rinse <-- 「rinse」...
/.
/etc
/etc/rinse
/etc/rinse/centos-4.packages
:
saber@st200e:~$ apt show rinse <-- 「rinse」...
Package: rinse
Version: 3.5
Priority: extra
Section: universe/admin
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists...
Original-Maintainer: Thomas Lange <lange@debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 266 kB
Depends: wget, libterm-size-perl, libwww-perl, perl, rpm,...
Download-Size: 28.7 kB
APT-Manual-Installed: yes
APT-Sources: http://archive.ubuntu.com/ubuntu focal/unive...
Description: RPM installation environment
This is a tool for bootstrapping a basic RPM-based distr...
GNU/Linux.
.
It is comparable in purpose to the standard Debian deboo...
but works upon RPM-based distributions instead.
.
Rinse can setup 32 and 64-bit installations of:
* CentOS
* Scientific Linux CERN
* Fedora
* OpenSUSE
saber@st200e:~$
}}
***CentOS8向けのパッケージをRockyLinux向けに修正する [#cb...
「/etc/rinse/」にイメージ作成のテンプレートが用意されている
#code(nonumber){{
saber@st200e:~$ ls -CF /etc/rinse/
centos-4.packages fedora-15.packages fedora-27.package...
centos-5.packages fedora-16.packages fedora-28.package...
centos-6.packages fedora-18.packages fedora-7.packages...
centos-7.packages fedora-19.packages fedora-8.packages...
centos-8.packages fedora-20.packages fedora-9.packages...
fedora-10.packages fedora-21.packages fedora-core-4.pac...
fedora-12.packages fedora-22.packages fedora-core-5.pac...
fedora-13.packages fedora-25.packages fedora-core-6.pac...
fedora-14.packages fedora-26.packages opensuse-10.1.pac...
saber@st200e:~$
}}
この中でRockyLinuxに近い「centos-8.packages」を「rocky-8....
#code(nonumber){{
saber@st200e:~$ sudo cp /etc/rinse/centos-8.packages /etc...
}}
そしてこの「/etc/rinse/rocky-8.packages」に修正を加える
#code(diff,nonumber){{
--- /etc/rinse/rocky-8.packages.orig 2021-11-22 23:26:...
+++ /etc/rinse/rocky-8.packages 2021-11-22 23:28:06.87235...
@@ -1,7 +1,7 @@
# list of packages in official docker container
-centos-release
-centos-gpg-keys
-centos-repos
+rocky-release
+rocky-gpg-keys
+rocky-repos
tzdata
ncurses-base
dnf-data
@@ -170,4 +170,13 @@
kexec-tools
tar
hostname
+glibc-langpack-en
+libmodulemd
+libzstd
+passwd
+sudo
+cracklib-dicts
+openssh-clients
+python3-dbus
+dbus-glib
#langpacks-en
}}
***rinseの設定にrocky-8の情報を加える [#je0e1e80]
編集対象は「/etc/rinse/rinse.conf」です
rockyを作るにあたってのリポジトリの登録です
#code(diff,nonumber){{
--- /etc/rinse/rinse.conf.orig 2021-11-22 23:31:44.74235...
+++ /etc/rinse/rinse.conf 2021-11-22 23:32:56.91235...
@@ -175,3 +175,6 @@
[opensuse-42.2]
mirror = http://download.opensuse.org/distribution...
mirror.amd64 = http://download.opensuse.org/distribution...
+
+[rocky-8]
+mirror.amd64 = http://ftp.riken.jp/Linux/rocky/8/BaseOS/...
}}
***post-installスクリプトの修正 [#y338fd31]
これもCentOS8向けをRocky8に仕立て修正を加える
#code(nonumber){{
saber@st200e:~$ sudo cp -R /usr/lib/rinse/centos-8 /usr/l...
}}
っで修正(14行目に追加の文言を入れる)
#code(diff,nonumber){{
--- /usr/lib/rinse/centos-8/post-install.sh 2020-01-2...
+++ /usr/lib/rinse/rocky-8/post-install.sh 2021-11-2...
@@ -12,6 +12,8 @@
exit
fi
+echo " Extracting CA certs..."
+$CH /usr/bin/update-ca-trust
# rpm's can now be removed
rm -f ${prefix}/*.rpm
}}
***rinse側のスクリプトを修正する [#k25eaaa2]
対象は「/usr/sbin/rinse」
#code(diff,nonumber){{
--- /usr/sbin/rinse.orig 2021-11-22 23:43:47.01235...
+++ /usr/sbin/rinse 2021-11-22 23:45:46.622355300 +0900
@@ -1245,8 +1245,8 @@
# Run the unpacking command.
#
my $cmd =
- "rpm2cpio $file | (cd $CONFIG{'directory'} ; cpi...
- if ( $file =~ /(fedora|centos|redhat|mandriva)-rel...
+ "rpm2cpio $file | (cd $CONFIG{'directory'} ; cpi...
+ if ( $file =~ /(fedora|rocky|redhat|mandriva)-rele...
my $rpmname = basename($file);
$postcmd =
"mount -t proc proc $CONFIG{'directory'}/proc ...
}}
***rinseを実行してrockyイメージを作る [#e6410c37]
作ったイメージの保存先はどこでも、名称は問わないみたい。...
#code(nonumber){{
saber@st200e:~$ mkdir rocky_rc
saber@st200e:~$ sudo rinse --arch amd64 --directory ./roc...
Execute postcmd of *-release package
mount: ./rocky_rc/proc: mount point does not exist.
warning: /tmp/rocky-release-8.5-1.el8.noarch.rpm: Header ...
Verifying... ###################...
Preparing... ###################...
Updating / installing...
1:rocky-release-8.5-1.el8 ###################...
umount: ./rocky_rc/proc: no mount point specified.
Running post-install script /usr/lib/rinse/common/10-reso...
Running post-install script /usr/lib/rinse/common/15-moun...
Running post-install script /usr/lib/rinse/common/20-dev-...
Running post-install script /usr/lib/rinse/rocky-8/post-i...
Extracting CA certs...
Updating package
Rocky Linux 8 - AppStream ...
Rocky Linux 8 - BaseOS ...
Rocky Linux 8 - Extras ...
Dependencies resolved.
Nothing to do.
Complete!
cleaning up...
27 files removed
post-install.sh : done.
Installation complete.
saber@st200e:~$ ls -CF rocky_rc/
bin@ dev/ home/ lib64@ mnt/ proc/ run/ srv/ tmp...
boot/ etc/ lib@ media/ opt/ root/ sbin@ sys/ usr/
saber@st200e:~$
}}
rocky8に必要なrpmファイルが指定したリポジトリからダウンロ...
***イメージ作成 [#w3e7e750]
このフォルダをtarでまとめて、windows11からアクセス可能な...
#code(nonumber){{
saber@st200e:~$ sudo tar --numeric-owner -c -C ./rocky_rc...
tar: /mnt/c/rocky_rc.tar: Cannot open: Permission denied
tar: Error is not recoverable: exiting now
saber@st200e:~$
}}
っが「/mnt/c」の直下には置けないみたい. なのでフォルダを...
#code(nonumber){{
saber@st200e:~$ mkdir /mnt/c/rocky
saber@st200e:~$ sudo tar --numeric-owner -c -C ./rocky_rc...
saber@st200e:~$ ls -l /mnt/c/rocky/
total 317100
-rwxrwxrwx 1 saber saber 324710400 Nov 23 00:35 rocky_rc....
saber@st200e:~$
}}
***作ったイメージをWSLに載せる [#of6f3310]
「wsl --import rocky_rc <path to folder from step 9> <pat...
と参照先では述べている.
どうも「rocky_rc」が「wsl -l」で表示される名前(NAME)で、...
このコマンドを実行するとWSLに組み込まれ即座に使えるように...
っで「<path to folder from step 9>」はいわゆる展開先である.
[[WSLg]]で構築したubuntu20.04はwindows11では「%LOCALAPPDA...
この展開先を特定の場所に指定できるようで、ここでは「C:\ws...
コマンドプロンプトを立ち上げて下記を実行する
#code(nonumber){{
Z:\>wsl --import rocky-8.5 C:\wsl-images\Rocky-8.5 C:\roc...
Z:\>wsl -l -v
NAME STATE VERSION
* Ubuntu-20.04 Stopped 2
rocky-8.5 Stopped 2
Z:\>
}}
っで起動させてみた
#code(nonumber){{
Z:\>wsl -d rocky-8.5
[root@st200e ~]#
[root@st200e ~]# id
uid=0(root) gid=0(root) groups=0(root)
[root@st200e ~]# cat /etc/redhat-release
Rocky Linux release 8.5 (Green Obsidian)
[root@st200e ~]#
}}
無事起動できたみたい
終了行:
&size(10){当初 AlmaLinuxを作ろうとしたが挫折した... 触感...
参照先 [[https://docs.rockylinux.org/guides/interoperabil...
すでにWSLでubuntu20.04な環境が整備されているのが前提. こ...
***下拵え [#o43235a3]
WSLで作ったubuntu20.04でRockyLinuxのイメージを作るのだが...
#code(nonumber){{
saber@st200e:~$ sudo apt update
saber@st200e:~$ sudo apt install rinse
saber@st200e:~$ dpkg -L rinse <-- 「rinse」...
/.
/etc
/etc/rinse
/etc/rinse/centos-4.packages
:
saber@st200e:~$ apt show rinse <-- 「rinse」...
Package: rinse
Version: 3.5
Priority: extra
Section: universe/admin
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists...
Original-Maintainer: Thomas Lange <lange@debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 266 kB
Depends: wget, libterm-size-perl, libwww-perl, perl, rpm,...
Download-Size: 28.7 kB
APT-Manual-Installed: yes
APT-Sources: http://archive.ubuntu.com/ubuntu focal/unive...
Description: RPM installation environment
This is a tool for bootstrapping a basic RPM-based distr...
GNU/Linux.
.
It is comparable in purpose to the standard Debian deboo...
but works upon RPM-based distributions instead.
.
Rinse can setup 32 and 64-bit installations of:
* CentOS
* Scientific Linux CERN
* Fedora
* OpenSUSE
saber@st200e:~$
}}
***CentOS8向けのパッケージをRockyLinux向けに修正する [#cb...
「/etc/rinse/」にイメージ作成のテンプレートが用意されている
#code(nonumber){{
saber@st200e:~$ ls -CF /etc/rinse/
centos-4.packages fedora-15.packages fedora-27.package...
centos-5.packages fedora-16.packages fedora-28.package...
centos-6.packages fedora-18.packages fedora-7.packages...
centos-7.packages fedora-19.packages fedora-8.packages...
centos-8.packages fedora-20.packages fedora-9.packages...
fedora-10.packages fedora-21.packages fedora-core-4.pac...
fedora-12.packages fedora-22.packages fedora-core-5.pac...
fedora-13.packages fedora-25.packages fedora-core-6.pac...
fedora-14.packages fedora-26.packages opensuse-10.1.pac...
saber@st200e:~$
}}
この中でRockyLinuxに近い「centos-8.packages」を「rocky-8....
#code(nonumber){{
saber@st200e:~$ sudo cp /etc/rinse/centos-8.packages /etc...
}}
そしてこの「/etc/rinse/rocky-8.packages」に修正を加える
#code(diff,nonumber){{
--- /etc/rinse/rocky-8.packages.orig 2021-11-22 23:26:...
+++ /etc/rinse/rocky-8.packages 2021-11-22 23:28:06.87235...
@@ -1,7 +1,7 @@
# list of packages in official docker container
-centos-release
-centos-gpg-keys
-centos-repos
+rocky-release
+rocky-gpg-keys
+rocky-repos
tzdata
ncurses-base
dnf-data
@@ -170,4 +170,13 @@
kexec-tools
tar
hostname
+glibc-langpack-en
+libmodulemd
+libzstd
+passwd
+sudo
+cracklib-dicts
+openssh-clients
+python3-dbus
+dbus-glib
#langpacks-en
}}
***rinseの設定にrocky-8の情報を加える [#je0e1e80]
編集対象は「/etc/rinse/rinse.conf」です
rockyを作るにあたってのリポジトリの登録です
#code(diff,nonumber){{
--- /etc/rinse/rinse.conf.orig 2021-11-22 23:31:44.74235...
+++ /etc/rinse/rinse.conf 2021-11-22 23:32:56.91235...
@@ -175,3 +175,6 @@
[opensuse-42.2]
mirror = http://download.opensuse.org/distribution...
mirror.amd64 = http://download.opensuse.org/distribution...
+
+[rocky-8]
+mirror.amd64 = http://ftp.riken.jp/Linux/rocky/8/BaseOS/...
}}
***post-installスクリプトの修正 [#y338fd31]
これもCentOS8向けをRocky8に仕立て修正を加える
#code(nonumber){{
saber@st200e:~$ sudo cp -R /usr/lib/rinse/centos-8 /usr/l...
}}
っで修正(14行目に追加の文言を入れる)
#code(diff,nonumber){{
--- /usr/lib/rinse/centos-8/post-install.sh 2020-01-2...
+++ /usr/lib/rinse/rocky-8/post-install.sh 2021-11-2...
@@ -12,6 +12,8 @@
exit
fi
+echo " Extracting CA certs..."
+$CH /usr/bin/update-ca-trust
# rpm's can now be removed
rm -f ${prefix}/*.rpm
}}
***rinse側のスクリプトを修正する [#k25eaaa2]
対象は「/usr/sbin/rinse」
#code(diff,nonumber){{
--- /usr/sbin/rinse.orig 2021-11-22 23:43:47.01235...
+++ /usr/sbin/rinse 2021-11-22 23:45:46.622355300 +0900
@@ -1245,8 +1245,8 @@
# Run the unpacking command.
#
my $cmd =
- "rpm2cpio $file | (cd $CONFIG{'directory'} ; cpi...
- if ( $file =~ /(fedora|centos|redhat|mandriva)-rel...
+ "rpm2cpio $file | (cd $CONFIG{'directory'} ; cpi...
+ if ( $file =~ /(fedora|rocky|redhat|mandriva)-rele...
my $rpmname = basename($file);
$postcmd =
"mount -t proc proc $CONFIG{'directory'}/proc ...
}}
***rinseを実行してrockyイメージを作る [#e6410c37]
作ったイメージの保存先はどこでも、名称は問わないみたい。...
#code(nonumber){{
saber@st200e:~$ mkdir rocky_rc
saber@st200e:~$ sudo rinse --arch amd64 --directory ./roc...
Execute postcmd of *-release package
mount: ./rocky_rc/proc: mount point does not exist.
warning: /tmp/rocky-release-8.5-1.el8.noarch.rpm: Header ...
Verifying... ###################...
Preparing... ###################...
Updating / installing...
1:rocky-release-8.5-1.el8 ###################...
umount: ./rocky_rc/proc: no mount point specified.
Running post-install script /usr/lib/rinse/common/10-reso...
Running post-install script /usr/lib/rinse/common/15-moun...
Running post-install script /usr/lib/rinse/common/20-dev-...
Running post-install script /usr/lib/rinse/rocky-8/post-i...
Extracting CA certs...
Updating package
Rocky Linux 8 - AppStream ...
Rocky Linux 8 - BaseOS ...
Rocky Linux 8 - Extras ...
Dependencies resolved.
Nothing to do.
Complete!
cleaning up...
27 files removed
post-install.sh : done.
Installation complete.
saber@st200e:~$ ls -CF rocky_rc/
bin@ dev/ home/ lib64@ mnt/ proc/ run/ srv/ tmp...
boot/ etc/ lib@ media/ opt/ root/ sbin@ sys/ usr/
saber@st200e:~$
}}
rocky8に必要なrpmファイルが指定したリポジトリからダウンロ...
***イメージ作成 [#w3e7e750]
このフォルダをtarでまとめて、windows11からアクセス可能な...
#code(nonumber){{
saber@st200e:~$ sudo tar --numeric-owner -c -C ./rocky_rc...
tar: /mnt/c/rocky_rc.tar: Cannot open: Permission denied
tar: Error is not recoverable: exiting now
saber@st200e:~$
}}
っが「/mnt/c」の直下には置けないみたい. なのでフォルダを...
#code(nonumber){{
saber@st200e:~$ mkdir /mnt/c/rocky
saber@st200e:~$ sudo tar --numeric-owner -c -C ./rocky_rc...
saber@st200e:~$ ls -l /mnt/c/rocky/
total 317100
-rwxrwxrwx 1 saber saber 324710400 Nov 23 00:35 rocky_rc....
saber@st200e:~$
}}
***作ったイメージをWSLに載せる [#of6f3310]
「wsl --import rocky_rc <path to folder from step 9> <pat...
と参照先では述べている.
どうも「rocky_rc」が「wsl -l」で表示される名前(NAME)で、...
このコマンドを実行するとWSLに組み込まれ即座に使えるように...
っで「<path to folder from step 9>」はいわゆる展開先である.
[[WSLg]]で構築したubuntu20.04はwindows11では「%LOCALAPPDA...
この展開先を特定の場所に指定できるようで、ここでは「C:\ws...
コマンドプロンプトを立ち上げて下記を実行する
#code(nonumber){{
Z:\>wsl --import rocky-8.5 C:\wsl-images\Rocky-8.5 C:\roc...
Z:\>wsl -l -v
NAME STATE VERSION
* Ubuntu-20.04 Stopped 2
rocky-8.5 Stopped 2
Z:\>
}}
っで起動させてみた
#code(nonumber){{
Z:\>wsl -d rocky-8.5
[root@st200e ~]#
[root@st200e ~]# id
uid=0(root) gid=0(root) groups=0(root)
[root@st200e ~]# cat /etc/redhat-release
Rocky Linux release 8.5 (Green Obsidian)
[root@st200e ~]#
}}
無事起動できたみたい
ページ名:
1