http://transitive.info/
transitive.info
2023-11-03T15:00:00Z
transitive.info
http://transitive.info
tag:transitive.info,2023-11-04:/2023/11/04/install-openwrt-wzr-600dhp2/
WZR-600DHP2 への OpenWRT のインストールと設定
2023-11-03T15:00:00Z
2023-11-03T15:00:00Z
<h1 id="wzr-600dhp2--openwrt-">WZR-600DHP2 への OpenWRT のインストールと設定</h1>
<h2 id="section">インストール</h2>
<p>Buffalo WZR-600DHP2 に DD-WRT を入れていたが、
ファームウェアを DD-WRT から OpenWRT に変更した。</p>
<p>CEF Web Server からファームウェアを更新できる。
telnet で接続して設定してから、ルータを再起動する。</p>
<pre><code>nvram show
nvram set boot_wait=on
nvram set wait_time=30
nvram commit
reboot
</code></pre>
<p>ルータの IP アドレスは 192.168.1.1 になっているので、有線 LAN で接続し、PC のネットワークの設定を手動で
IP アドレス 192.168.1.2、サブネットマスク 255.255.255.0、デフォルトルート 192.168.0.1 とする。
ブラウザで 192.168.0.1 にアクセスし、Firmware File として
openwrt-23.05.0-bcm53xx-generic-buffalo_wzr-600dhp2-squashfs.trx を選択し、Upload のボタンを押す。</p>
<pre><code>Upload completed. System is going to reboot.
Please wait a few moments.
</code></pre>
<p>と出ればよい。</p>
<p>PC の固定 IP アドレスの設定を削除して、DHCP にする。
しばらく待って、192.168.1.1 にアクセスすると OpenWRT になっている。</p>
<h2 id="section-1">設定</h2>
<p><a href="/2022/09/04/install-openwrt-wzr-hp-ag300h/">WZR-HP-AG300H の OpenWRT の更新と設定</a>
と同じように設定したが、autossh はオプションを変更する必要があった。</p>
<h3 id="autossh">autossh</h3>
<p>/etc/config/autossh を次のようにした。
相手のサーバのポート 22223 をルータのポート 22 につなげているので、
プロバイダからプライベート IP を割り当てられていても、
サーバのポート 22223 にアクセスすることで SSH でルータにログインできるようになる。</p>
<pre><code>config autossh
option ssh '-o CheckHostIP=no -o Compression=yes -o CompressionLevel=6 -o IdentityFile=/root/.ssh/id_rsa -o LogLevel=INFO -o ServerAliveCountMax=3 -o ServerAliveInterval=60 -o StrictHostKeyChecking=yes -o TCPKeepAlive=yes -o VerifyHostKeyDNS=no -o ExitOnForwardFailure=yes -nN -p 22 USERNAME@example.com'
option remoteport '22223'
option localhost '127.0.0.1'
option localport '22'
option gatetime '0'
option monitorport '0'
option poll '600'
</code></pre>
<h2 id="wsr-2533dhpl--openwrt-">WSR-2533DHPL に OpenWRT をインストール</h2>
<p>標準のファームウェア (バージョンは記録し忘れた) の WSR-2533DHPL にブラウザでアクセスし、
ファームウェアの更新で
openwrt-23.05.0-mediatek-mt7622-buffalo_wsr-2533dhp2-squashfs-factory.bin
を選択すると OpenWRT をインストールできた。</p>
<h2 id="section-2">参考</h2>
<ul>
<li><a href="https://loneb.net/archives/3472">https://loneb.net/archives/3472</a></li>
<li><a href="https://qiita.com/somainit/items/e0a41217c61858a36667">https://qiita.com/somainit/items/e0a41217c61858a36667</a></li>
</ul>
tag:transitive.info,2023-11-02:/2023/11/01/scrcpy-android-ubuntu/
scrcpy で Android の画面を Ubuntu に表示する
2023-11-01T15:00:00Z
2023-11-01T15:00:00Z
<h1 id="scrcpy--android--ubuntu-">scrcpy で Android の画面を Ubuntu に表示する</h1>
<h2 id="ubuntu-">Ubuntu のパッケージのインストール</h2>
<p>Ubuntu 23.04 で scrcpy は apt でインストールできる。</p>
<pre><code>apt install scrcpy
</code></pre>
<h2 id="android-">Android での準備</h2>
<p>ビルド番号を何度かタップして「開発者向けオプション」を有効にする。
「開発者向けオプション」の「USBデバッグ」を有効にする。</p>
<h2 id="usb--android--ubuntu-">USB 接続で Android の画面を Ubuntu に表示する</h2>
<p>USB で Ubuntu の PC と接続し、Ubuntu で</p>
<pre><code>scrcpy
</code></pre>
<p>を実行すれば Android の画面が PC に表示される。</p>
<h2 id="wifi--android--ubuntu-">Wifi 接続で Android の画面を Ubuntu に表示する</h2>
<p>Android で「ワイヤレスデバッグ」を有効にすると、「ワイヤレスデバッグ」にある項目を選択できるようになる。
「ペア設定コードによるデバイスのペア設定」をクリックして「Wifi ペア設定コード」と
「IP アドレス:ポート番号」を確認する。</p>
<pre><code>adb pair <IP アドレス>:<ポート番号>
</code></pre>
<p>を実行し、ペア設定コードを入力して、ペアリングを行う。
「ワイヤレスデバッグ」のところに書いてある IP アドレスとポート番号を使って</p>
<pre><code>adb connect <IP アドレス>:<ポート番号>
</code></pre>
<p>とする。この後に scrcpy を実行すれば良い。</p>
tag:transitive.info,2023-10-29:/2023/10/29/ubuntu-pt3-mirakurun-epgstation/
Ubuntu 24.04 で PT3 を Mirakurun と EPGStation で使う
2023-10-28T15:00:00Z
2023-10-28T15:00:00Z
<h1 id="ubuntu-2404--pt3--mirakurun--epgstation-">Ubuntu 24.04 で PT3 を Mirakurun と EPGStation で使う</h1>
<p>24.04 は開発中だが LTS なので 23.10 ではなく、24.04 のリポジトリを使うことにしておく。</p>
<h2 id="pt3">PT3のドライバ</h2>
<p>特に追加でインストールすることなく使える。
/dev/dbv 以下でアクセスできる。</p>
<pre><code>apt install dvb-tools libpcsclite-dev pcscd pcsc-tools libccid
</code></pre>
<h2 id="mirakurun-epgstation-">Mirakurun-EPGStation のインストール</h2>
<p>docker を使うことにする。</p>
<pre><code>apt install docker.io docker-compose
</code></pre>
<p>ホストの pcscd は止める。</p>
<pre><code>systemctl stop pcscd.socket
systemctl disable pcscd.socket
</code></pre>
<p>インストールのスクリプトが用意されているので</p>
<pre><code>curl -sf https://raw.githubusercontent.com/l3tnun/docker-mirakurun-epgstation/v2/setup.sh | sh -s
</code></pre>
<p>とする。</p>
<pre><code>cd docker-mirakurun-epgstation
docker-compose run -rm -e SETUP=true mirakurun
sudo docker-compose up -d
</code></pre>
<p>で実行できる。チャンネルスキャンを行う。</p>
<pre><code>curl -X PUT "http://localhost:40772/api/config/channels/scan?type=GR&setDisabledOnAdd=false&refresh=true"
curl -X PUT "http://localhost:40772/api/config/channels/scan?type=BS&setDisabledOnAdd=false&refresh=true"
curl -X PUT "http://localhost:40772/api/config/channels/scan?type=CS&setDisabledOnAdd=false&refresh=true"
</code></pre>
<p>ブラウザでポート 40772 で Mirakurun に、8888 で EPGStation にアクセスできる。</p>
<h2 id="section">ディスクのチェック</h2>
<p>起動時のディスクのチェックを止める。
/etc/fstab で</p>
<pre><code>UUID=4fdb208f-692e-484c-bf27-75acdbbb7354 / ext4 errors=remount-ro 0 1
</code></pre>
<p>となっている6番目の1を0にする。
システムが保存されているパーティションのチェックを行うには</p>
<pre><code>touch /forcefsck
reboot
</code></pre>
<p>とする。/home は別のパーティションを割り当てているが</p>
<pre><code>umount /home
fsck -y /dev/sdb1
</code></pre>
<p>のようにしてチェックできる。</p>
<h2 id="wakeonlan">wakeonlan</h2>
<pre><code>nmcli con show
</code></pre>
<p>で NAME を確認して</p>
<pre><code>sudo nmcli c modify "有線接続 1" 802-3-ethernet.wake-on-lan magic
</code></pre>
<p>などとする。</p>
<h2 id="section-1">参考</h2>
<ul>
<li><a href="https://horaku.shonanwalker.com/post-3099/">https://horaku.shonanwalker.com/post-3099/</a></li>
<li><a href="https://blog.abekoh.dev/posts/ubuntu2204-mirakurun-epgstation">https://blog.abekoh.dev/posts/ubuntu2204-mirakurun-epgstation</a></li>
<li><a href="https://nyanonon.hatenablog.com/entry/20210908/1631083114">https://nyanonon.hatenablog.com/entry/20210908/1631083114</a></li>
</ul>
tag:transitive.info,2023-07-15:/2023/07/15/lifebook-wu-x-h1-ubuntu-windows-dual-boot/
LIFEBOOK WU-X/H1 での Ubuntu 23.04 と Windows 11 のデュアルブートと設定
2023-07-14T15:00:00Z
2023-07-14T15:00:00Z
<h1 id="lifebook-wu-xh1--ubuntu-2304--windows-11-">LIFEBOOK WU-X/H1 での Ubuntu 23.04 と Windows 11 のデュアルブートと設定</h1>
<p>LIFEBOOK WU-X/H1 には Windows 11 がインストールされているので、 Ubuntu とのデュアルブートにすることにした。</p>
<h2 id="windows-11">Windows 11</h2>
<h3 id="section">回復ドライブの作成</h3>
<p>32GB 以上の USB メモリを用意して「回復ドライブの作成」を実行する。</p>
<h3 id="ssd-">SSD 交換</h3>
<p>SSD を交換後に回復ドライブを使って Windows をインストールする。
SSD はEFI パーティションなどを除いてすべてを使ったパーティションが作成された。</p>
<h3 id="section-1">ドライブの暗号化を無効にする</h3>
<p>「コントロールパネル」から「BitLockerドライブ暗号化」を選択し、「Bitlockerを無効にする」を実行する。
ドライブの暗号化を無効にしないと、Ubuntu を USB メモリから起動するとドライブがロックされた。
マイクロソフトのアカウントにキーが保存されているので、それを入力することでロックを解除できた。</p>
<h3 id="secure-boot-">Secure boot を向こうにする</h3>
<p>起動時に F2 を押すと BIOS に入ることができるので、Secure boot を向こうにする。</p>
<h3 id="utc-">ハードウェアクロックを UTC にする</h3>
<p>Ubuntu を起動した後に時刻がずれないように UTC にする。管理者で実行した PowerShell で</p>
<pre><code>reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
</code></pre>
<p>とする。</p>
<h2 id="ubuntu-2304">Ubuntu 23.04</h2>
<h3 id="ubuntu-">Ubuntu のインストール</h3>
<p>Windows のパーティションを縮小して、Ubuntu 23.04 をインストールした。
当たり前だが、ドライブが暗号化されていると、パーティションを縮小できない。
手動で ETF、/、/home のパーティションを作り、インストールした
(Windows の ETF の他に追加で 1GB 程度の ETF のパーティションを作った)。</p>
<h3 id="section-2">使用するパッケージのインストール</h3>
<pre><code>apt update
apt full-upgrade
apt install language-pack-ja language-pack-gnome-ja openbox obconf obsession tint2 compton xfce4-power-manager fcitx5-mozc gnome-keyring volumeicon-alsa nitrogen hsetroot blueman thunar thunar-archive-plugin lxrandr lxappearance "numix*" file-roller pavucontrol rofi xclip lv zsh net-tools vim emacs migemo-el tmux terminator curl bison tsocks rar ripgrep silversearcher-ag fzf trash-cli wmctrl xcompmgr gnuplot maxima-emacs pngtools pngcheck pngcrush pngquant build-essential automake cmake texlive texlive-lang-cjk texlive-luatex texlive-xetex texlive-science texlive-bibtex-extra texlive-fonts-extra latex-cjk-all latexmk latexdiff biber libreoffice-writer libreoffice-calc libreoffice-impress libreoffice-draw libreoffice-l10n-ja gimp gimp-help-ja inkscape vlc imagej qiv geeqie mcomix gnucash aspell conky dunst "fonts-takao*" "fonts-ipa*" fonts-vlgothic fonts-dejavu fonts-ricty-diminished jabref "evince*" pandoc git git-svn mercurial gcc llvm clang libxinerama-dev libxrandr-dev libxmu-dev libxdo-dev libopenblas-dev libsqlite3-dev libgsl-dev libgmp3-dev libmpfr-dev libmpc-dev libglc-dev libmpfi-dev freeglut3-dev libopenmpi-dev libgl2ps-dev libmagickwand-dev libyaml-dev libssl-dev libcurl4-openssl-dev libffi-dev libgdbm-dev liblzma-dev libleveldb-dev libfftw3-dev libargtable2-dev libreadline-dev valgrind gscan2pdf libtiff-tools djvulibre-bin djview pdftk-java jpeginfo pdf2djvu global exuberant-ctags eblook lookup-el eb-utils openssh-server sshfs unison encfs wakeonlan ubuntu-restricted-extras chromium-browser chromium-browser-l10n virtualbox virtualbox-guest-additions-iso virtualbox-ext-pack
</code></pre>
<h3 id="section-3">タッチパッドの設定</h3>
<p>タップを有効にするために xinput でタッチパッドを探して</p>
<pre><code>xinput set-prop "0X53 0X59 0X4E 0X50 06CB:CED3Touchpad" "libinput Tapping Enabled" 1
</code></pre>
<p>を実行する。openbox を使っているので ~/.config/openbox/autostart.sh に書き込んだ。</p>
<h3 id="section-4">マイクが動かない</h3>
<p><a href="https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html#digital-mic-issues">https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html#digital-mic-issues</a>
を参考に /etc/modprobe.d/alsa-base.conf に</p>
<pre><code>options snd_sof_intel_hda_common dmic_num=4
</code></pre>
<p>を書き込むとマイクが動くようになった。</p>
<h3 id="grub--timeout-">GRUB の TIMEOUT を短くする</h3>
<p>/etc/default/grub の GRUB_TIMEOUT を編集する。</p>
<pre><code>GRUB_TIMEOUT=2
</code></pre>
<p>などとして</p>
<pre><code>update-grub
</code></pre>
<p>とする。</p>
tag:transitive.info,2022-11-22:/2022/11/22/ubuntu2204-mattermost-installation/
Ubuntu 22.04 に Mattermost をインストールする
2022-11-21T15:00:00Z
2022-11-21T15:00:00Z
<h1 id="ubuntu-2204--mattermost-">Ubuntu 22.04 に Mattermost をインストールする</h1>
<h2 id="mattermost-team-edition-">Mattermost Team Edition をインストールする場合</h2>
<p>root で作業する。
Mattermost Team Edition を
<a href="https://docs.mattermost.com/upgrade/version-archive.html">https://docs.mattermost.com/upgrade/version-archive.html</a>
からダウンロードする。</p>
<pre><code>wget https://releases.mattermost.com/7.4.0/mattermost-team-7.4.0-linux-amd64.tar.gz
</code></pre>
<p>ファイルを解凍して、/opt/mattermost にする。</p>
<pre><code>tar xvf mattermost-team-7.4.0-linux-amd64.tar.gz
mv mattermost /opt
mkdir /opt/mattermost/data
useradd --system --user-group mattermost
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
</code></pre>
<p>ここでは MariaDB を使うことにする。</p>
<pre><code>apt install mariadb-server mariadb-client
</code></pre>
<p>まず</p>
<pre><code>mysqladmin -u root password
</code></pre>
<p>で MariaDB の root のパスワードを設定する。</p>
<pre><code>mysql -u root -p
</code></pre>
<p>で MariaDB のコマンドラインを実行する。</p>
<pre><code>create user mmuser identified by 'PASSWORD';
create database mattermost;
grant all privileges on mattermost.* to mmuser@localhost;
</code></pre>
<p>/opt/mattermost/config/config.json
の “SqlSettings” のところに MariaDB の設定に書き換える。</p>
<pre><code>"SqlSettings": {
"DriverName": "mysql",
"DataSource": "mmuser:PASSWORD@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8&writeTimeout=30s",
</code></pre>
<p>実行するには</p>
<pre><code>sudo -u mattermost /opt/mattermost/bin/mattermost
</code></pre>
<p>とする。http://localhost:8065/ でアクセスできる。</p>
<p>結局、以下のように Mattermost Omnibus をインストールして運用することにした。</p>
<h2 id="lxd--mattermost-omnibus-">LXD を使って Mattermost Omnibus をインストールする</h2>
<h3 id="lxd--ubuntu-2004-">LXD のインストールと Ubuntu 20.04 のコンテナ</h3>
<p>Ubuntu 22.04 のサーバを使っているが、
Mattermost Omnibus をインストールするには Ubuntu 18.04 と 20.04 が必要なので、
LXD で Ubuntu 20.04 を動かしてインストールすることにした。</p>
<pre><code>snap install lxd
lxd init
</code></pre>
<p>として LXD をインストールする。</p>
<pre><code>lxc image list ubuntu: amd64
</code></pre>
<p>で Ubuntu 20.04 のイメージを探す。</p>
<p>コンテナ名を mattermost-omnibus として</p>
<pre><code>lxc launch images:ubuntu/20.04 mattermost-omnibus
</code></pre>
<p>でダウンロードして実行する。</p>
<pre><code>lxc list
</code></pre>
<p>で確認する。</p>
<pre><code>lxc shell mattermost-omnibus
</code></pre>
<p>でコンテナのシェルを実行する。</p>
<p>Conoha VPS で実行すると、コンテナの IPv4 の割り当てがなかった。
<a href="https://discuss.linuxcontainers.org/t/lxd-bridge-doesnt-work-with-ipv4-and-ufw-with-nftables/10034/22">https://discuss.linuxcontainers.org/t/lxd-bridge-doesnt-work-with-ipv4-and-ufw-with-nftables/10034/22</a>
に Ubuntu のパッケージの ufw をアンインストールして、snap の ufw を使うという方法が書いてあり、
実行するとコンテナの IP アドレスが設定された。</p>
<pre><code>ufw disable
apt remove ufw
apt purge ufw
snap install ufw
ufw enable
</code></pre>
<p>ファイルのダウンロードができなかったが</p>
<pre><code>ufw allow in on lxdbr0
ufw route allow in on lxdbr0
</code></pre>
<p>とするとうまく動くようになった。
ufw をインストールし直した結果、SSH のポートが閉じられてしまうので</p>
<pre><code>ufw allow 22
</code></pre>
<p>としておく。</p>
<h3 id="mattermost-omnibus-">Mattermost Omnibus のインストール</h3>
<p>コンテナ (コンテナ名 mattermost-omnibus) の 80 と 443 ポートをホストのポートに対応させる。</p>
<pre><code>lxc config device add CONTAINER_NAME DEVICE_NAME proxy listen=tcp:0.0.0.0:PORT connect=tcp:127.0.0.1:PORT bind=host
</code></pre>
<p>で設定できるので</p>
<pre><code>lxc config device add mattermost-omnibus port-http proxy listen=tcp:0.0.0.0:80 connect=tcp:127.0.0.1:80 bind=host
lxc config device add mattermost-omnibus port-https proxy listen=tcp:0.0.0.0:443 connect=tcp:127.0.0.1:443 bind=host
</code></pre>
<p>とする。設定を</p>
<pre><code>lxc config show mattermost-omnibus
</code></pre>
<p>で確認する。
ufw でファイアウォールが設定されている場合は</p>
<pre><code>ufw allow 80
ufw allow 443
</code></pre>
<p>とする。必要なソフトウェアをインストールし、Mattermost Omnibus のレポジトリの設定を行う。</p>
<pre><code>apt install curl gnupg software-properties-common net-tools
curl -o- https://deb.packages.mattermost.com/repo-setup.sh | bash
</code></pre>
<p>apt で mattermost-omnibus のパッケージを</p>
<pre><code>apt install mattermost-omnibus
</code></pre>
<p>でインストールすればよいのだが、テストのインストールで SSL を使わないときは環境変数 MMO_HTTPS=false として</p>
<pre><code>MMO_HTTPS=false apt install mattermost-omnibus
</code></pre>
<p>とする。ドメイン名のところはテストの VirtualBox のインストールでは IP アドレスを入れた。</p>
<pre><code>netstat -lntup
</code></pre>
<p>でポートを確認できる。
インストールがうまくいっていればホストの IP アドレスで Mattermost にアクセスできる。</p>
<h3 id="postfix-">postfix のインストール</h3>
<p>Mattermost がメールを送信するためにメールサーバの設定が必要になる。ここでは、メールサーバは送信だけで、受信は行わないとする。</p>
<pre><code>apt install postfix
</code></pre>
<p>このとき、「Internet Site」を選び、次の入力でドメイン名を設定する。
/etc/postfix/main.cf を編集して myhostname にドメイン名を設定した。</p>
<pre><code>systemctl reload postfix.service
</code></pre>
<p>gmail に送信してみるとうまくいかず、DNS で SPF レコードを設定する必要があった。
SMTP サーバは外部から接続できない状態であり、ポート 25 で動いていた。</p>
<h2 id="mattermost-">Mattermost の設定</h2>
<h3 id="section">システムコンソール</h3>
<p>最初のアクセスで作成したユーザが管理者になる。
ログインすると「システムコンソール」で設定ができる。以下の設定を行った。</p>
<ul>
<li>「言語」で日本語にする。</li>
<li>「ユーザーとチーム」
<ul>
<li>ダイレクトメッセージの対象範囲</li>
<li>チームメイトの名前の表示</li>
<li>電子メールアドレスを表示する</li>
</ul>
</li>
<li>「User Satisfaction Surveys」で無効にする。</li>
<li>「Bleve」で有効にする。
「IndexDir」は gihyo.jp の記事に合わせて /var/opt/mattermost/bleveindexes にする。</li>
<li>「SMTP」で設定する。</li>
<li>「通知」で通知のメールの設定をする。
メールでの通知が頻繁にしたくないので「電子メールバッチ処理を有効にする」を有効にした。</li>
<li>「権限」でユーザの権限を設定する。</li>
<li>「お知らせ」で「エンドユーザー通知を有効にする」を無効にする。</li>
</ul>
<h3 id="section-1">日本語の表示</h3>
<p>システムコンソールで日本語にしても、最初に登録したユーザの表示は英語のままであった。
ユーザの設定で日本語にするには「Settings」「Display」「Language」で「日本語」にする。</p>
<h3 id="section-2">ユーザの削除</h3>
<p>ユーザを削除はウェブページからはできないようで、次のようにして行った。</p>
<pre><code>mmctl config set ServiceSettings.EnableAPIUserDeletion true --local
mmctl auth login https://MATTERMOST_URL/
mmctl user delete USER_EMAIL_ADDR
</code></pre>
<p>credentials は</p>
<pre><code>mmctl auth list
</code></pre>
<p>で確認して</p>
<pre><code>mmctl auth delete CONNECTION_NAME
</code></pre>
<p>で削除できる。</p>
<h3 id="section-3">チームの削除</h3>
<p>チームの削除もユーザーと同様なコマンドで行える。mmctl auth login でログインした状態で</p>
<pre><code>mmctl config set ServiceSettings.EnableAPITeamDeletion true --local
mmctl team delete TEAM_NAME
</code></pre>
<p>とする。</p>
<h2 id="section-4">参考</h2>
<ul>
<li><a href="https://docs.mattermost.com/upgrade/version-archive.html">https://docs.mattermost.com/upgrade/version-archive.html</a></li>
<li><a href="https://zenn.dev/tantan_tanuki/articles/7796a4f1d6d1b0">https://zenn.dev/tantan_tanuki/articles/7796a4f1d6d1b0</a></li>
<li><a href="https://linux-svr.com/%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E4%BB%AE%E6%83%B3%E5%8C%96/62.php">https://linux-svr.com/%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E4%BB%AE%E6%83%B3%E5%8C%96/62.php</a></li>
<li><a href="https://gihyo.jp/admin/serial/01/ubuntu-recipe/0700">https://gihyo.jp/admin/serial/01/ubuntu-recipe/0700</a></li>
<li><a href="https://gihyo.jp/admin/serial/01/ubuntu-recipe/0702">https://gihyo.jp/admin/serial/01/ubuntu-recipe/0702</a></li>
<li><a href="https://gihyo.jp/admin/serial/01/ubuntu-recipe/0726">https://gihyo.jp/admin/serial/01/ubuntu-recipe/0726</a></li>
<li><a href="https://discuss.linuxcontainers.org/t/lxd-bridge-doesnt-work-with-ipv4-and-ufw-with-nftables/10034/22">https://discuss.linuxcontainers.org/t/lxd-bridge-doesnt-work-with-ipv4-and-ufw-with-nftables/10034/22</a></li>
</ul>