Arch Linux

ubuntu install

VirtualBoxに入れてみた。

2022/06/19  15:25     3,654,957,056 ubuntu-22.04-desktop-amd64.iso

4GのUSBに入れる亊を考えてるのかな? で、インストールした直後の状態。オフィスが入っていて、Windowsのリプレース狙いなのか。

sakae@sakae-VirtualBox:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           198M  1.5M  197M   1% /run
/dev/sda3        29G  8.9G   19G  33% /
tmpfs           989M     0  989M   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
/dev/sda2       512M  5.3M  507M   2% /boot/efi
tmpfs           198M   80K  198M   1% /run/user/127
tmpfs           198M   72K  198M   1% /run/user/1000

SDD 30G; Memory 2G; 2CPU での活動状態。

top - 15:57:05 up 6 min,  1 user,  load average: 0.00, 0.10, 0.07
Tasks: 182 total,   1 running, 181 sleeping,   0 stopped,   0 zombie
%Cpu0  :  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1977.5 total,    851.5 free,    427.7 used,    698.2 buff/cache
MiB Swap:   1401.6 total,   1401.6 free,      0.0 used.   1385.8 avail Mem
sakae@sakae-VirtualBox:~$ sudo fdisk /dev/sda
Command (m for help): p

Disk /dev/sda: 30 GiB, 32212254720 bytes, 62914560 sectors
Disk model: VBOX HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F6AC516F-2896-4FA3-9D01-F972BEA9FB4F

Device       Start      End  Sectors  Size Type
/dev/sda1     2048     4095     2048    1M BIOS boot
/dev/sda2     4096  1054719  1050624  513M EFI System
/dev/sda3  1054720 62912511 61857792 29.5G Linux filesystem

Command (m for help): q

腹一杯使いそうな物を入れたら、こうなった。

sakae@sakae-VirtualBox:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        29G   11G   18G  37% /
tmpfs           989M  8.0K  989M   1% /tmp
/dev/sda2       512M  5.3M  507M   2% /boot/efi

/tmpは例によってRAM DISKにしてる。/etc/fstab

tmpfs /tmp tmpfs rw,nosuid,nodev

オイラーみたいに/tmpを生活場所にしてる人にとって、先客がいるのは大迷惑。まあ、公共な場所だから、言い掛かりと反論されたら太刀打ち出来無いけど。

sakae@sakae-VirtualBox:/tmp$ ls
snap.snapd-desktop-integration/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-colord.service-beCesR/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-ModemManager.service-zyBOAW/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-power-profiles-daemon.service-9Zv7Oy/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-switcheroo-control.service-RAfLhQ/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-systemd-logind.service-TUS2jT/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-systemd-oomd.service-ARBvOk/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-systemd-resolved.service-cHYEPb/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-systemd-timesyncd.service-EGPNpO/
systemd-private-ad2c9af317f7448ebfe27c69087e2351-upower.service-jWcDbg/
tracker-extract-3-files.1000/
tracker-extract-3-files.127/
VMwareDnD/

Install Arch linux

思いおこせば2010年にやってるね、 Arch Linux をね。暦で一廻りなんで許せ。ウブは進化の袋小路に入ってしまっていると思うんで、ダイバーシティーと言うか多様性を求めてやってみる。2010年のリンクがそのまま使えるって、なかなか親切。

VirtualBoxにリナと同じ条件でインストールします。参考書は前回見付たやつ。 が、起動するとFatalになった。どうもカーネルが見付られないみたい。

ああ、ISOはこんなのね。

2022/06/21  06:40       903,163,904 archlinux-2022.06.01-x86_64.iso

ウブに比べて小さいISOです。地球温暖化に貢献してます。

VirtualBoxに特有な亊

そこで、arch linux install virtuakbox あたりで検索。

Arch Linuxのインストール(Virtual Box)

VirtualBox

VirtualBox に「Arch Linux」をインストール〈H122-1〉

普通にやっちゃうとBIOSモードになっちゃうのね。EFIモードになるようにVBをセッテングして遣り直し。2nd NICを設定してSSHすればいいよってのは、疎通が確認出来無くて使えなかった。残念。

root login出来無いぞ

多分設定を忘れていたんだと思うけど、loginが拒否されたよ。 もう一度、インストールを遣り直す? そんな面倒したくないな。で、検索。

Reset lost root password

Using a LiveCDの項を実行すればいいんだな。CDから起動するようにVBを設定。これでいいはずなんだけど、CDを読み出してくれずHDDに行っちゃう。はて、BIOSモードからEFIモードになって挙動が変ったんだな。

起動時にファームウェアセッティングを選び、そこからCDを指定。これでやっとCDから起動した。後は、

