Red Hat Enterprise Linux 8やCentOS 8ではyum-utils不要な模様

 article  Comments Off on Red Hat Enterprise Linux 8やCentOS 8ではyum-utils不要な模様
Mar 042021
 

Red Hat Enterprise Linux 7やCentOS 7では、yum-utilsパッケージに含まれるコマンドを使用してパッケージのダウンロード(yumdownloader)や不要になったパッケージの検索(package-cleanup)などをおこなっていました。

Red Hat Enterprise Linux 8やCentOS 8でも同パッケージは提供されていますが、導入される各コマンドは/usr/libexec/dnf-utilsへのシンボリックリンクとなっています。

/usr/libexec/dnf-utilsはPython実行ファイルになっており、以下のようにdnfコマンドへのマッピングがおこなわれています。

MAPPING = {'debuginfo-install': ['debuginfo-install'],
            'needs-restarting': ['needs-restarting'],
            'find-repos-of-install': ['list', 'installed'],
            'package-cleanup': [],
            'repo-graph': ['repograph'],
            'repoclosure': ['repoclosure'],
            'repodiff': ['repodiff'],
            'repomanage': ['repomanage'],
            'repoquery': ['repoquery'],
            'reposync': ['reposync'],
            'repotrack': ['download', '--resolve', '--alldeps'],
            'yum-builddep': ['builddep'],
            'yum-config-manager': ['config-manager'],
            'yum-debug-dump': ['debug-dump'],
            'yum-debug-restore': ['debug-restore'],
            'yumdownloader': ['download']
            }

yumdownloaderであればdnf downloadyum-config-managerであればdnf config-managerといった具合です。

package-cleanupは更に先のif文で詳細なマッピングとオプション指定がおこなわれています。

if command == 'package-cleanup':
     if '--dupes' in args:
         args[args.index('--dupes')] = '--duplicates'
         MAPPING[command] = ['repoquery']
     elif '--leaves' in args:
         args[args.index('--leaves')] = '--unneeded'
         MAPPING[command] = ['repoquery']
     elif '--orphans' in args:
         args[args.index('--orphans')] = '--extras'
         MAPPING[command] = ['repoquery']
     elif '--problems' in args:
         args[args.index('--problems')] = '--unsatisfied'
         MAPPING[command] = ['repoquery']
     elif '--cleandupes' in args:
         args[args.index('--cleandupes')] = '--duplicates'
         MAPPING[command] = ['remove']
     else:
         sys.stderr.write('package-cleanup has to be executed with one of the options: --dupes, '
                          '--leaves, --orphans, --problems or --cleandupes\n')

package-cleanup --leavesdnf repoquery --unneededということですね。

ただ、マッピングもいまいちわからないし(man dnfできちんと調べればわかるのでしょうが)、dnf-utilsの中身を見るぐらいなら結局yum-utils暫く使いそうです。

Apache 2.4のWelcomeページがzh-cnになる理由

 article  Comments Off on Apache 2.4のWelcomeページがzh-cnになる理由
Feb 212021
 

CentOS Stream 8のApacheで、デフォルトのトップページがzh-cnになります。
(パッケージはhttpd-2.4.37-30.module_el8.3.0+462+ba287492.0.1.x86_64)

/etc/httpd./conf.d/welcome.confで設定されている403 NOT FOUND時のページが表示されるのですが、こちらにはen-USのページも用意されているのに何故だろうと疑問でした。

$ ls -l /usr/share/httpd/noindex/index.html*
-rw-r--r-- 1 root root 4288 Jul 30  2019 /usr/share/httpd/noindex/index.html.en-US
-rw-r--r-- 1 root root 4467 Jun 14  2019 /usr/share/httpd/noindex/index.html.es-ES
-rw-r--r-- 1 root root 4006 Jun 14  2019 /usr/share/httpd/noindex/index.html.zh-CN
-rw-r--r-- 1 root root 4006 Jun 14  2019 /usr/share/httpd/noindex/index.html.zh-HK
-rw-r--r-- 1 root root 4006 Jun 14  2019 /usr/share/httpd/noindex/index.html.zh-TW

curlでトップページを表示してみるとContent-Language: zh-cnになっています。

