2018年6月21日木曜日

latexmk の設定ファイルとうまく付き合う

 latexmk にオプションとして -pdf などを与えるのではなく、主となる .texファイルが存在する作業ディレクトリに latexmkrc ファイルを置いたらどうだろう? という話。

 latexmk では、LaTeX文章のpdf化の手順を選択する方法として、latexmkrc 設定ファイルに変数 $pdf_mode を設定するか、 latexmk にオプションを与える方法があり、オプションのほうが優先されます。
 このオプションが一部のエディタや拡張機能で当然のごとく設定されていると、自分の望むpdf化手順と合わないとき、トラブルの原因となります。
†VisualStudio Code + LaTeX Workshop など。

 主となる .texファイルが存在する作業ディレクトリで、
% latexmk main.tex
とだけ入力すれば .pdf まで出来上がる、というのが理想的な動作ですし、エディタから呼び出すときもトラブルが減るのではないかな? と思うわけです。

 latexmk を呼び出す側には極力オプションを与えず、latexmkrc だけで動作を切り替えることは出来ないでしょうか? 実は、latexmkrc には、以下のように読み込み順が存在します。
       1) The system RC file, if it exists.
       2) The user's RC file, if it exists.
       3) The  RC  file  in  the current working directory.  This file can be named either "latexmkrc" or ".latexmkrc", and the first of these to  be found is used, if any.
       4) Any RC file(s) specified on the command line with the -r option.

 で、latexmkrc の $pdf_mode の数値、 pdf化の手順、 latexmk に与えるオプションとの関係は、以下の通りになります。
  • $pdf_mode = 0 と書くと、pdf を作りません。 (-pdf-)
    • $latex の確認が必要です。
    • $xelatex で .xdvだけを作る方法を確かめていません。-xelatex -pdf- とオプションをつけても、$latex が使われるような…? 
  • $pdf_mode = 1 と書くと、pdflatex を使うことを表します。 (-pdf)
    • $pdflatex の確認が必要です。
  • $pdf_mode = 2 と書くと、tex→ dvi → ps→ pdf とたどります。 (-pdfps)
    • $dvips の確認が必要です。
    • $ps2pdf の確認が必要です。
    • $latex の確認が必要です。
  • $pdf_mode = 3 と書くと、tex→ dvi → pdf となります。 (-pdfdvi)
    • $dvipdf の確認が必要です。
    • $latex の確認が必要です。
  • $pdf_mode=5だと xelatex, xdvipdfmx (-pdfxe ) を使うようです。 上記ドキュメントにはありませんが、 $pdf_mode=4 で lualatex (-pdflua ) を使うようです。
  • $pdf_mode={4,5} (-pdflua, -pdfxe も?)については、古い latexmk には含まれていないようです。 例えば Debian 9.x の latexmk (Ver. 4.41 texlive2016 相当?) には存在しません。texlive2018 の latexmk (Ver. 4.55) なら含まれています。
 というわけで、
  1. ~/.latexmkrc にはツールの設定だけ書いておく。
  2. 作業用ディレクトリ/latexmkrc には $pdf_mode の数値だけ書いておく。
    • ~/.latexmkrc で予め設定しておいてもよい。
    • platex や uplatex を使い分けたいなら、さらに $latex などを書いておく。
  3. latexmk を使うときは -pdf などのオプションを付けない。
という方針は有りなんじゃないかな、と思いました。

 ドキュメントごとにコンパイル方法やツールを変える、というのは、なかなかしんどいと思いますが、様々な LaTeX 環境を体験したい場合や、psfrag など dviware が決め打ちになってしまうパッケージを使う場合は、どうしても避けて通れませんね。(避けたいですけど…)
 そんなときでも、作業用ディレクトリの下に latexmkrc を書いておくという手段は、作業手順をメモする効果もあるので有効かな、と思ったのでした。

2018年5月26日土曜日

Ubuntu 18.04 もしくは Debian 9 で qucs(0.0.18) の digital simulation

