私はルートファイルシステムを含むZFSにDebian Stretchをインストールし、スワップとして使用するルートプールにボリュームを作成しました。コンピュータがシャットダウンしたときを除いて、すべてがうまく機能します。画面に次の2つのエラー行が表示されます(エラーはどのファイルにも記録されません)。
[...] failed deactivating swap /dev/rpool/swap
[...] failed deactivating swap /dev/zd0
予想通り、スワップがプールに存在します。
root@cerberus:~# zfs list -o name,type,used,avail,refer,mountpoint
NAME TYPE USED AVAIL REFER MOUNTPOINT
rpool filesystem 609G 290G 96K none
rpool/stretch filesystem 580G 290G 580G /
rpool/swap volume 29.8G 319G 29.1M -
オペレーティングシステムは期待どおりにスワップを使用します。
root@cerberus:~# cat /proc/swaps
Filename Type Size Used Priority
/dev/zd0 partition 29360124 0 -1
最後に、デバイスが存在し、期待どおりに接続されます。
root@cerberus:~# dir /dev/zd0
brw-rw---- 1 root disk 230, 0 2017-01-18 19:51 /dev/zd0
root@cerberus:~# dir /dev/rpool/swap
lrwxrwxrwx 1 root root 6 2017-01-18 19:51 /dev/rpool/swap -> ../zd0
root@cerberus:~# dir /dev/zvol/rpool/swap
lrwxrwxrwx 1 root root 9 2017-01-18 19:51 /dev/zvol/rpool/swap -> ../../zd0
もしそうなら、シャットダウン中にこのエラーメッセージが表示されるのはなぜですか?私はこれらのエラーを無視しても安全ですが、その原因を知りたいという結論に達しました。
編集1(airhuffに関するコメント)
スワップボリュームの属性は次のとおりです。
root@cerberus:~# zfs get all rpool/swap
NAME PROPERTY VALUE SOURCE
rpool/swap type volume -
rpool/swap creation Tue Jan 17 16:36 2017 -
rpool/swap used 29.8G -
rpool/swap available 319G -
rpool/swap referenced 29.1M -
rpool/swap compressratio 1.00x -
rpool/swap reservation none default
rpool/swap volsize 28G local
rpool/swap volblocksize 4K -
rpool/swap checksum on default
rpool/swap compression off local
rpool/swap readonly off default
rpool/swap copies 1 default
rpool/swap refreservation 29.8G local
rpool/swap primarycache metadata local
rpool/swap secondarycache none local
rpool/swap usedbysnapshots 0 -
rpool/swap usedbydataset 29.1M -
rpool/swap usedbychildren 0 -
rpool/swap usedbyrefreservation 29.7G -
rpool/swap logbias throughput local
rpool/swap dedup off inherited from rpool
rpool/swap mlslabel none default
rpool/swap sync always local
rpool/swap refcompressratio 1.00x -
rpool/swap written 29.1M -
rpool/swap logicalused 28.6M -
rpool/swap logicalreferenced 28.6M -
rpool/swap snapshot_limit none default
rpool/swap snapshot_count none default
rpool/swap snapdev hidden default
rpool/swap context none default
rpool/swap fscontext none default
rpool/swap defcontext none default
rpool/swap rootcontext none default
rpool/swap redundant_metadata all default
rpool/swap com.sun:auto-snapshot false local
編集2(Michael Kjörlingによるコメント):
出力には関連項目は何も表示されず、dmesg
どのファイルにも関連項目は表示されません/var/log
(これは「...(エラーはどのファイルにも記録されていません)...」という意味です)。私は何かを理解しようとしましたが、last -x
役に立ちませんでした。
スワップを手動でオフにしても問題は発生しないようです。
root@cerberus:~# swapoff /dev/zd0
root@cerberus:~# echo $?
0
root@cerberus:~#