$ curl -I http://localhost/
HTTP/1.1 403 Forbidden
Date: Sun, 21 Feb 2021 03:09:51 GMT
Server: Apache/2.4.37 (centos) OpenSSL/1.1.1g
Content-Location: index.html.zh-CN Vary: negotiate,accept-language
TCN: choice Last-Modified: Fri, 14 Jun 2019 03:37:43 GMT ETag: "fa6-58b405e7d6fc0;5bbe58cb80a25" Accept-Ranges: bytes
Content-Length: 4006 Content-Type: text/html; charset=UTF-8
Content-Language: zh-cn

Apache公式ドキュメントにきちんと回答がありました。
https://httpd.apache.org/docs/2.4/ja/content-negotiation.html#methods

「Apache ネゴシエーションアルゴリズム」の以下の部分です。

  1. 内容の最も短い variant を選びます。
  2. 残っている variant の最初のものを選びます。 タイプマップファイルの最初にリストされているか、 variant がディレクトリから最初に読み込まれる時に ASCII順でソートしてファイル名が先頭になったか、のどちらかです。

なるほどです。先のファイルリストをみると確かにzh-*のファイルサイズは4006バイトとen-USやes-ESより小さく、かつzh-CNがファイルリストの先頭にきます。

試しにindex.html.zh-CNのファイルサイズをちょっと増やしてみると、次点のzh-HKに切り替わることが確認できます。

$ sudo sh -c "echo 1 >> /usr/share/httpd/noindex/index.html.zh-CN"
$ ls -l /usr/share/httpd/noindex/index.html.zh-*
-rw-r--r-- 1 root root 4008 Feb 21 12:28 /usr/share/httpd/noindex/index.html.zh-CN
-rw-r--r-- 1 root root 4006 Jun 14  2019 /usr/share/httpd/noindex/index.html.zh-HK
-rw-r--r-- 1 root root 4006 Jun 14  2019 /usr/share/httpd/noindex/index.html.zh-TW
$ curl -I http://localhost/
HTTP/1.1 403 Forbidden
Date: Mon, 21 Feb 2021 03:29:02 GMT
Server: Apache/2.4.37 (centos) OpenSSL/1.1.1g
Content-Location: index.html.zh-HK
Vary: negotiate,accept-language
TCN: choice
Last-Modified: Fri, 14 Jun 2019 03:37:43 GMT
ETag: "fa6-58b405e7d6fc0;5bbe41920b7b6"
Accept-Ranges: bytes
Content-Length: 4006
Content-Type: text/html; charset=UTF-8
Content-Language: zh-hk

shutdownに2分待たされる問題(A stop job is running for User Manager for UID 1000)

 article  Comments Off on shutdownに2分待たされる問題(A stop job is running for User Manager for UID 1000)
Dec 232020
 

sudo systemctl poweroff時に2分待たされるようになりまして。コンソールに以下のようなメッセージが表示されます。
A stop job is running for User Manager for UID 1000 (1min 10s / 2min)

最初はこちらのIssueかと思いいろいろ調べましたが解決せず。
“A stop job is running for User Manager for UID 1000” · Issue #12262 · systemd/systemd · GitHub