qucs ( http://qucs.sourceforge.net/ ) は Ubuntu/Debian系のパッケージが
Ubuntu 14.10 時代で止まっている、という問題があります。

そのため、このバイナリパッケージを dpkg -i で今の Ubuntu 18.04 LTS や Debian 9 にむりやりインストールすると、digital simulation の Model( netlist format ) が VHDL のとき、シミュレーションに失敗します。


例えばこんな回路のシミュレーションをしてみると……Segmentation Failtとか……



これは、依存関係ありとして導入される freehdl (0.0.8-2.2) の freehdl-v2cc が正常に動作しないためです。そのため、これを呼んでいる qucsdigi も巻き添えとなっています。

簡単な対策は、apt install iverilog でverilog を導入し、ModelをVerilogとしてシミュレーションすることです。




VHDLの資産がない、簡単なモデルであれば、これでシミュレーションは出来るようになります。

もし Debian 8 や Ubuntu 14.04 LTS などで、qucs の digital simulation を VHDL ベースで使っている場合は、OSのメジャーバージョンアップに注意が必要です。qucs が正しく動作しなくなります。

で、対策なのですが、Debian 9の場合は以下の手順で VHDL の digital simulation は動くようになりました。

1. freehdl のバージョンを  freehdl (0.0.8-2.1) に下げてholdする。(-libも)
2. g++-4.9を入れる。
3. /usr/lib/pkgconfig/freehdl.pc を編集し、CXXコンパイラが g++ になっているところを g++-4.9 にする。
4. /usr/bin/qucsdigi を編集し、glibtool のとき --tag=CC をつける、という条件を、 libtool のとき、となるように書き換える。

とても つらい。誰かパッケージ作り直してもらえませんかね…ダメですかね…

ちなみに qucs からスピンアウトして spice ベースに移行した qucs-s
https://ra3xdh.github.io/
というものがあり、現在のバージョンは 0.0.20 なのですが、アナログ系のシミュレーションがメインのようで、論理回路のみのシミュレーションには向いてなさそうです。

論理回路の場合は、おそらくもっと別のソフトウェアを使うべきなのかも知れません。

本家のバージョンは 0.0.19 なのですが、追従できているのはWindowsとMacのみで、Linux については前述の通りUbuntuのパッケージングが0.0.18で止まっているわ、debian のほうはパッケージが削除されているわで惨憺たる状況です。需要無いんでしょうか…

2018年5月16日水曜日

WSL の Ubuntu 18.04 をインストールするとこうなる

先日 Ubuntu 18.04 LTS がリリースされたので、PCにisoイメージからインストール出来るか確認作業をしてみたのですが、どうも language-pack-en-base の関係で、たとえ最小インストールをしても英語のロケールに地方対応分が4つほど標準で入ってしまうようで、gnomeの言語設定画面を表示すると追加パッケージの導入を促される、という微妙な感じになってしまっているようです。

で、Windows Subsystem for Linux にも Ubuntu 18.04 LTS が来ているので、こちらはどうなっているかと試してみたところ……

$ apt list --installed | tee aptlist.txt | wc
    481    1921   25777
$ grep language aptlist.txt
language-selector-common/bionic,now 0.188 all [installed]

え、パッケージ多くないですか…? って language-pack-en-baseすら無い…?

$ locale -a
C
C.UTF-8
POSIX
en_US.utf8
$ grep -v ^# /etc/locale.gen | uniq

en_US.UTF-8 UTF-8
$ localedef --list-archive
en_US.utf8

ほんとに無かった…… ということは language-pack-ja を入れればすんなり入るんでしょうか…?

$ sudo apt install language-pack-ja
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
  libfreetype6
Use 'sudo apt autoremove' to remove it.
The following additional packages will be installed:
  language-pack-ja-base
The following NEW packages will be installed:
  language-pack-ja language-pack-ja-base
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 1645 kB of archives.
After this operation, 7577 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://archive.ubuntu.com/ubuntu bionic/main amd64 language-pack-ja-base all 1:18.04+20180423 [1643 kB]
Get:2 http://archive.ubuntu.com/ubuntu bionic/main amd64 language-pack-ja all 1:18.04+20180423 [1896 B]
Fetched 1645 kB in 3s (504 kB/s)
Selecting previously unselected package language-pack-ja-base.
(Reading database ... 28477 files and directories currently installed.)
Preparing to unpack .../language-pack-ja-base_1%3a18.04+20180423_all.deb ...
Unpacking language-pack-ja-base (1:18.04+20180423) ...
Selecting previously unselected package language-pack-ja.
Preparing to unpack .../language-pack-ja_1%3a18.04+20180423_all.deb ...
Unpacking language-pack-ja (1:18.04+20180423) ...
Setting up language-pack-ja (1:18.04+20180423) ...
Setting up language-pack-ja-base (1:18.04+20180423) ...
Generating locales (this might take a while)...
  ja_JP.UTF-8... done
Generation complete.
$ locale -a
C
C.UTF-8
POSIX
en_US.utf8
ja_JP.utf8
$ localedef --list-archive
en_US.utf8
ja_JP.utf8
$ grep -v ^# /etc/locale.gen | uniq

en_US.UTF-8 UTF-8
$ cat /etc/default/locale
LANG=C.UTF-8

入りました。これは便利。Ubuntu 18.04 (WSL) の場合は、language-pack-ja を入れてから LANG を設定するなり sudo update-locale LANG=ja_JP.UTF-8 するなりしたら良い、というわけですね。

パッケージリストはこんな感じです。Debian 9.x と見比べてみると、結構多いです。

$ apt list --installed | tee aptlist.txt | wc
    481    1921   25777
$ cat aptlist.txt
Listing...
accountsservice/bionic,now 0.6.45-1ubuntu1 amd64 [installed]
acl/bionic,now 2.2.52-3build1 amd64 [installed]
acpid/bionic,now 1:2.0.28-1ubuntu1 amd64 [installed]
adduser/bionic,now 3.116ubuntu1 all [installed]
apparmor/bionic,now 2.12-4ubuntu5 amd64 [installed]
apport/bionic,now 2.20.9-0ubuntu7 all [installed]
apport-symptoms/bionic,now 0.20 all [installed]
apt/bionic,now 1.6.1 amd64 [installed]
apt-utils/bionic,now 1.6.1 amd64 [installed]
at/bionic,now 3.1.20-3.1ubuntu2 amd64 [installed]
base-files/bionic,now 10.1ubuntu2 amd64 [installed]
base-passwd/bionic,now 3.5.44 amd64 [installed]
bash/bionic,now 4.4.18-2ubuntu1 amd64 [installed]
bash-completion/bionic,now 1:2.8-1ubuntu1 all [installed]
bc/bionic,now 1.07.1-2 amd64 [installed]
bcache-tools/bionic,now 1.0.8-2build1 amd64 [installed]
bind9-host/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
bsdmainutils/bionic,now 11.1.2ubuntu1 amd64 [installed]
bsdutils/bionic,now 1:2.31.1-0.4ubuntu3 amd64 [installed]
btrfs-progs/bionic,now 4.15.1-1build1 amd64 [installed]
btrfs-tools/bionic,now 4.15.1-1build1 amd64 [installed]
busybox-initramfs/bionic,now 1:1.27.2-2ubuntu3 amd64 [installed]
busybox-static/bionic,now 1:1.27.2-2ubuntu3 amd64 [installed]
byobu/bionic,now 5.125-0ubuntu1 all [installed]
bzip2/bionic,now 1.0.6-8.1 amd64 [installed]
ca-certificates/bionic,now 20180409 all [installed]
cloud-guest-utils/bionic,now 0.30-0ubuntu5 all [installed]
cloud-init/bionic,now 18.2-14-g6d48d265-0ubuntu1 all [installed]
cloud-initramfs-copymods/bionic,now 0.40ubuntu1 all [installed]
cloud-initramfs-dyn-netconf/bionic,now 0.40ubuntu1 all [installed]
command-not-found/bionic,now 18.04.4 all [installed]
command-not-found-data/bionic,now 18.04.4 amd64 [installed]
console-setup/bionic,now 1.178ubuntu2 all [installed]
console-setup-linux/bionic,now 1.178ubuntu2 all [installed]
coreutils/bionic,now 8.28-1ubuntu1 amd64 [installed]
cpio/bionic,now 2.12+dfsg-6 amd64 [installed]
cron/bionic,now 3.0pl1-128.1ubuntu1 amd64 [installed]
cryptsetup/bionic,now 2:2.0.2-1ubuntu1 amd64 [installed]
cryptsetup-bin/bionic,now 2:2.0.2-1ubuntu1 amd64 [installed]
curl/bionic,now 7.58.0-2ubuntu3 amd64 [installed]
dash/bionic,now 0.5.8-2.10 amd64 [installed]
dbus/bionic,now 1.12.2-1ubuntu1 amd64 [installed]
debconf/bionic,now 1.5.66 all [installed]
debconf-i18n/bionic,now 1.5.66 all [installed]
debianutils/bionic,now 4.8.4 amd64 [installed]
diffutils/bionic,now 1:3.6-1 amd64 [installed]
dirmngr/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
distro-info-data/bionic,now 0.37 all [installed]
dmeventd/bionic,now 2:1.02.145-4.1ubuntu3 amd64 [installed]
dmidecode/bionic,now 3.1-1 amd64 [installed]
dmsetup/bionic,now 2:1.02.145-4.1ubuntu3 amd64 [installed]
dns-root-data/bionic,now 2018013001 all [installed]
dnsmasq-base/bionic,now 2.79-1 amd64 [installed]
dnsutils/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
dosfstools/bionic,now 4.1-1 amd64 [installed]
dpkg/bionic,now 1.19.0.5ubuntu2 amd64 [installed]
e2fsprogs/bionic,now 1.44.1-1 amd64 [installed]
eatmydata/bionic,now 105-6 all [installed]
ebtables/bionic,now 2.0.10.4-3.5ubuntu2 amd64 [installed]
ed/bionic,now 1.10-2.1 amd64 [installed]
eject/bionic,now 2.1.5+deb1+cvs20081104-13.2 amd64 [installed]
ethtool/bionic,now 1:4.15-0ubuntu1 amd64 [installed]
fdisk/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
file/bionic,now 1:5.32-2 amd64 [installed]
findutils/bionic,now 4.6.0+git+20170828-2 amd64 [installed]
fonts-ubuntu-console/bionic,now 0.83-2 all [installed]
friendly-recovery/bionic,now 0.2.38 all [installed]
ftp/bionic,now 0.17-34 amd64 [installed]
fuse/bionic,now 2.9.7-1ubuntu1 amd64 [installed]
gawk/bionic,now 1:4.1.4+dfsg-1build1 amd64 [installed]
gcc-8-base/bionic,now 8-20180414-1ubuntu2 amd64 [installed]
gdisk/bionic,now 1.0.3-1 amd64 [installed]
geoip-database/bionic,now 20180315-1 all [installed]
gettext-base/bionic,now 0.19.8.1-6 amd64 [installed]
gir1.2-glib-2.0/bionic,now 1.56.1-1 amd64 [installed]
git/bionic,now 1:2.17.0-1ubuntu1 amd64 [installed]
git-man/bionic,now 1:2.17.0-1ubuntu1 all [installed]
gnupg/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gnupg-l10n/bionic,now 2.2.4-1ubuntu1 all [installed]
gnupg-utils/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpg/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpg-agent/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpg-wks-client/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpg-wks-server/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpgconf/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpgsm/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
gpgv/bionic,now 2.2.4-1ubuntu1 amd64 [installed]
grep/bionic,now 3.1-2 amd64 [installed]
groff-base/bionic,now 1.22.3-10 amd64 [installed]
gzip/bionic,now 1.6-5ubuntu1 amd64 [installed]
hdparm/bionic,now 9.54+ds-1 amd64 [installed]
hostname/bionic,now 3.20 amd64 [installed]
htop/bionic,now 2.1.0-3 amd64 [installed]
info/bionic,now 6.5.0.dfsg.1-2 amd64 [installed]
init/bionic,now 1.51 amd64 [installed]
init-system-helpers/bionic,now 1.51 all [installed]
initramfs-tools/bionic,now 0.130ubuntu3 all [installed]
initramfs-tools-bin/bionic,now 0.130ubuntu3 amd64 [installed]
initramfs-tools-core/bionic,now 0.130ubuntu3 all [installed]
install-info/bionic,now 6.5.0.dfsg.1-2 amd64 [installed]
iproute2/bionic,now 4.15.0-2ubuntu1 amd64 [installed]
iptables/bionic,now 1.6.1-2ubuntu2 amd64 [installed]
iputils-ping/bionic,now 3:20161105-1ubuntu2 amd64 [installed]
iputils-tracepath/bionic,now 3:20161105-1ubuntu2 amd64 [installed]
irqbalance/bionic,now 1.3.0-0.1 amd64 [installed]
isc-dhcp-client/bionic,now 4.3.5-3ubuntu7 amd64 [installed]
isc-dhcp-common/bionic,now 4.3.5-3ubuntu7 amd64 [installed]
iso-codes/bionic,now 3.79-1 all [installed]
kbd/bionic,now 2.0.4-2ubuntu1 amd64 [installed]
keyboard-configuration/bionic,now 1.178ubuntu2 all [installed]
klibc-utils/bionic,now 2.0.4-9ubuntu2 amd64 [installed]
kmod/bionic,now 24-1ubuntu3 amd64 [installed]
krb5-locales/bionic,now 1.16-2build1 all [installed]
landscape-common/bionic,now 18.01-0ubuntu3 amd64 [installed]
language-selector-common/bionic,now 0.188 all [installed]
less/bionic,now 487-0.1 amd64 [installed]
libaccountsservice0/bionic,now 0.6.45-1ubuntu1 amd64 [installed]
libacl1/bionic,now 2.2.52-3build1 amd64 [installed]
libapparmor1/bionic,now 2.12-4ubuntu5 amd64 [installed]
libapt-inst2.0/bionic,now 1.6.1 amd64 [installed]
libapt-pkg5.0/bionic,now 1.6.1 amd64 [installed]
libargon2-0/bionic,now 0~20161029-1.1 amd64 [installed]
libasn1-8-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libassuan0/bionic,now 2.5.1-2 amd64 [installed]
libatm1/bionic,now 1:2.5.1-2build1 amd64 [installed]
libattr1/bionic,now 1:2.4.47-2build1 amd64 [installed]
libaudit-common/bionic,now 1:2.8.2-1ubuntu1 all [installed]
libaudit1/bionic,now 1:2.8.2-1ubuntu1 amd64 [installed]
libbind9-160/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libblkid1/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
libbsd0/bionic,now 0.8.7-1 amd64 [installed]
libbz2-1.0/bionic,now 1.0.6-8.1 amd64 [installed]
libc-bin/bionic,now 2.27-3ubuntu1 amd64 [installed]
libc6/bionic,now 2.27-3ubuntu1 amd64 [installed]
libcap-ng0/bionic,now 0.7.7-3.1 amd64 [installed]
libcap2/bionic,now 1:2.25-1.2 amd64 [installed]
libcap2-bin/bionic,now 1:2.25-1.2 amd64 [installed]
libcom-err2/bionic,now 1.44.1-1 amd64 [installed]
libcryptsetup12/bionic,now 2:2.0.2-1ubuntu1 amd64 [installed]
libcurl3-gnutls/bionic,now 7.58.0-2ubuntu3 amd64 [installed]
libcurl4/bionic,now 7.58.0-2ubuntu3 amd64 [installed]
libdb5.3/bionic,now 5.3.28-13.1ubuntu1 amd64 [installed]
libdbus-1-3/bionic,now 1.12.2-1ubuntu1 amd64 [installed]
libdebconfclient0/bionic,now 0.213ubuntu1 amd64 [installed]
libdevmapper-event1.02.1/bionic,now 2:1.02.145-4.1ubuntu3 amd64 [installed]
libdevmapper1.02.1/bionic,now 2:1.02.145-4.1ubuntu3 amd64 [installed]
libdns-export1100/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libdns1100/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libdrm-common/bionic,now 2.4.91-2 all [installed]
libdrm2/bionic,now 2.4.91-2 amd64 [installed]
libdumbnet1/bionic,now 1.12-7build1 amd64 [installed]
libeatmydata1/bionic,now 105-6 amd64 [installed]
libedit2/bionic,now 3.1-20170329-1 amd64 [installed]
libelf1/bionic,now 0.170-0.4 amd64 [installed]
liberror-perl/bionic,now 0.17025-1 all [installed]
libestr0/bionic,now 0.1.10-2.1 amd64 [installed]
libevent-2.1-6/bionic,now 2.1.8-stable-4build1 amd64 [installed]
libexpat1/bionic,now 2.2.5-3 amd64 [installed]
libext2fs2/bionic,now 1.44.1-1 amd64 [installed]
libfastjson4/bionic,now 0.99.8-2 amd64 [installed]
libfdisk1/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
libffi6/bionic,now 3.2.1-8 amd64 [installed]
libfreetype6/bionic,now 2.8.1-2ubuntu2 amd64 [installed,auto-removable]
libfribidi0/bionic,now 0.19.7-2 amd64 [installed]
libfuse2/bionic,now 2.9.7-1ubuntu1 amd64 [installed]
libgcc1/bionic,now 1:8-20180414-1ubuntu2 amd64 [installed]
libgcrypt20/bionic,now 1.8.1-4ubuntu1 amd64 [installed]
libgdbm-compat4/bionic,now 1.14.1-6 amd64 [installed]
libgdbm5/bionic,now 1.14.1-6 amd64 [installed]
libgeoip1/bionic,now 1.6.12-1 amd64 [installed]
libgirepository-1.0-1/bionic,now 1.56.1-1 amd64 [installed]
libglib2.0-0/bionic,now 2.56.1-2ubuntu1 amd64 [installed]
libglib2.0-data/bionic,now 2.56.1-2ubuntu1 all [installed]
libgmp10/bionic,now 2:6.1.2+dfsg-2 amd64 [installed]
libgnutls30/bionic,now 3.5.18-1ubuntu1 amd64 [installed]
libgpg-error0/bionic,now 1.27-6 amd64 [installed]
libgpm2/bionic,now 1.20.7-5 amd64 [installed]
libgssapi-krb5-2/bionic,now 1.16-2build1 amd64 [installed]
libgssapi3-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libhcrypto4-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libheimbase1-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libheimntlm0-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libhogweed4/bionic,now 3.4-1 amd64 [installed]
libhx509-5-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libicu60/bionic,now 60.2-3ubuntu3 amd64 [installed]
libidn11/bionic,now 1.33-2.1ubuntu1 amd64 [installed]
libidn2-0/bionic,now 2.0.4-1.1build2 amd64 [installed]
libip4tc0/bionic,now 1.6.1-2ubuntu2 amd64 [installed]
libip6tc0/bionic,now 1.6.1-2ubuntu2 amd64 [installed]
libiptc0/bionic,now 1.6.1-2ubuntu2 amd64 [installed]
libirs160/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libisc-export169/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libisc169/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libisccc160/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libisccfg160/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
libisns0/bionic,now 0.97-2build1 amd64 [installed]
libjson-c3/bionic,now 0.12.1-1.3 amd64 [installed]
libk5crypto3/bionic,now 1.16-2build1 amd64 [installed]
libkeyutils1/bionic,now 1.5.9-9.2ubuntu2 amd64 [installed]
libklibc/bionic,now 2.0.4-9ubuntu2 amd64 [installed]
libkmod2/bionic,now 24-1ubuntu3 amd64 [installed]
libkrb5-26-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libkrb5-3/bionic,now 1.16-2build1 amd64 [installed]
libkrb5support0/bionic,now 1.16-2build1 amd64 [installed]
libksba8/bionic,now 1.3.5-2 amd64 [installed]
libldap-2.4-2/bionic,now 2.4.45+dfsg-1ubuntu1 amd64 [installed]
libldap-common/bionic,now 2.4.45+dfsg-1ubuntu1 all [installed]
liblocale-gettext-perl/bionic,now 1.07-3build2 amd64 [installed]
liblvm2app2.2/bionic,now 2.02.176-4.1ubuntu3 amd64 [installed]
liblvm2cmd2.02/bionic,now 2.02.176-4.1ubuntu3 amd64 [installed]
liblwres160/bionic,now 1:9.11.3+dfsg-1ubuntu1 amd64 [installed]
liblxc-common/bionic,now 3.0.0-0ubuntu2 amd64 [installed]
liblxc1/bionic,now 3.0.0-0ubuntu2 amd64 [installed]
liblz4-1/bionic,now 0.0~r131-2ubuntu3 amd64 [installed]
liblzma5/bionic,now 5.2.2-1.3 amd64 [installed]
liblzo2-2/bionic,now 2.08-1.2 amd64 [installed]
libmagic-mgc/bionic,now 1:5.32-2 amd64 [installed]
libmagic1/bionic,now 1:5.32-2 amd64 [installed]
libmnl0/bionic,now 1.0.4-2 amd64 [installed]
libmount1/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
libmpdec2/bionic,now 2.4.2-1ubuntu1 amd64 [installed]
libmpfr6/bionic,now 4.0.1-1 amd64 [installed]
libmspack0/bionic,now 0.6-3 amd64 [installed]
libncurses5/bionic,now 6.1-1ubuntu1 amd64 [installed]
libncursesw5/bionic,now 6.1-1ubuntu1 amd64 [installed]
libnetfilter-conntrack3/bionic,now 1.0.6-2 amd64 [installed]
libnettle6/bionic,now 3.4-1 amd64 [installed]
libnewt0.52/bionic,now 0.52.20-1ubuntu1 amd64 [installed]
libnfnetlink0/bionic,now 1.0.1-3 amd64 [installed]
libnghttp2-14/bionic,now 1.30.0-1ubuntu1 amd64 [installed]
libnih1/bionic,now 1.0.3-6ubuntu2 amd64 [installed]
libnpth0/bionic,now 1.5-3 amd64 [installed]
libnss-systemd/bionic,now 237-3ubuntu10 amd64 [installed]
libntfs-3g88/bionic,now 1:2017.3.23-2 amd64 [installed]
libnuma1/bionic,now 2.0.11-2.1 amd64 [installed]
libp11-kit0/bionic,now 0.23.9-2 amd64 [installed]
libpam-cap/bionic,now 1:2.25-1.2 amd64 [installed]
libpam-modules/bionic,now 1.1.8-3.6ubuntu2 amd64 [installed]
libpam-modules-bin/bionic,now 1.1.8-3.6ubuntu2 amd64 [installed]
libpam-runtime/bionic,now 1.1.8-3.6ubuntu2 all [installed]
libpam-systemd/bionic,now 237-3ubuntu10 amd64 [installed]
libpam0g/bionic,now 1.1.8-3.6ubuntu2 amd64 [installed]
libparted2/bionic,now 3.2-20 amd64 [installed]
libpcap0.8/bionic,now 1.8.1-6ubuntu1 amd64 [installed]
libpci3/bionic,now 1:3.5.2-1ubuntu1 amd64 [installed]
libpcre3/bionic,now 2:8.39-9 amd64 [installed]
libperl5.26/bionic,now 5.26.1-6 amd64 [installed]
libpipeline1/bionic,now 1.5.0-1 amd64 [installed]
libplymouth4/bionic,now 0.9.3-1ubuntu7 amd64 [installed]
libpng16-16/bionic,now 1.6.34-1 amd64 [installed]
libpolkit-agent-1-0/bionic,now 0.105-20 amd64 [installed]
libpolkit-backend-1-0/bionic,now 0.105-20 amd64 [installed]
libpolkit-gobject-1-0/bionic,now 0.105-20 amd64 [installed]
libpopt0/bionic,now 1.16-11 amd64 [installed]
libprocps6/bionic,now 2:3.3.12-3ubuntu1 amd64 [installed]
libpsl5/bionic,now 0.19.1-5build1 amd64 [installed]
libpython3-stdlib/bionic,now 3.6.5-3 amd64 [installed]
libpython3.6/bionic,now 3.6.5-3 amd64 [installed]
libpython3.6-minimal/bionic,now 3.6.5-3 amd64 [installed]
libpython3.6-stdlib/bionic,now 3.6.5-3 amd64 [installed]
libreadline5/bionic,now 5.2+dfsg-3build1 amd64 [installed]
libreadline7/bionic,now 7.0-3 amd64 [installed]
libroken18-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
librtmp1/bionic,now 2.4+20151223.gitfa8646d.1-1 amd64 [installed]
libsasl2-2/bionic,now 2.1.27~101-g0780600+dfsg-3ubuntu2 amd64 [installed]
libsasl2-modules/bionic,now 2.1.27~101-g0780600+dfsg-3ubuntu2 amd64 [installed]
libsasl2-modules-db/bionic,now 2.1.27~101-g0780600+dfsg-3ubuntu2 amd64 [installed]
libseccomp2/bionic,now 2.3.1-2.1ubuntu4 amd64 [installed]
libselinux1/bionic,now 2.7-2build2 amd64 [installed]
libsemanage-common/bionic,now 2.7-2build2 all [installed]
libsemanage1/bionic,now 2.7-2build2 amd64 [installed]
libsepol1/bionic,now 2.7-1 amd64 [installed]
libsigsegv2/bionic,now 2.12-1 amd64 [installed]
libslang2/bionic,now 2.3.1a-3ubuntu1 amd64 [installed]
libsmartcols1/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
libsqlite3-0/bionic,now 3.22.0-1 amd64 [installed]
libss2/bionic,now 1.44.1-1 amd64 [installed]
libssl1.0.0/bionic,now 1.0.2n-1ubuntu5 amd64 [installed]
libssl1.1/bionic,now 1.1.0g-2ubuntu4 amd64 [installed]
libstdc++6/bionic,now 8-20180414-1ubuntu2 amd64 [installed]
libsystemd0/bionic,now 237-3ubuntu10 amd64 [installed]
libtasn1-6/bionic,now 4.13-2 amd64 [installed]
libtext-charwidth-perl/bionic,now 0.04-7.1 amd64 [installed]
libtext-iconv-perl/bionic,now 1.7-5build6 amd64 [installed]
libtext-wrapi18n-perl/bionic,now 0.06-7.1 all [installed]
libtinfo5/bionic,now 6.1-1ubuntu1 amd64 [installed]
libudev1/bionic,now 237-3ubuntu10 amd64 [installed]
libunistring2/bionic,now 0.9.9-0ubuntu1 amd64 [installed]
libunwind8/bionic,now 1.2.1-8 amd64 [installed]
libusb-1.0-0/bionic,now 2:1.0.21-2 amd64 [installed]
libutempter0/bionic,now 1.1.6-3 amd64 [installed]
libuuid1/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
libwind0-heimdal/bionic,now 7.5.0+dfsg-1 amd64 [installed]
libwrap0/bionic,now 7.6.q-27 amd64 [installed]
libx11-6/bionic,now 2:1.6.4-3 amd64 [installed]
libx11-data/bionic,now 2:1.6.4-3 all [installed]
libxau6/bionic,now 1:1.0.8-1 amd64 [installed]
libxcb1/bionic,now 1.13-1 amd64 [installed]
libxdmcp6/bionic,now 1:1.1.2-3 amd64 [installed]
libxext6/bionic,now 2:1.3.3-1 amd64 [installed]
libxml2/bionic,now 2.9.4+dfsg1-6.1ubuntu1 amd64 [installed]
libxmlsec1/bionic,now 1.2.25-1build1 amd64 [installed]
libxmlsec1-openssl/bionic,now 1.2.25-1build1 amd64 [installed]
libxmuu1/bionic,now 2:1.1.2-2 amd64 [installed]
libxslt1.1/bionic,now 1.1.29-5 amd64 [installed]
libxtables12/bionic,now 1.6.1-2ubuntu2 amd64 [installed]
libyaml-0-2/bionic,now 0.1.7-2ubuntu3 amd64 [installed]
libzstd1/bionic,now 1.3.3+dfsg-2ubuntu1 amd64 [installed]
linux-base/bionic,now 4.5ubuntu1 all [installed]
locales/bionic,now 2.27-3ubuntu1 all [installed]
login/bionic,now 1:4.5-1ubuntu1 amd64 [installed]
logrotate/bionic,now 3.11.0-0.1ubuntu1 amd64 [installed]
lsb-base/bionic,now 9.20170808ubuntu1 all [installed]
lsb-release/bionic,now 9.20170808ubuntu1 all [installed]
lshw/bionic,now 02.18-0.1ubuntu6 amd64 [installed]
lsof/bionic,now 4.89+dfsg-0.1 amd64 [installed]
ltrace/bionic,now 0.7.3-6ubuntu1 amd64 [installed]
lvm2/bionic,now 2.02.176-4.1ubuntu3 amd64 [installed]
lxcfs/bionic,now 3.0.0-0ubuntu1 amd64 [installed]
lxd/bionic,now 3.0.0-0ubuntu4 amd64 [installed]
lxd-client/bionic,now 3.0.0-0ubuntu4 amd64 [installed]
man-db/bionic,now 2.8.3-2 amd64 [installed]
manpages/bionic,now 4.15-1 all [installed]
mawk/bionic,now 1.3.3-17ubuntu3 amd64 [installed]
mdadm/bionic,now 4.0-2ubuntu1 amd64 [installed]
mime-support/bionic,now 3.60ubuntu1 all [installed]
mlocate/bionic,now 0.26-2ubuntu3.1 amd64 [installed]
mount/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
mtr-tiny/bionic,now 0.92-1 amd64 [installed]
multiarch-support/bionic,now 2.27-3ubuntu1 amd64 [installed]
nano/bionic,now 2.9.3-2 amd64 [installed]
ncurses-base/bionic,now 6.1-1ubuntu1 all [installed]
ncurses-bin/bionic,now 6.1-1ubuntu1 amd64 [installed]
ncurses-term/bionic,now 6.1-1ubuntu1 all [installed]
net-tools/bionic,now 1.60+git20161116.90da8a0-1ubuntu1 amd64 [installed]
netbase/bionic,now 5.4 all [installed]
netcat-openbsd/bionic,now 1.187-1 amd64 [installed]
netplan.io/bionic,now 0.36.1 amd64 [installed]
networkd-dispatcher/bionic,now 1.7-0ubuntu3 all [installed]
nplan/bionic,now 0.36.1 all [installed]
ntfs-3g/bionic,now 1:2017.3.23-2 amd64 [installed]
open-iscsi/bionic,now 2.0.874-5ubuntu2 amd64 [installed]
open-vm-tools/bionic,now 2:10.2.0-3ubuntu3 amd64 [installed]
openssh-client/bionic,now 1:7.6p1-4 amd64 [installed]
openssh-server/bionic,now 1:7.6p1-4 amd64 [installed]
openssh-sftp-server/bionic,now 1:7.6p1-4 amd64 [installed]
openssl/bionic,now 1.1.0g-2ubuntu4 amd64 [installed]
overlayroot/bionic,now 0.40ubuntu1 all [installed]
parted/bionic,now 3.2-20 amd64 [installed]
passwd/bionic,now 1:4.5-1ubuntu1 amd64 [installed]
pastebinit/bionic,now 1.5-2 all [installed]
patch/bionic,now 2.7.6-2ubuntu1 amd64 [installed]
pciutils/bionic,now 1:3.5.2-1ubuntu1 amd64 [installed]
perl/bionic,now 5.26.1-6 amd64 [installed]
perl-base/bionic,now 5.26.1-6 amd64 [installed]
perl-modules-5.26/bionic,now 5.26.1-6 all [installed]
pinentry-curses/bionic,now 1.1.0-1 amd64 [installed]
plymouth/bionic,now 0.9.3-1ubuntu7 amd64 [installed]
plymouth-theme-ubuntu-text/bionic,now 0.9.3-1ubuntu7 amd64 [installed]
policykit-1/bionic,now 0.105-20 amd64 [installed]
pollinate/bionic,now 4.31-0ubuntu1 all [installed]
popularity-contest/bionic,now 1.66ubuntu1 all [installed]
powermgmt-base/bionic,now 1.33 all [installed]
procps/bionic,now 2:3.3.12-3ubuntu1 amd64 [installed]
psmisc/bionic,now 23.1-1 amd64 [installed]
publicsuffix/bionic,now 20180223.1310-1 all [installed]
python-apt-common/bionic,now 1.6.0 all [installed]
python3/bionic,now 3.6.5-3 amd64 [installed]
python3-apport/bionic,now 2.20.9-0ubuntu7 all [installed]
python3-apt/bionic,now 1.6.0 amd64 [installed]
python3-asn1crypto/bionic,now 0.24.0-1 all [installed]
python3-attr/bionic,now 17.4.0-2 all [installed]
python3-automat/bionic,now 0.6.0-1 all [installed]
python3-blinker/bionic,now 1.4+dfsg1-0.1 all [installed]
python3-certifi/bionic,now 2018.1.18-2 all [installed]
python3-cffi-backend/bionic,now 1.11.5-1 amd64 [installed]
python3-chardet/bionic,now 3.0.4-1 all [installed]
python3-click/bionic,now 6.7-3 all [installed]
python3-colorama/bionic,now 0.3.7-1 all [installed]
python3-commandnotfound/bionic,now 18.04.4 all [installed]
python3-configobj/bionic,now 5.0.6-2 all [installed]
python3-constantly/bionic,now 15.1.0-1 all [installed]
python3-cryptography/bionic,now 2.1.4-1ubuntu1.1 amd64 [installed]
python3-dbus/bionic,now 1.2.6-1 amd64 [installed]
python3-debconf/bionic,now 1.5.66 all [installed]
python3-debian/bionic,now 0.1.32 all [installed]
python3-distro-info/bionic,now 0.18 all [installed]
python3-distupgrade/bionic,now 1:18.04.17 all [installed]
python3-gdbm/bionic,now 3.6.5-3 amd64 [installed]
python3-gi/bionic,now 3.26.1-2 amd64 [installed]
python3-httplib2/bionic,now 0.9.2+dfsg-1 all [installed]
python3-hyperlink/bionic,now 17.3.1-2 all [installed]
python3-idna/bionic,now 2.6-1 all [installed]
python3-incremental/bionic,now 16.10.1-3 all [installed]
python3-jinja2/bionic,now 2.10-1 all [installed]
python3-json-pointer/bionic,now 1.10-1 all [installed]
python3-jsonpatch/bionic,now 1.19+really1.16-1fakesync1 all [installed]
python3-jsonschema/bionic,now 2.6.0-2 all [installed]
python3-jwt/bionic,now 1.5.3+ds1-1 all [installed]
python3-markupsafe/bionic,now 1.0-1build1 amd64 [installed]
python3-minimal/bionic,now 3.6.5-3 amd64 [installed]
python3-newt/bionic,now 0.52.20-1ubuntu1 amd64 [installed]
python3-oauthlib/bionic,now 2.0.6-1 all [installed]
python3-openssl/bionic,now 17.5.0-1ubuntu1 all [installed]
python3-pam/bionic,now 0.4.2-13.2ubuntu4 amd64 [installed]
python3-pkg-resources/bionic,now 39.0.1-2 all [installed]
python3-problem-report/bionic,now 2.20.9-0ubuntu7 all [installed]
python3-pyasn1/bionic,now 0.4.2-3 all [installed]
python3-pyasn1-modules/bionic,now 0.2.1-0.2 all [installed]
python3-requests/bionic,now 2.18.4-2 all [installed]
python3-requests-unixsocket/bionic,now 0.1.5-3 all [installed]
python3-serial/bionic,now 3.4-2 all [installed]
python3-service-identity/bionic,now 16.0.0-2 all [installed]
python3-six/bionic,now 1.11.0-2 all [installed]
python3-software-properties/bionic,now 0.96.24.32.1 all [installed]
python3-systemd/bionic,now 234-1build1 amd64 [installed]
python3-twisted/bionic,now 17.9.0-2 all [installed]
python3-twisted-bin/bionic,now 17.9.0-2 amd64 [installed]
python3-update-manager/bionic,now 1:18.04.11 all [installed]
python3-urllib3/bionic,now 1.22-1 all [installed]
python3-yaml/bionic,now 3.12-1build2 amd64 [installed]
python3-zope.interface/bionic,now 4.3.2-1build2 amd64 [installed]
python3.6/bionic,now 3.6.5-3 amd64 [installed]
python3.6-minimal/bionic,now 3.6.5-3 amd64 [installed]
readline-common/bionic,now 7.0-3 all [installed]
rsync/bionic,now 3.1.2-2.1ubuntu1 amd64 [installed]
rsyslog/bionic,now 8.32.0-1ubuntu4 amd64 [installed]
run-one/bionic,now 1.17-0ubuntu1 all [installed]
screen/bionic,now 4.6.2-1 amd64 [installed]
sed/bionic,now 4.4-2 amd64 [installed]
sensible-utils/bionic,now 0.0.12 all [installed]
shared-mime-info/bionic,now 1.9-2 amd64 [installed]
snapd/bionic,now 2.32.5+18.04 amd64 [installed]
software-properties-common/bionic,now 0.96.24.32.1 all [installed]
sosreport/bionic,now 3.5-1ubuntu3 amd64 [installed]
squashfs-tools/bionic,now 1:4.3-6 amd64 [installed]
ssh-import-id/bionic,now 5.7-0ubuntu1 all [installed]
strace/bionic,now 4.21-1ubuntu1 amd64 [installed]
sudo/bionic,now 1.8.21p2-3ubuntu1 amd64 [installed]
systemd/bionic,now 237-3ubuntu10 amd64 [installed]
systemd-sysv/bionic,now 237-3ubuntu10 amd64 [installed]
sysvinit-utils/bionic,now 2.88dsf-59.10ubuntu1 amd64 [installed]
tar/bionic,now 1.29b-2 amd64 [installed]
tcpdump/bionic,now 4.9.2-3 amd64 [installed]
telnet/bionic,now 0.17-41 amd64 [installed]
time/bionic,now 1.7-25.1build1 amd64 [installed]
tmux/bionic,now 2.6-3 amd64 [installed]
tzdata/bionic,now 2018d-1 all [installed]
ubuntu-advantage-tools/bionic,now 17 all [installed]
ubuntu-keyring/bionic,now 2018.02.28 all [installed]
ubuntu-minimal/bionic,now 1.417 amd64 [installed]
ubuntu-release-upgrader-core/bionic,now 1:18.04.17 all [installed]
ubuntu-server/bionic,now 1.417 amd64 [installed]
ubuntu-standard/bionic,now 1.417 amd64 [installed]
ucf/bionic,now 3.0038 all [installed]
udev/bionic,now 237-3ubuntu10 amd64 [installed]
ufw/bionic,now 0.35-5 all [installed]
uidmap/bionic,now 1:4.5-1ubuntu1 amd64 [installed]
unattended-upgrades/bionic,now 1.1ubuntu1 all [installed]
update-manager-core/bionic,now 1:18.04.11 all [installed]
update-notifier-common/bionic,now 3.192 all [installed]
ureadahead/bionic,now 0.100.0-20 amd64 [installed]
usbutils/bionic,now 1:007-4build1 amd64 [installed]
util-linux/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
uuid-runtime/bionic,now 2.31.1-0.4ubuntu3 amd64 [installed]
vim/bionic,now 2:8.0.1453-1ubuntu1 amd64 [installed]
vim-common/bionic,now 2:8.0.1453-1ubuntu1 all [installed]
vim-runtime/bionic,now 2:8.0.1453-1ubuntu1 all [installed]
vim-tiny/bionic,now 2:8.0.1453-1ubuntu1 amd64 [installed]
wget/bionic,now 1.19.4-1ubuntu2 amd64 [installed]
whiptail/bionic,now 0.52.20-1ubuntu1 amd64 [installed]
xauth/bionic,now 1:1.0.10-1 amd64 [installed]
xdelta3/bionic,now 3.0.11-dfsg-1ubuntu1 amd64 [installed]
xdg-user-dirs/bionic,now 0.17-1ubuntu1 amd64 [installed]
xfsprogs/bionic,now 4.9.0+nmu1ubuntu2 amd64 [installed]
xkb-data/bionic,now 2.23.1-1ubuntu1 all [installed]
xxd/bionic,now 2:8.0.1453-1ubuntu1 amd64 [installed]
xz-utils/bionic,now 5.2.2-1.3 amd64 [installed]
zerofree/bionic,now 1.0.4-1 amd64 [installed]
zlib1g/bionic,now 1:1.2.11.dfsg-0ubuntu2 amd64 [installed]

2018年5月12日土曜日

WSL の Debian 9 で初期ユーザのパスワードを忘れたら

WSL の Debian 9 では、管理者権限で開いたコンソールから debian.exe を実行し、ログインユーザーを root に変更することが出来ます。Ubuntu の場合は ubuntu.exe で、他のディストリビューションの場合も似たようなネーミングの命令が入っていると思います。

PS C:\WINDOWS\system32> debian help
Launches or configures a linux distribution.

Usage:
    
      - Launches the distro's default behavior. By default, this launches your default shell.

    run 
      - Run the given command line in that distro, using the default configuration.
      - Everything after `run ` is passed to the linux LaunchProcess call.

    config [setting [value]]
      - Configure certain settings for this distro.
      - Settings are any of the following (by default)
        - `--default-user `: Set the default user for this distro to 

    clean
      - Uninstalls the distro. The appx remains on your machine. This can be
        useful for "factory resetting" your instance. This removes the linux
        filesystem from the disk, but not the app from your PC, so you don't
        need to redownload the entire tar.gz again.

    help
      - Print this usage message.
PS C:\WINDOWS\system32> debian config --default-user root
Default UNIX user set to: root

初期ユーザのパスワードを忘れてしまったので、実際に作業してみました。
  1. 管理者として PowerShellかcmdウインドウを開く。
  2. PS> debian config --default-user root でログインユーザを root にする
  3. WSL Debian を開くとログインユーザが root になっているはず。
  4. # passwd firstuser などとしてパスワードを変更する。
  5. WSL Debian を閉じておく。
  6. PS> debian config --default-user firstuser などとしてログインユーザを初期ユーザにする。
  7. WSL Debianを開くとログインユーザが 初期ユーザになっているはず。 sudo su などしてパスワードが新しいものになっているか確認する。
実機の場合はgrubの起動に割り込んでinit=/bin/sh とか追加書きして云々、とかやるパターンですが、これはありがたいですね。

参考記事はこちら。
https://askubuntu.com/questions/772050/reset-the-password-in-linux-bash-in-windows

2018年5月3日木曜日

WSL の Debian 9 をインストールするとこうなる

Windows 10 の Windows Subsystem for Linux では様々なディストリビューションを導入出来るわけですが、その中でも最近加わった Debian 9.x を導入し、即 apt update ; apt upgrade すると 163 パッケージ(後述)でしょうか。小さいですね。
まあこれではなかなか辛いものがありますので、もう少し足していきたい。

# apt install lsb build-essential task-japanese

あたりでしょうか。しかし task-japanese を入れてもlocaleがご覧のありさまでは…

# locale -a
C
C.UTF-8
POSIX
en_US.utf8

これでは update-locale してもダメですね。そもそも無いので。作りましょう。

# grep ja_JP.UTF-8 /etc/locale.gen
# ja_JP.UTF-8 UTF-8  (←コメントアウトされている)
# vi /etc/locale.gen (←頑張ってviで編集してください)
# grep ja_JP.UTF-8 /etc/locale.gen
ja_JP.UTF-8 UTF-8    (←コメントアウトを解除した)
# locale-gen
Generating locales (this might take a while)...
  en_US.UTF-8... done
  ja_JP.UTF-8... done
Generation complete.
# locale -a
C
C.UTF-8
POSIX
en_US.utf8
ja_JP.utf8 (←増えてる)
#

あとはroot で update-locale LANG=ja_JP.UTF-8 なり シェルの設定に書くなりお好みで。
ターミナルが Windows Console ですので、好き嫌いが出るかも知れません。wsltty の導入をご検討下さい。ウィルスバスタークラウドを使っている人はこちらの情報も重要です。よくある。
・wsltty が起動しない(すぐ落ちる)件
 https://yami-beta.hateblo.jp/entry/2016/10/30/175923

Debian を入れた直後のパッケージリストはこちら。
$ apt list --installed
Listing...
adduser/stable,now 3.115 all [installed]
apt/stable,now 1.4.8 amd64 [installed]
apt-utils/stable,now 1.4.8 amd64 [installed]
base-files/stable,now 9.9+deb9u4 amd64 [installed]
base-passwd/stable,now 3.5.43 amd64 [installed]
bash/stable,now 4.4-5 amd64 [installed]
bsdmainutils/stable,now 9.0.12+nmu1 amd64 [installed]
bsdutils/stable,now 1:2.29.2-1+deb9u1 amd64 [installed]
coreutils/stable,now 8.26-3 amd64 [installed]
cpio/stable,now 2.11+dfsg-6 amd64 [installed]
cron/stable,now 3.0pl1-128+deb9u1 amd64 [installed,automatic]
dash/stable,now 0.5.8-2.4 amd64 [installed]
debconf/stable,now 1.5.61 all [installed]
debconf-i18n/stable,now 1.5.61 all [installed]
debian-archive-keyring/stable,now 2017.5 all [installed]
debianutils/stable,now 4.8.1.1 amd64 [installed]
diffutils/stable,now 1:3.5-3 amd64 [installed]
dmidecode/stable,now 3.0-4 amd64 [installed]
dmsetup/stable,now 2:1.02.137-2 amd64 [installed,automatic]
dpkg/stable,now 1.18.24 amd64 [installed]
e2fslibs/stable,now 1.43.4-2 amd64 [installed]
e2fsprogs/stable,now 1.43.4-2 amd64 [installed]
findutils/stable,now 4.6.0+git+20161106-2 amd64 [installed]
gcc-6-base/stable,stable,now 6.3.0-18+deb9u1 amd64 [installed]
gnupg/stable,now 2.1.18-8~deb9u1 amd64 [installed]
gnupg-agent/stable,now 2.1.18-8~deb9u1 amd64 [installed,automatic]
gpgv/stable,now 2.1.18-8~deb9u1 amd64 [installed]
grep/stable,now 2.27-2 amd64 [installed]
gzip/stable,now 1.6-5+b1 amd64 [installed]
hostname/stable,now 3.18+b1 amd64 [installed]
ifupdown/stable,now 0.8.19 amd64 [installed]
init/stable,now 1.48 amd64 [installed]
init-system-helpers/stable,now 1.48 all [installed]
iproute2/stable,now 4.9.0-1+deb9u1 amd64 [installed,automatic]
iptables/stable,now 1.6.0+snapshot20161117-6 amd64 [installed]
iputils-ping/stable,now 3:20161105-1 amd64 [installed]
isc-dhcp-client/stable,now 4.3.5-3+deb9u1 amd64 [installed]
isc-dhcp-common/stable,now 4.3.5-3+deb9u1 amd64 [installed]
kmod/stable,now 23-2 amd64 [installed]
libacl1/stable,now 2.2.52-3+b1 amd64 [installed]
libapparmor1/stable,now 2.11.0-3+deb9u2 amd64 [installed,automatic]
libapt-inst2.0/stable,now 1.4.8 amd64 [installed,automatic]
libapt-pkg5.0/stable,now 1.4.8 amd64 [installed]
libassuan0/stable,now 2.4.3-2 amd64 [installed,automatic]
libattr1/stable,now 1:2.4.47-2+b2 amd64 [installed]
libaudit-common/stable,now 1:2.6.7-2 all [installed]
libaudit1/stable,now 1:2.6.7-2 amd64 [installed]
libblkid1/stable,now 2.29.2-1+deb9u1 amd64 [installed]
libbsd0/stable,now 0.8.3-1 amd64 [installed,automatic]
libbz2-1.0/stable,now 1.0.6-8.1 amd64 [installed]
libc-bin/stable,now 2.24-11+deb9u3 amd64 [installed]
libc-l10n/stable,now 2.24-11+deb9u3 all [installed,automatic]
libc6/stable,now 2.24-11+deb9u3 amd64 [installed]
libcap-ng0/stable,now 0.7.7-3+b1 amd64 [installed]
libcap2/stable,now 1:2.25-1 amd64 [installed,automatic]
libcomerr2/stable,now 1.43.4-2 amd64 [installed]
libcryptsetup4/stable,now 2:1.7.3-4 amd64 [installed,automatic]
libdb5.3/stable,now 5.3.28-12+deb9u1 amd64 [installed]
libdebconfclient0/stable,now 0.227 amd64 [installed]
libdevmapper1.02.1/stable,now 2:1.02.137-2 amd64 [installed,automatic]
libdns-export162/stable,stable,now 1:9.10.3.dfsg.P4-12.3+deb9u4 amd64 [installed,automatic]
libelf1/stable,now 0.168-1 amd64 [installed,automatic]
libestr0/stable,now 0.1.10-2 amd64 [installed,automatic]
libfastjson4/stable,now 0.99.4-1 amd64 [installed,automatic]
libfdisk1/stable,now 2.29.2-1+deb9u1 amd64 [installed]
libffi6/stable,now 3.2.1-6 amd64 [installed,automatic]
libgcc1/stable,stable,now 1:6.3.0-18+deb9u1 amd64 [installed]
libgcrypt20/stable,stable,now 1.7.6-2+deb9u2 amd64 [installed]
libgdbm3/stable,now 1.8.3-14 amd64 [installed]
libgmp10/stable,now 2:6.1.2+dfsg-1 amd64 [installed,automatic]
libgnutls30/stable,now 3.5.8-5+deb9u3 amd64 [installed,automatic]
libgpg-error0/stable,now 1.26-2 amd64 [installed]
libhogweed4/stable,now 3.3-1+b2 amd64 [installed,automatic]
libidn11/stable,now 1.33-1 amd64 [installed,automatic]
libidn2-0/stable,stable,now 0.16-1+deb9u1 amd64 [installed,automatic]
libip4tc0/stable,now 1.6.0+snapshot20161117-6 amd64 [installed,automatic]
libip6tc0/stable,now 1.6.0+snapshot20161117-6 amd64 [installed,automatic]
libiptc0/stable,now 1.6.0+snapshot20161117-6 amd64 [installed,automatic]
libisc-export160/stable,stable,now 1:9.10.3.dfsg.P4-12.3+deb9u4 amd64 [installed,automatic]
libkmod2/stable,now 23-2 amd64 [installed,automatic]
libksba8/stable,now 1.3.5-2 amd64 [installed,automatic]
liblocale-gettext-perl/stable,now 1.07-3+b1 amd64 [installed,automatic]
liblogging-stdlog0/stable,now 1.0.5-2+b2 amd64 [installed,automatic]
liblognorm5/stable,now 2.0.1-1.1+b1 amd64 [installed,automatic]
liblz4-1/stable,now 0.0~r131-2+b1 amd64 [installed]
liblzma5/stable,now 5.2.2-1.2+b1 amd64 [installed]
libmnl0/stable,now 1.0.4-2 amd64 [installed,automatic]
libmount1/stable,now 2.29.2-1+deb9u1 amd64 [installed]
libncurses5/stable,now 6.0+20161126-1+deb9u2 amd64 [installed,automatic]
libncursesw5/stable,now 6.0+20161126-1+deb9u2 amd64 [installed]
libnetfilter-conntrack3/stable,now 1.0.6-2 amd64 [installed,automatic]
libnettle6/stable,now 3.3-1+b2 amd64 [installed,automatic]
libnewt0.52/stable,now 0.52.19-1+b1 amd64 [installed,automatic]
libnfnetlink0/stable,now 1.0.1-3 amd64 [installed,automatic]
libnpth0/stable,now 1.3-1 amd64 [installed,automatic]
libp11-kit0/stable,now 0.23.3-2 amd64 [installed,automatic]
libpam-modules/stable,now 1.1.8-3.6 amd64 [installed]
libpam-modules-bin/stable,now 1.1.8-3.6 amd64 [installed]
libpam-runtime/stable,now 1.1.8-3.6 all [installed]
libpam0g/stable,now 1.1.8-3.6 amd64 [installed]
libpcre3/stable,now 2:8.39-3 amd64 [installed]
libpipeline1/stable,now 1.4.1-2 amd64 [installed]
libpopt0/stable,now 1.16-10+b2 amd64 [installed,automatic]
libprocps6/stable,now 2:3.3.12-3 amd64 [installed,automatic]
libpsl5/stable,now 0.17.0-3 amd64 [installed,automatic]
libreadline7/stable,now 7.0-3 amd64 [installed,automatic]
libseccomp2/stable,now 2.3.1-2.1 amd64 [installed,automatic]
libselinux1/stable,now 2.6-3+b3 amd64 [installed]
libsemanage-common/stable,now 2.6-2 all [installed]
libsemanage1/stable,now 2.6-2 amd64 [installed]
libsepol1/stable,now 2.6-2 amd64 [installed]
libslang2/stable,now 2.3.1-5 amd64 [installed,automatic]
libsmartcols1/stable,now 2.29.2-1+deb9u1 amd64 [installed]
libsqlite3-0/stable,now 3.16.2-5+deb9u1 amd64 [installed,automatic]
libss2/stable,now 1.43.4-2 amd64 [installed]
libssl1.0.2/stable,now 1.0.2l-2+deb9u3 amd64 [installed]
libssl1.1/stable,now 1.1.0f-3+deb9u2 amd64 [installed]
libstdc++6/stable,stable,now 6.3.0-18+deb9u1 amd64 [installed]
libsystemd0/stable-updates,now 232-25+deb9u3 amd64 [installed]
libtasn1-6/stable,stable,now 4.10-1.1+deb9u1 amd64 [installed,automatic]
libtext-charwidth-perl/stable,now 0.04-7+b5 amd64 [installed,automatic]
libtext-iconv-perl/stable,now 1.7-5+b4 amd64 [installed,automatic]
libtext-wrapi18n-perl/stable,now 0.06-7.1 all [installed,automatic]
libtinfo5/stable,now 6.0+20161126-1+deb9u2 amd64 [installed]
libudev1/stable-updates,now 232-25+deb9u3 amd64 [installed]
libunistring0/stable,now 0.9.6+really0.9.3-0.1 amd64 [installed,automatic]
libustr-1.0-1/stable,now 1.0.4-6 amd64 [installed]
libuuid1/stable,now 2.29.2-1+deb9u1 amd64 [installed]
libxapian30/stable,now 1.4.3-2 amd64 [installed]
libxtables12/stable,now 1.6.0+snapshot20161117-6 amd64 [installed,automatic]
locales/stable,now 2.24-11+deb9u3 all [installed]
login/stable,now 1:4.4-4.1 amd64 [installed]
logrotate/stable,now 3.11.0-0.1 amd64 [installed]
lsb-base/stable,now 9.20161125 all [installed,automatic]
mawk/stable,now 1.3.3-17+b3 amd64 [installed]
mount/stable,now 2.29.2-1+deb9u1 amd64 [installed]
multiarch-support/stable,now 2.24-11+deb9u3 amd64 [installed]
nano/stable,now 2.7.4-1 amd64 [installed]
ncurses-base/stable,now 6.0+20161126-1+deb9u2 all [installed]
ncurses-bin/stable,now 6.0+20161126-1+deb9u2 amd64 [installed]
netbase/stable,now 5.4 all [installed]
passwd/stable,now 1:4.4-4.1 amd64 [installed]
perl-base/stable,now 5.24.1-3+deb9u3 amd64 [installed]
pinentry-curses/stable,now 1.0.0-2 amd64 [installed,automatic]
procps/stable,now 2:3.3.12-3 amd64 [installed,automatic]
readline-common/stable,now 7.0-3 all [installed,automatic]
rsyslog/stable,now 8.24.0-1 amd64 [installed]
sed/stable,now 4.4-1 amd64 [installed]
sensible-utils/stable,stable,now 0.0.9+deb9u1 all [installed]
sudo/stable,now 1.8.19p1-2.1 amd64 [installed]
systemd/stable-updates,now 232-25+deb9u3 amd64 [installed,automatic]
systemd-sysv/stable-updates,now 232-25+deb9u3 amd64 [installed,automatic]
sysvinit-utils/stable,now 2.88dsf-59.9 amd64 [installed]
tar/stable,now 1.29b-1.1 amd64 [installed]
tzdata/stable-updates,now 2018d-0+deb9u1 all [installed]
udev/stable-updates,now 232-25+deb9u3 amd64 [installed]
util-linux/stable,now 2.29.2-1+deb9u1 amd64 [installed]
vim-common/stable,now 2:8.0.0197-4+deb9u1 all [installed,automatic]
vim-tiny/stable,now 2:8.0.0197-4+deb9u1 amd64 [installed]
wget/stable,stable,now 1.18-5+deb9u1 amd64 [installed]
whiptail/stable,now 0.52.19-1+b1 amd64 [installed]
xxd/stable,now 2:8.0.0197-4+deb9u1 amd64 [installed,automatic]
zlib1g/stable,now 1:1.2.8.dfsg-5 amd64 [installed]
$ wc aptlist-init.txt
164  653 9155 aptlist-init.txt

ウイルスバスタークラウドのフォルダシールド


Windows では ウイルスバスタークラウド というウイルス対策ソフトウェアがあり、その中に『フォルダシールド』という機能があります。
https://esupport.trendmicro.com/support/vb/solution/ja-jp/1114436.aspx

ランサムウェアなど未知のアプリケーションによるフォルダへのアクセスを阻止するものなので、例えば OneDrive の同期用フォルダや NAS 上のバックアップ用フォルダにシールドを張っておくと、ランサムウェアの被害が伝播してしまうのを防げるかな、と思ったのですが……

簡単なプログラムを作成したり実行したり、ファイルを生成する作業をこのシールドが張られたディレクトリで実行すると、時々 powershell.exe などが「そんなアプリ知らんし(意訳)」などとシールドから拒否され、アクセス出来ないという問題が起きます。

海外でも話題になっていて、例えば以下。

https://en.community.trendmicro.com/tm_en/topics/scrobj-dll-and-powershell-exe

ここのQ&Aでも「ドライブ全体を守るんじゃなくてドキュメントフォルダを守るのに使ってね」といった結論になってますね。

これもしかして日曜プログラマの開発環境とか、TeX などと相性悪かったりします…?

2018年2月26日月曜日

FreeBSD Snapshot Management Environment の crontab

sysutils/freebsd-snapshot で導入される FreeBSD Snapshot Management Environment https://people.freebsd.org/~rse/snapshot/ では、毎時、毎日、毎週にスナップショットを取得するためのcrontabを書くんですが、これが見事にぜんぶ0分に回るんですよね…

# Perform hourly/daily/weekly maintenance (FreeBSD UFS/ZFS snapshots only).
0       *       *       *       *       root    periodic-snapshot hourly
0       0       *       *       *       root    periodic-snapshot daily
0       0       *       *       0       root    periodic-snapshot weekly

こんな具合で。で、daily.0 と weekly.0 のスナップショットが同時に取得されようとして、片方が失敗するということが稀に起きます。

Oct  1 00:00:01 filesv root: snapshot: making snapshot on /svr/home failed
Oct  1 00:00:04 filesv root: snapshot: daily.0 snapshot on filesystem /svr/home made (duration: 0 min)

ごらんのありさま。periodic-snapshot の中でロックファイルを作っているので、片方がコケるだけで済むのですが、どうもなあ…と思いまして、若干ずらしてみました。

# Perform hourly/daily/weekly maintenance (FreeBSD UFS/ZFS snapshots only).
0       *       *       *       *       root    periodic-snapshot hourly
5       0       *       *       *       root    periodic-snapshot daily
10      0       *       *       0       root    periodic-snapshot weekly

zfsでのsnapshot取りなら5分もいらないと思いますが、まあこれくらいでしょうか。

あと、snapshot作るのに失敗したとき、periodic-snapshot がエラーを記録してくれるんですけど、どのスナップショットを失敗したのかは表示してくれないのですね。

% diff -u periodic-snapshot.orig periodic-snapshot
--- periodic-snapshot.orig      2017-10-04 03:41:54.000000000 +0900
+++ periodic-snapshot   2017-10-04 03:42:35.000000000 +0900
@@ -121,7 +121,7 @@
                 snapshot make -g$when $fs:$time_tag.0
                 if [ $? -ne 0 ]; then
                     logger -p daemon.error \
-                        "snapshot: making snapshot on $fs failed"
+                        "snapshot: making snapshot on $fs:$time_tag.0 failed"
                     exit 1
                 fi
                 time_end=`date '+%s'`


こんな改造とかは許されるだろうか?

A4サイズの無地ノートまとめ(2018)

友人がA4サイズで無地のノートを探していたので、自分なりに調べてみたものをまとめてみました。

コクヨ ノ-201W(40枚) 360円くらい
http://www.kokuyo-st.co.jp/stationery/campus/lineup/tokusyu.html
 コクヨノートの定番ブランド「キャンパス」シリーズを扱っている文房具店なら、一番置いてある可能性が高いもの。無線綴じノート。私の地元のドンキでは置いてなかったが、友人の近くのドンキにはあったという。需要の差ですかね。

コクヨ ス-T223W-M(40枚リング) 480円くらい
http://www.kokuyo-st.co.jp/stationery/otona-campus/campus-plain.html
 いわゆる「大人キャンパス」シリーズ。ツインリングノート。切り離すとA4ジャストサイズになるので、サイズとしてはやや大きめでしょうか。

マルマン N225ES スパイラルノート A4無地(80枚) 530円くらい
http://www.e-maruman.co.jp/products/detail.php?product_id=2748
 マルマンといえばスケッチブックの印象が強いんですが、ノートもありますね。スパイラルリングノートで、切り離すとA4ジャストサイズになるという。コクヨと比べると枚数で圧倒してる感じです。

ツバメノート A4白無地(40枚) 390円くらい
http://www.tsubamenote.co.jp/product.html#tokua4
 糸綴じノート。これ見たことあります! と思ってよく調べてみると、フールス紙を使って作っている大学ノートは、大学生協オリジナルとか、マルゴノート(アルファファイブ)とか、MDSとか、どこも似たようなデザインなんですね。歴史ある風貌なのか…… そんな中でA4無地なのはこれくらい?

個人的に、collegeシリーズやKTノートでおなじみのキョクトウがA4無地を出していなかったのが意外でした。KTノートA4無地糸綴じ60枚とか丁度隙間っぽいですが、需要がイマイチなのかも知れません。