ProxmoxでWebコンソールからストレージをマウントする(zfs, ext4)
TL;DR
Webコンソールからクラスターを選択し、Disks > ZFS または Disks > Directoryを選び、それぞれ Create: ZFS または Create: Directory で作成することができます。
動機
ターミナルからストレージをマウントしようとすると大変ですよね。パーティションは慎重にやらないといけないし、マウントするパスは迷うし、自動マウントの設定も必要だし...
ProxmoxではWebコンソールからストレージをマウントすることができます。
手順
いずれもクラスター内のメニューから作成できます。なお、DirectoryかZFSかによってマウントパスが違いました。
ZFS の作成
クラスター選択 > Disk > ZFS > Create: ZFS から作成できます。
Create: Directoryのファイルシステムの選択肢にはzfsが無いので注意です。
ちなみに Kingston の2TB なので k2 という名前でマウントしています。Mount K2に引っ掛けたジョーク... 以降の手順も同様です。
作成時のOutputです。
The operation has completed successfully. # /sbin/zpool create -o ashift=12 k2 /dev/nvme0n1p1 # /sbin/zfs set compression=on k2 # systemctl enable zfs-import@k2.service Created symlink /etc/systemd/system/zfs-import.target.wants/zfs-import@k2.service -> /lib/systemd/system/zfs-import@.service. TASK OK
作成後のWebコンソールと、ターミナルから見たパーティション・マウントパスです。
root@pve:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 931.5G 0 disk |-nvme1n1p1 259:1 0 1007K 0 part |-nvme1n1p2 259:2 0 512M 0 part `-nvme1n1p3 259:3 0 931G 0 part nvme0n1 259:4 0 1.8T 0 disk |-nvme0n1p1 259:5 0 1.8T 0 part `-nvme0n1p9 259:6 0 8M 0 part
root@pve:~# findmnt TARGET SOURCE FSTYPE OPTIONS / rpool/ROOT/pve-1 zfs rw,relatime,xattr,noacl |-/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime | |-/sys/kernel/security securityfs securityfs rw,nosuid,nodev,noexec,relatime | |-/sys/fs/cgroup cgroup2 cgroup2 rw,nosuid,nodev,noexec,relatime | |-/sys/fs/pstore pstore pstore rw,nosuid,nodev,noexec,relatime | |-/sys/firmware/efi/efivars efivarfs efivarfs rw,nosuid,nodev,noexec,relatime | |-/sys/fs/bpf none bpf rw,nosuid,nodev,noexec,relatime,mode=700 | |-/sys/kernel/debug debugfs debugfs rw,nosuid,nodev,noexec,relatime | |-/sys/kernel/tracing tracefs tracefs rw,nosuid,nodev,noexec,relatime | |-/sys/fs/fuse/connections fusectl fusectl rw,nosuid,nodev,noexec,relatime | `-/sys/kernel/config configfs configfs rw,nosuid,nodev,noexec,relatime |-/proc proc proc rw,relatime | `-/proc/sys/fs/binfmt_misc systemd-1 autofs rw,relatime,fd=30,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=33881 |-/dev udev devtmpfs rw,nosuid,relatime,size=14284768k,nr_inodes=3571192,mode=755,inode64 | |-/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 | |-/dev/shm tmpfs tmpfs rw,nosuid,nodev,inode64 | |-/dev/hugepages hugetlbfs hugetlbfs rw,relatime,pagesize=2M | `-/dev/mqueue mqueue mqueue rw,nosuid,nodev,noexec,relatime |-/run tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=2863444k,mode=755,inode64 | |-/run/lock tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k,inode64 | |-/run/rpc_pipefs sunrpc rpc_pipefs rw,relatime | `-/run/user/0 tmpfs tmpfs rw,nosuid,nodev,relatime,size=2863440k,nr_inodes=715860,mode=700,inode64 |-/k2 k2 zfs rw,xattr,noacl |-/rpool rpool zfs rw,noatime,xattr,noacl | |-/rpool/ROOT rpool/ROOT zfs rw,noatime,xattr,noacl | `-/rpool/data rpool/data zfs rw,noatime,xattr,noacl |-/var/lib/lxcfs lxcfs fuse.lxcfs rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other `-/etc/pve /dev/fuse fuse rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other
ext4, xfs の作成
クラスター選択 > Disk > ZFS > Create: Directory から作成できます。
作成時のOutputです。
The operation has completed successfully. # /sbin/mkfs -t ext4 /dev/nvme0n1p1 mke2fs 1.46.2 (28-Feb-2021) Discarding device blocks: 4096/488376320 2625536/488376320 79171584/488376320244322304/488376320412094464/488376320 done Creating filesystem with 488376320 4k blocks and 122101760 inodes Filesystem UUID: 32b206d1-d332-423f-b49f-e95318530dd7 Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848 Allocating group tables: 0/14905 done Writing inode tables: 0/14905 done Creating journal (262144 blocks): done Writing superblocks and filesystem accounting information: 0/14905 done # /sbin/blkid /dev/nvme0n1p1 -o export Created symlink /etc/systemd/system/multi-user.target.wants/mnt-pve-k2.mount -> /etc/systemd/system/mnt-pve-k2.mount. TASK OK
作成後のWebコンソールと、ターミナルから見たパーティション・マウントパスです。
root@pve:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 931.5G 0 disk |-nvme1n1p1 259:1 0 1007K 0 part |-nvme1n1p2 259:2 0 512M 0 part `-nvme1n1p3 259:3 0 931G 0 part nvme0n1 259:4 0 1.8T 0 disk |-nvme0n1p1 259:5 0 1.8T 0 part /mnt/pve/k2 `-nvme0n1p9 259:6 0 8M 0 part
TARGET SOURCE FSTYPE OPTIONS / rpool/ROOT/pve-1 zfs rw,relatime,xattr,noacl |-/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime | |-/sys/kernel/security securityfs securityfs rw,nosuid,nodev,noexec,relatime | |-/sys/fs/cgroup cgroup2 cgroup2 rw,nosuid,nodev,noexec,relatime | |-/sys/fs/pstore pstore pstore rw,nosuid,nodev,noexec,relatime | |-/sys/firmware/efi/efivars efivarfs efivarfs rw,nosuid,nodev,noexec,relatime | |-/sys/fs/bpf none bpf rw,nosuid,nodev,noexec,relatime,mode=700 | |-/sys/kernel/debug debugfs debugfs rw,nosuid,nodev,noexec,relatime | |-/sys/kernel/tracing tracefs tracefs rw,nosuid,nodev,noexec,relatime | |-/sys/fs/fuse/connections fusectl fusectl rw,nosuid,nodev,noexec,relatime | `-/sys/kernel/config configfs configfs rw,nosuid,nodev,noexec,relatime |-/proc proc proc rw,relatime | `-/proc/sys/fs/binfmt_misc systemd-1 autofs rw,relatime,fd=30,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=33881 |-/dev udev devtmpfs rw,nosuid,relatime,size=14284768k,nr_inodes=3571192,mode=755,inode64 | |-/dev/pts devpts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 | |-/dev/shm tmpfs tmpfs rw,nosuid,nodev,inode64 | |-/dev/hugepages hugetlbfs hugetlbfs rw,relatime,pagesize=2M | `-/dev/mqueue mqueue mqueue rw,nosuid,nodev,noexec,relatime |-/run tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=2863444k,mode=755,inode64 | |-/run/lock tmpfs tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k,inode64 | |-/run/rpc_pipefs sunrpc rpc_pipefs rw,relatime | `-/run/user/0 tmpfs tmpfs rw,nosuid,nodev,relatime,size=2863440k,nr_inodes=715860,mode=700,inode64 |-/mnt/pve/k2 /dev/nvme0n1p1 ext4 rw,relatime |-/rpool rpool zfs rw,noatime,xattr,noacl | |-/rpool/ROOT rpool/ROOT zfs rw,noatime,xattr,noacl | `-/rpool/data rpool/data zfs rw,noatime,xattr,noacl |-/var/lib/lxcfs lxcfs fuse.lxcfs rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other `-/etc/pve /dev/fuse fuse rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other
間違って作成した場合
ZFSとDirectoryどちらの場合でも、選択して More から Destroy を選ぶことで削除が可能です。
ZFS の削除
Removed /etc/systemd/system/zfs-import.target.wants/zfs-import@k2.service. wiping block device /dev/nvme0n1p1 /dev/nvme0n1p1: 8 bytes were erased at offset 0x0003b000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00029000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00028000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x0007b000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00069000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00068000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00066000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00065000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x00064000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07bb000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07a9000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07a8000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07a6000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07a5000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07a4000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07fb000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07e9000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07e8000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07e6000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07e5000 (zfs_member): 0c b1 ba 00 00 00 00 00 /dev/nvme0n1p1: 8 bytes were erased at offset 0x1d1c07e4000 (zfs_member): 0c b1 ba 00 00 00 00 00 200+0 records in 200+0 records out 209715200 bytes (210 MB, 200 MiB) copied, 0.189003 s, 1.1 GB/s The operation has completed successfully. TASK OK
ext4, xfs の削除
Removed /etc/systemd/system/multi-user.target.wants/mnt-pve-k2.mount. wiping block device /dev/nvme0n1p1 /dev/nvme0n1p1: 2 bytes were erased at offset 0x00000438 (ext4): 53 ef 200+0 records in 200+0 records out 209715200 bytes (210 MB, 200 MiB) copied, 0.33387 s, 628 MB/s The operation has completed successfully. TASK OK
まとめ
増設したSSDをマウントすることができました。
NestJS Meetup Online #1を振り返って【アンケート分析】 #nestjs_meetup
NestJS Meetup運営のさわらです。
2022年3月18日にNestJS Meetup Online #1が開催されました!
Connpassでは約150名が登録、Youtube Liveは200名以上が視聴し、第一回としては成功と言えたのではないでしょうか。
本記事では第一回の様子を、Connpass、YouTube、Google Formのアンケートの3つから振り返ります。
ちなみに第二回はこちらからご参加いただけます!
TL;DR
Connpass
Connpassからは、イベント参加者の方がどんな媒体から登録してくださったかが分かります。
大まかに言って、Connpassからの流入4割・Twitterからの流入3割・その他がダイレクトやGoogle検索など、と見られます。
ページビューとユニークユーザーが比例しているのも面白いですね。「そんなイベントやってたんだ!?今知った!」というような、イベントを知らない人がまだまだいることが予想されます。
公開直後かイベント直前かでも流入経路が違います。公開直後はTwitterが最大の割合を占めています。
しかし、当日が近づくとConnpassからの流入が増えることが分かります。また、Google検索から来る人がいることも伺えます。
これらの分析結果から、以下のような洞察が得られるかもしれません。
- イベント公開後はTwitterで告知をすべき。Google検索で上位にインデックスされる可能性も高まる。
- Connpassからの流入は思った以上にあるため、イベントページにキーワードを配置するなどのConnpass向けSEOや、前回参加者への次回イベント告知メール送信などは有効である。
- 統計を確認してユニークユーザーの伸びが頭打ちになるまでは告知に注力するべき。
YouTube Live
YouTube Studioでは、ライブ放送の分析を見ることができます。
Meetupの最大同時接続数は66人で、Connpass参加者の46%でした。また、当日以降もアーカイブが視聴され続けています。
イベント中は大きな人数の変動はなく、多くの参加者がイベントを視聴し続けてくださったことが分かります。
一方でチャットは登壇の開始・終了に限定され、ハッシュタグでのツイートのほうが優勢であることが伺えます。
StreamYardの設定次第ですが、ハッシュタグのツイートを画面に表示するようにすると、後から視聴する人がよりライブ感を楽しめるかもしれませんね。
思い切ってYouTube Liveのチャット欄を閉じてしまうのもいいかもしれません。
Google Form アンケート
イベント後のアンケートには、29名の方が回答してくださいました。
NestJSとの関わりですが、仕事で利用している方が50%を超えている結果となりました。
個人的にそこまで普及しているのかと驚きました。また、次回アンケートでは詳細な技術スタック(エンジンやORMなど、NestJS周辺技術)についても聞いてみてもいいかもしれません。
参加者の職種としてはフルスタックエンジニアが半数以上となりました。NestJSらしい結果であると思います。
これを受けて、Connpassのページにフロントエンド向け・フルスタック向けのキーワードを散らすのもいいかもしれません(Next.js、モノリポ、etc...)
一方でLTの満足度は4が最も多く、改善の余地が伺えます。
アンケートの感想には、理解できない部分が多かった、スライドの見づらさ、もっと色々な話を聞きたい、という要望が見られました。
#1
では登壇者が2名だけだったので、 #2
以降のイベントでは登壇者を増やし、内容も初心者〜上級者まで幅広く取るといいかもしれません。
例えば「なぜNestJSを選定したか?」などは、NestJSへの習熟度とは無関係に楽しめますね!
まとめ
初のオンライン開催ということで手探り状態でしたが、多くの方に刺激を与えることができたのは良かったと思います。
#1
の反省を #2
で活かし、より良いイベントにしていきましょう!
#2
の登録は以下から行えます。ぜひご参加くださいませ!
書評 - スーパーユーザーなら知っておくべきLinuxシステムの仕組み
スーパーユーザーなら知っておくべきLinuxシステムの仕組みを読み進めています。まだ半分ほどですが、特に興味があったデバイスとブートに関する章を読み終えたので書評を書きます。
TL;DR
動機
自宅のProxmoxサーバーが再起動後に動かなくなりました。具体的には、ディスクにエラーがあり書き込みを要するすべての処理ができない状況。
(こちらがその問題です。どなたかコメントいただけると嬉しいです。) askubuntu.com
検索しようにも知識が足りない状況だったので、いい機会と思って勉強をはじめました。
手にとって
元々Twitterでの評判を聞いて「いつか読んでみようかな」という程度だったのですが、実際のトラブルの中で藁にもすがる思いで購入。
結果、まさに必要な本でした。 一番知りたかった物理パーティションとLVMの関係やファイルシステムの修復方法について現場の方の言葉で書かれているのがありがたかったのはもちろん、ブート時の仕組みやデバッグの上で役に立つコマンドまで、これまでおざなりにしてきた知識が詰め込まれている本です。
ハンズオンを推奨している点が推せます。一周目は遠慮なく読み飛ばしていいよという注意書きが至るところにある点も笑っちゃいましたが、読者のことを分かっているなと。
クラウドでLinuxを触った経験があり、かつこれから自作PCを始めようという方には特にオススメできます。
デバイス・ディスクとファイルシステムについて
パーティションとファイルシステムの違いも知らず、LVMの名前も知らない状態だったのですが、本を読み色々落書きする中でいい感じに整理できました。
これまで私が混乱していた原因の一つが、Macbookのディスクユーティリティです。 この本では「パーティションとファイルシステムの作成は別々にすべき」と語られていますが、ディスクユーティリティは一緒にやるんですよね。
ハンズオンに当たってはラズパイを用意しました。Macbookのディスク関連ユーティリティはLinuxとは異なっていたりコマンドがなかったりで困ったので。
Linuxカーネルの起動・ユーザー空間について
そもそもOSが起動する仕組みが分かっていなかったのですが、ログを見ても怖くない程度には理解できたと思います。
特に、BIOSがOSのバイナリを探す時点ではファイルシステムはロードされていない、というのは言われればそのとおりで、納得感がありました。
initについても、System Vなどの聞いたことある歴史的経緯をちょいちょい入れてくれるので頭に入りやすかったです。
まとめ
読み終わった後に振り返ると逆に何を知らなかったのか分からなくなる、身になる本でした。
後半にはネットワークの章もあり、読むのが楽しみです。
2021年に読んだ漫画約250冊のベスト10
2020年に引き続き、2021年も素晴らしい作品に出会えました。 人生に影響を与えたであろう順にトップ10を選んでいます。よかったら見てみて下さい。
- 1位 ク・ジョンイン - 秘密を語る時間
- 2位 ヤマシタトモコ - 違国日記
- 3位 小野佳苗 - しようよ
- 4位 海野つなみ - 逃げるは恥だが役に立つ
- 5位 近藤聡乃 - A子さんの恋人
- 6位 藤本タツキ - チェンソーマン
- 7位 藤本タツキ - ルックバック
- 8位 雁須磨子 - あした死ぬには、
- 9位 九井諒子 - ダンジョン飯
- 10位 ほったゆみ・小畑健 - ヒカルの碁
- まとめ
1位 ク・ジョンイン - 秘密を語る時間
自分のトラウマやもやもやを言語化するのを手伝ってくれる、素晴らしい本でした。
幼い頃に性被害に遭った主人公が、その経験と向き合ってゆく話です。すでに一度ブログにも書いています。
性被害について考えるきっかけを与えてくれた本でした。
2位 ヤマシタトモコ - 違国日記
2021年、10周くらい読んだと思います。両親を亡くした子どもと、その子を引き取ることになった叔母の話。
ヤマシタトモコ先生はBLをよく描いていらっしゃるようなのですが、そこで培った?他人同士の関係性が変わってゆく描写がとてもよいです。
現実世界で起きる社会問題も度々作中で取り上げられており(それも自然な形で)、こういう、問題があることを記して行く姿勢って良いなぁと思いました。
登場人物は皆さん好みですが、醍醐さんの影のある陽キャの感じとか好きです。
3位 小野佳苗 - しようよ
オムニバス形式で延々とセックスの話です。漫画版の佐伯ポインティと言っても過言ではない。
女性ってセックスについてこんな事考えているんだ〜、と面白く読めたので、「しようよ」前後である意味人生が変わりました。
4位 海野つなみ - 逃げるは恥だが役に立つ
ドラマで流行っているので敬遠していたのですが、いざ読んだらハッピーな気持ちになりました。
ドラマ新春スペシャルで社会問題山盛りだったので、原作準拠してるのかな?と心配になったのですが、いざ読んだら原作も社会問題山盛りでした。
ラブコメ定期的に摂取していきたいですね。
5位 近藤聡乃 - A子さんの恋人
アラサーの若者たちが、恋と人間関係に奔走する話...なんですけど。これ上手く伝えるの難しいですね...
キャラクターの憎めなさ、人間らしさが素敵です。学園モノに近いかも知れないですね。
好きなエピソードはあいこの乱です。
6位 藤本タツキ - チェンソーマン
ご都合主義のないスプラッターバトル!人がどんどん死にます。
HUNTER X HUNTERが好きな人は好きなはずですね。
7位 藤本タツキ - ルックバック
京アニの放火から約1年後に書かれた作品。
漫画を描いて弔う、喪に服すやり方があるんだと感動しました。
8位 雁須磨子 - あした死ぬには、
更年期のお姉さんたちが主役の漫画。これに限らず、女性っていう知らない生き物を扱っている作品が好きですね。
9位 九井諒子 - ダンジョン飯
世界観の作り込みが素敵なファンタジー世界の漫画。異世界の料理はだいたい好きで、これ以外に空挺ドラゴンズやハクメイとミコチも好き。
10位 ほったゆみ・小畑健 - ヒカルの碁
Twitterの広告で懐かしくなって、久しぶりに読んだら泣いてしまった。昨年だけで5周くらい読んでいる。
まとめ
自分の知らない世界を漫画を通して知ることができる、というのが好きです。そういう意味で昨年はいい漫画にたくさん出会えました! 今年は漫画だけでなく、小説や映画も守備範囲にしてみようかしら。
書評 - Windowsインフラ管理者入門
個人的に仮想環境でWindowsの運用を始めたので、セキュリティやパフォーマンスの設定の基本を知るために読みました。 当初の目的は果たせなかったものの、むしろ業務で気になっていた・今後使いそうな知識がインプットできたのでよかったです。
TL;DR
- 本書の内容はインストール・Active Directory設定・運用の3つに分かれる
- インストールやActive Directoryの設定では独特な概念が多く、事前に単語を目にできたのは良かった
- 浅く広くな内容であるとともに実践的なアドバイスも多く、特に運用で利用するツールは早速使ってみたい
詳細
もともとはレジストリの編集について知りたくて本を購入したのですが、その点では期待とは違った本でした。
一方、Windows独特な概念を知れたのが良かったです。
例えば、Windowsの複雑なエディションやCAL・アクティベーション方法は複雑で、生兵法でやってしまわないようにと心がけました。 歴史的経緯にも触れており、さすが10年来の技術者の書いた本という感じです。 もっとも本書はWindows8までなので、Windows11の出ている現在では事情が違うかも知れません。
Active Directoryについても基本的な記述があり、今後関わる際に立ち戻って読もうと思いました。 ただ、いきなりActive Directoryの説明をされても、手元に触れる環境がないので実感はわきませんでした。テスト用環境の作り方など指南してほしかったのですが、それは専門書を求めます。
まとめ
業務でWindowsのインフラを管理する人向けの本でした。必要に応じて読み直します。
日本語校正ツールTomarigiをWindows 10で使う
青山学院大学の日本語表現法開発プロジェクトから誕生した日本語校正ツール「Tomarigi」をWindows10で使用しました。
いくつか躓いたポイントがあったのでまとめます。
TL;DR
MecabとCabochaはShift-JISで導入する
TomarigiのWebサイトに書いてあるとおり、※デフォルトのインストールオプションにて(文字コードは、Shift_JIS)
インストールする必要があります。
TomarigiのZipファイルはShift-JISとして解凍する
TomarigiのアプリはShift-JISで圧縮されているので、同様にShift-JISで解凍する必要があります。
私はWSLでUbuntuを起動して対処しました。
cd /mnt/Users/hiroga/Downloads/ unzip -O sjis Tomarigi0325.zip
Unicode対応ではないプログラムの言語を設定する
職場の先輩に指摘されて分かったのですが、Unicode以外の文字を何として扱うか明示的に指定する必要がありました。
インストールし直してる。インストーラーが化けるって何 pic.twitter.com/YbAYw4MScO
— さわら (@xhiroga) 2022年1月10日
language for non-Unicode programs が日本語になっていないと思われ。
— Takuya Otani (@takkyun) 2022年1月10日
以下の通り、コントロール パネル > 時計と地域 > 地域 > 日付、時刻、数値形式の変更 > 管理 > Unicode対応ではないプログラムの言語
から 日本語
を選択肢ます。
まとめ
文字コードの扱いをShift-JISに統一することで起動することができました。
Windowsでホームディレクトリがメールアドレスの先頭5文字になってしまったのを直す
TL;DR
- Windowsに初手Microsoftアカウントでログインしたら、ホームディレクトリがメールアドレスの先頭5文字になってしまった
- レジストリの修正とフォルダ名の修正だけでは不十分
- OneDriveからサインアウトしておくこと、Quick Accessのピンを削除しておくことも必要
動機
WindowsにMicrosoftアカウントでログインすると、ホームディレクトリの名前がメールアドレスの先頭5文字になってしまうようです。
Windowsに勧められるがままにアカウントを作成したら、なんだか途切れてほしくないところで切れて困りました。
ちなみに、他にも困っている人はそこそこいるようでした。
修正方法
基本的に以下のブログの勧めに従ったものの、いくつか事前にやっておけばよかったポイントがあります。
Quick Accessの削除
Quick Accessのショートカットがホームディレクトリ内のOneDriveのフォルダを指していると、エクスプローラーを開くたびに警告が出てしまいます。
Unpinするか、手順終了後にショートカットのLocationを変更すると良さそうです。
OneDriveの停止
Setting > Account > Unlink this PC
でPCの接続を外しておいたほうが良いです。記憶が定かではないものの、確か同期するフォルダが見つからないことの警告が出たような...?
まとめ
始めはローカルアカウントでログインしつつ、一通り設定が終わってからMicrosoftアカウントでログインするのが良さそうです。