更に調査した結果、systemdではなくgnomeのIssueに行きつきました。
2 minutes delay at poweroff with systemd-247 (#74) · Issues · GNOME / gnome-session · GitLab

こちらのIssueでは冒頭にDebianへのバグレポートが記載されており、そちらを追いかけますと以下のパッチで解消する模様。
https://gitlab.gnome.org/GNOME/gnome-session/-/commit/9de6e40f12e8878f524f8d429d85724c156a0517

具体的なserviceファイルの所在がわかりにくいのですが、私の環境では
/usr/lib/systemd/user/gnome-session-restart-dbus.service
を修正して解消することを確認できました。

上記ファイルの直接編集ではなくoverride.conf作成でも対応可能です。

$ systemctl edit --user gnome-session-restart-dbus.service
$ cat ~/.config/systemd/user/gnome-session-restart-dbus.service.d/override.conf
[Service]
Slice=-.slice

Arch LinuxをWSLで動かす

 article  Comments Off on Arch LinuxをWSLで動かす
Dec 192020
 

Arch LinuxのWSLは公式提供ありませんが、Dockerイメージからアーカイブを作成してWSL環境にインポートすることで動かすことができます。

別に作成してあるWSL環境のLinuxからpodman(またはdocker)を実行してArch Linuxのコンテナーを起動します。

$ podman run --name arch -it docker.io/library/archlinux:latest

起動してターミナルセッションになったら、pacmanのアップデート、追加パッケージのインストール、一般ユーザーの追加を実施しておきます。

# pacman -Sy
# pacman -S sudo base-devel vi
# useradd -m -u 1000 -g wheel user
# passwd user
# exit

podman exportでファイルシステムのアーカイブを作成します。

$ podman export arch > arch.tar

次からはPowerShellのターミナル作業です。
インポート先のディレクトリーを作成し、先程作成したアーカイブをインポートします。

PS > mkdir C:\distros
PS > wsl --import Arch C:\distros\Arch arch.tar --version 2

デフォルトユーザーを先程作成した一般ユーザーにします。

PS > Get-ItemProperty Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss\*\ DistributionName | Where-Object -Property DistributionName -eq Arch  | Set-ItemProperty -Name DefaultUid -Value 1000

Arch LinuxのWSL環境が無事できあがりました。

PS > wsl -d Arch
$ 

WSL2のKaliからローカルVMのMetasploitableに接続する

 article  Comments Off on WSL2のKaliからローカルVMのMetasploitableに接続する
Sep 292020
 

WSL2はHyper-Vテクノロジー下で動作するようになりました。

仮想マシンとして動作するようになり、速度も向上、Windowsファイルシステムの呪縛から解き放たれとよいことづくめのように思えますが、同ホスト上のHyper-V仮想マシンと接続できないという問題があります。

WSL2の仮想マシンは独自のHyper-V仮想スイッチ(デフォルトだとvEthernet (WSL))に接続されるためです。
当面の解決方法ですが、Hyper-V仮想マシンもWSL仮想スイッチに接続するか、下記Issueのコメントにあるように仮想スイッチ間の転送を許可することで接続できるようになります。

After converting to WSL2 no longer able to route traffic to other VSwitches on the same host. #4288

Get-NetIPInterface | where {$_.InterfaceAlias -eq 'vEthernet (WSL)' -or $_.InterfaceAlias -eq 'vEthernet (Default Switch)'} | Set-NetIPInterface -Forwarding Enabled

ただ残念ながらホスト再起動でリセットされてしまうようです。Administrator権限での実行が必要なこともあり対応が面倒ですので、よい対策が生まれることを期待したいと思います。

pamアップデートでlogin不可に

 article  Comments Off on pamアップデートでlogin不可に
Aug 212020
 

Arch Linuxをアップグレードしたらloginできなくなりました。

インストーラーのISOで起動して/var/log/pacman.logを確認すると、pam関係のアップグレードが実行されています。

[ALPM] warning: /etc/pam.d/system-login installed as /etc/pam.d/system-login.pacnew
[ALPM] upgraded pambase (20190105.1-2 -> 20200721.1-2)
[ALPM] upgraded pam (1.3.1-2 -> 1.4.0-3)

あ。lxcをつかうために/etc/pam.d/system-authにpam_cgfs.soのエントリーを追加していたのが原因でした。

Linux Containers – ArchWiki

/usr/lib/security/pam_cgfs.soはpambaseパッケージからlxcパッケージに移動したとのことで、system-loginファイルをデフォルト(.pacnewのファイル)に戻して解決。

lxcパッケージは削除したけど/etc/pam.d/system-authの設定を戻していなかったのが敗因ですが、こういった問題を調べてちょこちょこ解決して使うのもなかなか楽しいものです。

Rakuten UN-LIMITのSIMでLTE接続

 article  Comments Off on Rakuten UN-LIMITのSIMでLTE接続
Jul 292020
 

Rakuten UN-LIMITを契約しまして、ThinkPad T480s(Fibocom Wireless Inc. L850-GL)のArch Linuxで接続できましたのでご報告です。

ThinkPad T480sのArch LinuxでFibocom L-850GLモデムを使う方法は過去記事をご覧ください。

残念ながらSIMを挿してNetworkManagerでAPN設定するだけでうはうまくいかず、ModemManagerで調査していきます。

mmcliの結果では3Gのシグナルは掴んでいるようですが、レジスターができていない様子。

$ mmcli -L
/org/freedesktop/ModemManager1/Modem/0 [Fibocom Wireless Inc.] L850-GL
$ mmcli -m 0
((snip))
Status | unlock retries: sim-pin2 (3)
| state: enabled
| power state: on
| signal quality: 29% (cached)
((snip))
3GPP | imei: XXXXXXXXXXXXXXX
| enabled locks: fixed-dialing
| registration: idle

ちなみに接続できるIIJmioのSIMでは以下のように表示されていました。

  Status   |       unlock retries: sim-pin2 (3)
           |                state: registered
           |          power state: on
           |          access tech: lte
           |       signal quality: 19% (recent)
((snip))
  3GPP     |                 imei: XXXXXXXXXXXXXXX
           |        enabled locks: fixed-dialing
           |          operator id: 44010
           |        operator name: NTT DOCOMO
           |         registration: home

3GPPスキャンの結果はこんな感じで、電波自体は認識できているようでしたが、Rakuten UN-LIMITのMMC=440, MNC=11は出てきません。

$ mmcli -m 0 --3gpp-scan
---------------------
3GPP scan | networks: 44110 - 44110 (gprs, forbidden)
| 44051 - KDDI (gprs, forbidden)
| 44020 - SoftBank (gprs, forbidden)
| 44050 - KDDI (gprs, forbidden)
| 44010 - JP DOCOMO (gprs, forbidden)
| 44000 - 44000 (gprs, forbidden)
| 44010 - JP DOCOMO (gprs, forbidden)
| 44052 - 44052 (gprs, forbidden)
| 44100 - 44100 (gprs, forbidden)
| 44020 - SoftBank (gprs, forbidden)
| 44053 - 44053 (gprs, available)

ですので、3GPP Registerを実行してもエラーになります。

$ mmcli -m 0 --3gpp-register-home
error: couldn't register the modem: 'GDBus.Error:org.freedesktop.ModemManager1.Error.MobileEquipment.GprsUnknown: Unsupported error (0): unknown'
$ mmcli -m 0 --3gpp-register-in-operator=44011
error: couldn't register the modem: 'Timeout was reached'

ふと3GPP scan結果で唯一availableになっていた44053に登録を試みたらどうなるでしょう。調べて見ると44053はKDDIの新しいPLMN番号(MCC+MNC)で、Rakuten向けのローミング回線らしいです。

$ mmcli -m 0 --3gpp-register-in-operator=44053
successfully registered the modem

おお。成功です。mmcliでのStatus、3GPP表示もいい感じになりました!

  Status   |       unlock retries: sim-pin2 (3)
           |                state: registered
           |          power state: on
           |          access tech: lte
           |       signal quality: 25% (recent)
((snip))
  3GPP     |                 imei: XXXXXXXXXXXXXXX
           |        enabled locks: fixed-dialing
           |          operator id: 44053
           |        operator name: Rakuten
           |         registration: home
((snip))

この状態でGSM用のNetworkManager設定を用意して接続すれば完了!
引き続きローミング時の切り替えを自動で実施する方法があるか調べようと思いますが、とりあえず接続できたので満足です。

Arch LinuxでWiFi接続不可

 article  Comments Off on Arch LinuxでWiFi接続不可
Feb 112020
 

Arch Linuxで突如WiFiに接続できなくなりまして、ジャーナルを見ていたら以下のようなログが。

[   25.669989] ------------[ cut here ]------------
[   25.670056] WARNING: CPU: 4 PID: 1026 at net/wireless/nl80211.c:7035 nl80211_get_reg_do+0x228/0x290 [cfg80211]
[   25.670059] Modules linked in: sd_mod snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic x86_pkg_temp_thermal joydev intel_powerclamp mousedev coretemp kvm_intel uvcvideo videobuf2_vmalloc elan_i2c videobuf2_memops kvm vide
obuf2_v4l2 i915 iTCO_wdt btusb iTCO_vendor_support iwlmvm videobuf2_common snd_hda_intel btrtl btbcm mei_hdcp intel_rapl_msr irqbypass crct10dif_pclmul crc32_pclmul videodev btintel snd_intel_dspcfg mac80211 bluetooth wmi_bmof mc snd_hda_
codec ghash_clmulni_intel intel_wmi_thunderbolt uas usb_storage aesni_intel libarc4 scsi_mod ecdh_generic crypto_simd ecc cryptd i2c_algo_bit snd_hda_core iwlwifi nls_iso8859_1 glue_helper nls_cp437 snd_hwdep intel_cstate vfat drm_kms_hel
per fat snd_pcm intel_uncore intel_rapl_perf psmouse input_leds cfg80211 pcspkr e1000e drm i2c_i801 snd_timer intel_gtt agpgart mei_me thunderbolt nxp_nci_i2c intel_xhci_usb_role_switch syscopyarea mei intel_lpss_pci processor_thermal_dev
ice nxp_nci roles sysfillrect intel_lpss nci
[   25.670124]  intel_rapl_common sysimgblt idma64 ucsi_acpi fb_sys_fops intel_pch_thermal intel_soc_dts_iosf typec_ucsi typec tpm_crb nfc wmi thinkpad_acpi nvram ledtrig_audio rfkill snd tpm_tis tpm_tis_core int3403_thermal battery sound
core int340x_thermal_zone ac tpm int3400_thermal evdev acpi_thermal_rel rng_core mac_hid pkcs8_key_parser crypto_user ip_tables x_tables ext4 crc32c_generic crc16 mbcache jbd2 serio_raw atkbd libps2 xhci_pci crc32c_intel xhci_hcd i8042 se
rio
[   25.670170] CPU: 4 PID: 1026 Comm: wpa_supplicant Tainted: G        W         5.5.2-arch1-1 #1
[   25.670172] Hardware name: LENOVO 20L7CTO1WW/20L7CTO1WW, BIOS N22ET60W (1.37 ) 11/25/2019
[   25.670214] RIP: 0010:nl80211_get_reg_do+0x228/0x290 [cfg80211]
[   25.670219] Code: 89 ef c7 44 24 0c 01 00 00 00 e8 d3 d2 91 c5 85 c0 74 cc e9 ff fe ff ff 48 89 ef 48 89 04 24 e8 4e 3e be c5 48 8b 04 24 eb 89 <0f> 0b 48 89 ef e8 3e 3e be c5 b8 ea ff ff ff e9 75 ff ff ff b8 97
[   25.670222] RSP: 0018:ffffa63480ebba60 EFLAGS: 00010202
[   25.670226] RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000000
[   25.670228] RDX: ffff8ecc14168008 RSI: 0000000000000000 RDI: ffff8ecc14168300
[   25.670230] RBP: ffff8ecc126c8400 R08: 0000000000000004 R09: ffff8ecc1219c014
[   25.670232] R10: 000000000000001e R11: ffffa63480ebbb20 R12: ffffa63480ebbb20
[   25.670234] R13: ffff8ecc1219c014 R14: 0000000000000000 R15: ffff8ecc14168300
[   25.670238] FS:  00007fd9d44f97c0(0000) GS:ffff8ecc1a700000(0000) knlGS:0000000000000000
[   25.670240] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   25.670243] CR2: 000055b3aed81018 CR3: 0000000630858001 CR4: 00000000003606e0
[   25.670245] Call Trace:
[   25.670267]  genl_rcv_msg+0x1d2/0x480
[   25.670276]  ? __alloc_skb+0x87/0x1d0
[   25.670282]  ? kmalloc_large_node+0x84/0x90
[   25.670289]  ? genl_family_rcv_msg_attrs_parse+0x100/0x100
[   25.670293]  netlink_rcv_skb+0x75/0x140
[   25.670299]  genl_rcv+0x24/0x40
[   25.670304]  netlink_unicast+0x199/0x240
[   25.670309]  netlink_sendmsg+0x243/0x480
[   25.670316]  sock_sendmsg+0x5e/0x60
[   25.670321]  ____sys_sendmsg+0x21b/0x290
[   25.670326]  ? copy_msghdr_from_user+0xe1/0x160
[   25.670333]  ___sys_sendmsg+0x9e/0xe0
[   25.670346]  __sys_sendmsg+0x81/0xd0
[   25.670357]  do_syscall_64+0x4e/0x150
[   25.670365]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[   25.670370] RIP: 0033:0x7fd9d485f7b7
[   25.670374] Code: 64 89 02 48 c7 c0 ff ff ff ff eb bb 0f 1f 80 00 00 00 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 2e 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 89 54 24 1c 48 89 74 24 10
[   25.670377] RSP: 002b:00007ffc2b9fa148 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
[   25.670380] RAX: ffffffffffffffda RBX: 000055b3aed4d620 RCX: 00007fd9d485f7b7
[   25.670382] RDX: 0000000000000000 RSI: 00007ffc2b9fa180 RDI: 0000000000000004
[   25.670385] RBP: 000055b3aed4d530 R08: 0000000000000004 R09: 000055b3aed4a010
[   25.670387] R10: 00007ffc2b9fa254 R11: 0000000000000246 R12: 000055b3aed7c9d0
[   25.670389] R13: 00007ffc2b9fa180 R14: 00007ffc2b9fa254 R15: 000055b3aed7e130
[   25.670397] ---[ end trace a3d3dd4cae3c209a ]---