mount /dev/sda2 /mnt
passwd --root /mnt root

して、パスワードを設定。これで、無事にログイン出来た。 後は、

pacman -Ss foo   ;; パッケージの検索
pacman -S foo    ;; パッケージのインストール
pacman -Qi foo   ;; インストール済みパッケージの検索
pacman -Rd foo   ;; インストール済みパッケージの削除

これを駆使して、好きなものをいれろとな。

インストール状況

リナに自前で追加したの(御仕着せのDeskTopで使う物は無い)とほぼ同じ構成にしてみた。

[sakae@arch ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
dev             972M     0  972M   0% /dev
run             982M  624K  982M   1% /run
/dev/sda2        29G  3.5G   24G  13% /
tmpfs           982M     0  982M   0% /dev/shm
tmpfs           982M  508M  475M  52% /tmp
/dev/sda1       511M   71M  441M  14% /boot
tmpfs           197M     0  197M   0% /run/user/1000

/tmpは何も設定しなくても、RAM DISKになってた。さすがArchな人は分ってる、オイラーと波長が同じだね。/tmpに入ってるのは、コンパイル試験でrubyを入れた残骸です。

下記はtopの状態

top - 13:31:25 up 9 min,  3 users,  load average: 0.00, 0.00, 0.00
Tasks:  93 total,   1 running,  92 sleeping,   0 stopped,   0 zombie
%Cpu0  :  0.0 us,  0.3 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.3 hi,  0.0 si,  0.0 st
%Cpu1  :  0.0 us,  0.0 sy,  0.0 ni, 95.3 id,  0.3 wa,  2.0 hi,  2.3 si,  0.0 st
MiB Mem :   1963.8 total,   1776.5 free,     86.5 used,    100.9 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   1753.1 avail Mem

そして、現在のカーネル状況。Archの場合、いわゆる祭りが無い。祝 Release 22.04 LTS みたいなのがない。粛々と個々のアプリが更新されて行くだけ。途切れがない。

更新方法も独自で、サーバーにあるアプリに手元のものを同期させるって方法。更新されたパッケージリストを取り寄せて、手元で差分をとり、それに応じて、最新版数をインストールするっていう面倒はない。

[sakae@arch ~]$ uname -a
Linux arch 5.18.5-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 16 Jun 2022 20:40:45 +0000 x86_64 GNU/Linux

パッケージのコントロールの要、pacman(8)

-y, --refresh
    Download a fresh copy of the master package database from the
    server(s) defined in pacman.conf(5). This should typically be used
    each time you use --sysupgrade or -u. Passing two --refresh or -y
    flags will force a refresh of all package databases, even if they
    appear to be up-to-date.

インストールしてから、数日後に実行。

[sakae@arch ~]$ sudo pacman -Syu
:: Synchronizing package databases...
 core                  155.9 KiB   834 KiB/s 00:00 [######################] 100%
 extra                1717.4 KiB  14.3 MiB/s 00:00 [######################] 100%
 community               6.7 MiB  19.8 MiB/s 00:00 [######################] 100%
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Packages (8) libwacom-2.3.0-1  maxima-5.46.0-3  maxima-sbcl-5.46.0-3
             qt5-base-5.15.5+kde+r163-1  qt5-svg-5.15.5+kde+r10-1
             qt5-translations-5.15.5+kde+r2-1  sbcl-2.2.5-1  xcb-proto-1.15.2-1

Total Download Size:    61.33 MiB
Total Installed Size:  270.16 MiB
Net Upgrade Size:        3.16 MiB

:: Proceed with installation? [Y/n]

上記は、 apt update && apt upgrade を自動でやってくれるって亊だ。

mlirrorlist

/etc/pacman.d以下のリポジトリィリスト

Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch
Server = https://mirrors.cat.net/archlinux/$repo/os/$arch
Server = http://mirrors.cat.net/archlinux/$repo/os/$arch
Server = https://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = rsync://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
Server = rsync://ftp.tsukuba.wide.ad.jp/archlinux/$repo/os/$arch

これの実行はpython製のアプリなんだけど、インストールCDに存在する。インストール後はpythonが全く入っていない稀有な環境になってる。其の替りperlが主体だけど。gdbを入れるとpythonがくっ付いて來るって塩梅でした。

serial

シリアルコンソール もしもの為の保険です。

VBのシリアル設定が必要。とはいえ、VBからシリアル線が生えてくる訳ではないので、パイプで代用します。パイプの中はTCP/IPな信号が流れます。

ポート1有効
ポート番号 COM1
ホストにパイプ 存在するパイプソケットに接続はOFF
\\.\pipe\mypipename  

端末は、TeraTermを使うと言う普段のPuTTYとは違う陣容です。二重化重要。 TeraTermも同じパイプ名、TCP/IP SSH な設定。

結局、サーバー側でsshdが死んでしまうと用をなさない訳で、完全なシリアルとは違うから、そこんとこは誤解泣きよう。

ctwm for X

2年前の日経Linuxを見てたら、matzさんのDeskTopって、Xfceですって告白されてた。無闇に重いGnomeよりはいいかも。

オイラーは着本的にCUI、たまにGUIするぐらいだからXfceなんて贅沢過ぎる。で、twmより少し進んだctwmにしてみた。

[sakae@arch ~]$ cat .xinitrc
#setxkbmap -option ctrl:swapcaps
xterm -r 80x30 &
ctwm

ctwmの個別設定は、/usr/share/examples/ctwm/system.ctwmrcを、~/.ctwmrcに保存して、好きなようにすればよい。日本語は使う予定がないのでxtermでいいんだけど、フォントがふぉんとに小さいって、みんな不満たらたらですよ。

Xterm なんてのが出てきた。こういう坪を押えた解説はありがたい。参考にします。

なんと、メニューがこれだけって言う潔さ。-rは、白黒反転指令だ。

menu "defops"
{
    "Twm"               f.title
    "Xterm"             !"xterm -r -fa \"Liberation Mono:size=12:antialias=true\" &"
    "Emacs"             !"emacs -r&"
    ""                  f.nop
    "Restart"           f.restart
    "Exit"              f.quit
}

それから、仮想窓の制御も簡単にした。

WorkSpaceManagerGeometry        "160x30-0-0" 3
WorkSpaces {
#    "One"   {"#686B9F" "white" "DeepSkyBlue3" "white" "xpm:background8.xpm"}
#    "Two"   {"#619AAE" "white" "firebrick" "white" "plaid"}
#   "Three" {"#727786" "white" "brown"}
#    "Four"  {"#8C5b7A" "white" "MidnightBlue"}

#    "Five"  {"#727786" "white" "firebrick"}
    "Six"   {"#619AAE" "white" "DeepSkyBlue3"}
    "Seven" {"#8C5b7A" "white" "chartreuse4"}
    "Eight" {"#686B9F" "white" "MidnightBlue"}
}

窓が一杯あったんだけど、そんなにいらない。せいぜい3つあれば十分。窓案内は底部の左よりにあったんだけど、一番右側においやった。これぐらいなら、適当にやったら出来たよ。

RightTitleButton          ":xpm:resize"   = f.fullzoom
#RightTitleButton          ":xpm:cross"    = f.delete

これを入れておくと、タイトルバーの右側にボタンが増える。ボタンのプッシュで窓の最大化と元の大きさを行ったりきたり出来る。コメントを外すと、窓を削除するボタンが出現するけど、危いので有効にしない方が良いだろう。

なんでも、NetBSD 9.Xのデフォルトマネージャに採用されたとかで、きちんと設定すると、それなりに見栄えのするマネージャになるそうだ。 Claude's Tab Window Manager

それから、Windows10のX環境を使う設定もついでにやっておく。 /etc/ssh/sshd_config にある、

X11Forwarding yes
#X11DisplayOffset 10

Forwardingを有効にし、下記のようにDisplayを設定すれば良い。

export DISPLAY=xx.xx.xx.xx:0.0    ## Windows 10 Xsvr

maxima

Arch install記念に、数式処理プログラムを入れてみた。インストール候補が2つ出て来た。組み込みLisp版の奴と、豪華にsbcl版数のやつ。maximaから直ぐにlispに行けるって亊で、速さが取り柄のsbcl版にした。

Maxima 5.42.2 Manual

Maxima を使った物理数学基礎演習ノート

Maximaを活用した数学学習

ソフトウェアとしての数値計算

rmaximaで起動すると、補完が効いて便利です。

[sakae@arch ~]$ rmaxima
Maxima 5.46.0 https://maxima.sourceforge.io
using Lisp SBCL 2.2.5
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) ? trigTAB
trigexpand       trigexpandtimes  trigrat          trigsign
trigexpandplus   triginverses     trigreduce       trigsimp
(%i1) ? trig

others

words

以前rubyで英和辞書を使った。それを入れようとしたら、何と言う亊か、/usr/share/dictが無い。どして? 何かにつられて入って來るの? 例えば、クラッカー御用達のパスワードを暴く奴とか。きっとアイドル辞書を内蔵してるに違いない。

ちょいと調べてみたよ。

John the Ripper is designed to be both powerful and fast. It combines
several cracking modes in one program, and is fully configurable for your
particular needs (you can even define a custom cracking mode using the
built-in compiler supporting a subset of C).

share/john/ascii.chr
share/john/digits.chr
share/john/lm_ascii.chr
share/john/password.lst

アイドル辞書は見当らないなあ。words 2.1-6 これかな? アプリケーション一覧 から丹念に探してくださいって亊か。

emacs fonts color

emacsが28.1ってのはいいんだけど、色が不満。コメントが赤って、背景が黒だと滅法醜いい。 見なくていいよって態度。でも、コメントが頼りのオイラーには、辛い仕打ちだ。何とかならんか? emacs font color ぐらいで検索。

Emacsで、特定の文字の色を変更する 繋がりで、 Emacs のテーマを変更 するなんてのが出てきた。印刷とフォントと色は、オイラーの鬼門ですよ。でも、そうは言っていられないな。ひょっとして、テーマを一発インストールしていないかな? まずは、ウブでstraceしてみた。

sakae@sakae-VirtualBox:/tmp$ grep .elc LOG | grep -v ENO | grep open
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/language/japan-util.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/simple.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/site-lisp/debian-startup.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/site-lisp/dictionaries-common/debian-ispell.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/paren.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/edmacro.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/emacs-lisp/cl-lib.elc", O_RDONLY|O_CLOEXEC) = 7
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/kmacro.elc", O_RDONLY|O_CLOEXEC) = 7
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/cus-edit.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/wid-edit.elc", O_RDONLY|O_CLOEXEC) = 7
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/cus-start.elc", O_RDONLY|O_CLOEXEC) = 7
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/emacs-lisp/easymenu.elc", O_RDONLY|O_CLOEXEC) = 7
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/term/screen.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/term/screen.elc", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/term/xterm.elc", O_RDONLY|O_CLOEXEC) = 7
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/emacs-lisp/bytecomp.elc", O_RDONLY|O_CLOEXEC) = 8
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/emacs-lisp/cconv.elc", O_RDONLY|O_CLOEXEC) = 9
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/emacs-lisp/gv.elc", O_RDONLY|O_CLOEXEC) = 8
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/emacs-lisp/byte-opt.elc", O_RDONLY|O_CLOEXEC) = 8
openat(AT_FDCWD, "/usr/share/emacs/27.1/lisp/term/xterm.elc", O_RDONLY|O_CLOEXEC) = 6

どうもテーマはロードしていないな。ちなみに、テーマをロードするには、

(load-theme 'leuven t)

こんな風にやるみたい。

不思議な亊に気付いた。archの端末を使うと、OpenBSDにログインしてそこでemacsを使っても、arch流の色使いになってしまう。コメントは赤。但しOpenBSDからだとコメントは黄色。

両者共、envで出て来る端末情報は、TERM=tmux-256color だ。archは解釈が違うのかな? どうやって調べたらいいのだろう?

コンソールのカラー出力

srceryというカラースキームは特にemacsをターミナル内でしか使わない人には良かった

2nd NIC

こんなのがインストール時の便利機能で紹介されたけど、ホスト・オンリーでは疎通を確認出来無かった。

# ip addr add 10.0.0.32/24 dev enp0s8

本当は、どうやるんだろう? ぐぐったら、 VirtualBoxでHostからGuestに通信する3つの方法 が紹介されてた。

普通にブリッジでは駄目なの? やってみたよ。試すのは無料ですから。ちゃんと使えた。VBの使い道が拡がったね。

インストールが終了して、本物が起動してくると、sshdが動いていない、ってかインストールされていないんだ。ちゃんとインストールして、sshdを動かしておこう。これ、将来へのメモです。

like apt-file search xxx

Debianとかだと、未知のファイルがどのaptになってるか、上記のようにすれば簡単に検索出来る。Archの場合は?

arch linux xxx

ってググルに聞いてみるのさ。ややありきたりだけど、sqlite3.h はどんなパッケージ? 雑音を排除しての検索なら、include/sqlite3.h ね。

sqlite 3.38.5-1 File List って出てくるから、sqliteでいいんだって分る。嬉しい亊に、本体とヘッダーが一緒に供給されてる。パッケージャは、開発者の気持を分っているね。

gauche 0.9.11-3 なんてのも有る。やはりヘッダーファイル内蔵してる。 思わずsbclに対抗して入れようかと思ったけど、今回は止めてchez schemeって速いやつを自前で入れたよ。

Packman を見ると

pacman -Fy
macman -Fs xxx

を推奨してるなあ。覚えておこう。まあ、新しい亊をやると、脳味噌の負荷が上るんで、ボケないな。認知症予防に最適。

今更ながら、こんなのを見付た。 The Arch Linux Handbook (for install)


This year's Index

Home