wpa_supplicant起動時に発生しているようで、ものは試しにとiwdを使ってみましたが、同じようにエラーになります。いろいろ調べた結果 FS#65041 – Unable to associate with WiFi wireless network with kernel 5.4.7-arch1-1 と同じ症状のようで、rfkillでwlanをunblockedにしたら接続できるようになりました。

$ sudo rfkill unblock wlan

ちなみにrfkillコマンドはutil-linuxパッケージで提供されているのですが、こちらのパッケージではrfkill unblock用のsystemdサービスも用意されていて、以下のとおり有効化することで毎回起動時にunblockされるようになります。

$ sudo systemctl enable rfkill-unblock@wlan.service

PVの特定位置にLVを作成する

 article  Comments Off on PVの特定位置にLVを作成する
Feb 012020
 

LVMでLogical Volume(LV)をアロケーションする際、Phisical Volume(PV)のPhisical Extent(PE)の位置を指定することができます。

Volume Group(VG)を構成する特定PVの最後のほうにLVをアロケーションすることも可能ということです。

現在のPE割り当て状態はpvdisplayの-m(マップ)オプションで確認することができます。

$ sudo pvdisplay -m /dev/nvme0n1p2
--- Physical volume ---
   PV Name               /dev/nvme0n1p2
   VG Name               vg_data
   PV Size               444.09 GiB / not usable 3.00 MiB
   Allocatable           yes 
   PE Size               4.00 MiB
   Total PE              113687
   Free PE               17431
   Allocated PE          96256
   PV UUID               vu3SHx-qCaA-MN48-NXZT-yH1A-uA3t-rc0UcO

--- Physical Segments ---
   Physical extent 0 to 65535:
     Logical volume    /dev/vg_data/lv_root
     Logical extents    0 to 65535
  Physical extent 65536 to 113686:
     FREE

$

上によるとPEの65536から113686まで空いていることになります。

LV作成時にPVの最後にPE開始位置と終了位置を設定することで特定の場所に作成することができるようになります。

上記PV空き領域の中の末尾に40GiBのLVを作成する場合は、以下のように指定することになります。Extent開始位置は末尾から逆算して算出します。

$ sudo lvcreate -L40G -n lv_test vg_data /dev/nvme0n1p2:103447-113686
  Logical volume "lv_test" created.
$

作成できました。pvdisplayで確認すると、PEの途中にFREEの領域があり末尾にアロケーションされていることがわかります。

$ sudo pvdisplay -m /dev/nvme0n1p2
  --- Physical volume ---
  PV Name               /dev/nvme0n1p2
  VG Name               vg_data
  PV Size               444.09 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              113687
  Free PE               37911
  Allocated PE          75776
  PV UUID               vu3SHx-qCaA-MN48-NXZT-yH1A-uA3t-rc0UcO
   
  --- Physical Segments ---
  Physical extent 0 to 65535:
    Logical volume	/dev/vg_data/lv_root
    Logical extents	0 to 65535
  Physical extent 65536 to 103446:
    FREE
  Physical extent 103447 to 113686:
    Logical volume	/dev/vg_data/lv_test
    Logical extents	0 to 10239
   
$
 Posted by at 1:11 am  Tagged with:

nftables環境でlibvirtを使うときはebtablesではなくiptables-nftを入れればよかった

 article  Comments Off on nftables環境でlibvirtを使うときはebtablesではなくiptables-nftを入れればよかった
Feb 012020
 

Arch LinuxでVirtualBoxからlibvirtへの切り替えを試みています。

Arch Linuxのlibvirtに関するWikiページを見ていると、libvirtでdefaultのNATテーブルを使う場合はebtablesとdnsmasqを入れるようにとの記載があります。

私はiptablesではなくnftablesに切り替えてしまったので、ebtablesを入れても効かないんではなかろうかと思いつつ調べましたら、nftables環境でiptablesやebtablesコマンドを使えるようにするiptables-nftというパッケージがあることを発見したので、そちらを導入して解決。

ちなみにnftables環境でもiptablesパッケージを使うことはできるのですが、こちらのiptablesコマンドではnftablesでの設定内容は表示されません。iptables-nftパッケージのiptablesコマンドであれば、nftablesで設定した内容も表示することができます。