『Back Street Girls -ゴクドルズ-』(2018)
笑えるアニメが増えてきました。
まだ私が十代の頃、大人ぶって、バーにジュースを飲みに行くことがありました。
そこで、ボーイッシュな女友達について、アメリカ人と日本人の友人が話していて、
「いやいや、男、みたい、ではなく、男なんだよ」
「have you checked?」
ってやりとりをしていたんですが、周囲で笑いがどっとおこりました。
当時、話していることは分かったのですが、何が面白いのか分かりませんでした。
何が面白いか聞いたら、これがアメリカンジョークみたいな感覚かも、って皆言ってましたが、今でもその感覚は分かりません。ユーモアは、相性もあるので、面白さの感覚は人それぞれですね。
まあこのアニメは、間違いなく笑えます。
今回は、チェックつながりで、fsck使います。
ハードディスクをまるごとチェックするのは面倒なので、loopデバイスを作成してチェックします。
まずは適当に100Mのファイル作成。
takk@deb9:~/tmp$ ls takk@deb9:~/tmp$ truncate -s 100M a.bin takk@deb9:~/tmp$ file a.bin a.bin: data takk@deb9:~/tmp$ od -tx1 -Ax a.bin 000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 * 6400000 takk@deb9:~/tmp$
中身は全部0ですね。
フォーマットします。ext3にしました。
takk@deb9:~/tmp$ sudo mkfs -t ext3 a.bin mke2fs 1.43.4 (31-Jan-2017) Discarding device blocks: done Creating filesystem with 102400 1k blocks and 25688 inodes Filesystem UUID: 4213e153-bc5b-4fa5-8407-17c06279f0b4 Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Allocating group tables: done Writing inode tables: done Creating journal (4096 blocks): done Writing superblocks and filesystem accounting information: done takk@deb9:~/tmp$
フォーマットできたか確認。
takk@deb9:~/tmp$ file a.bin a.bin: Linux rev 1.0 ext3 filesystem data, UUID=4213e153-bc5b-4fa5-8407-17c06279f0b4 (large files) takk@deb9:~/tmp$
マウントします。
takk@deb9:~/tmp$ sudo mount -o loop a.bin test takk@deb9:~/tmp$
dfで確認。/dev/loop0が増えていますね。
takk@deb9:~/tmp$ df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 udev 2014288 0 2014288 0% /dev tmpfs 405108 16124 388984 4% /run /dev/sda1 36893152 11101956 23887428 32% / tmpfs 2025524 30232 1995292 2% /dev/shm tmpfs 5120 4 5116 1% /run/lock tmpfs 2025524 0 2025524 0% /sys/fs/cgroup tmpfs 405104 4 405100 1% /run/user/112 tmpfs 405104 20 405084 1% /run/user/1000 /dev/sr0 56614 56614 0 100% /media/cdrom0 /dev/loop0 95054 1567 88367 2% /home/takk/tmp/test takk@deb9:~/tmp$
fsck使います。
takk@deb9:~/tmp$ sudo fsck /dev/loop0 fsck from util-linux 2.29.2 e2fsck 1.43.4 (31-Jan-2017) /dev/loop0 is mounted. e2fsck: Cannot continue, aborting. takk@deb9:~/tmp$
ん~。マウントしていると使えないようです。
umount後、losetupで/dev/loop0を作成することにします。
takk@deb9:~/tmp$ sudo umount test takk@deb9:~/tmp$ sudo losetup /dev/loop0 a.bin takk@deb9:~/tmp$ sudo losetup -l NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO /dev/loop0 0 0 0 0 /home/takk/tmp/a.bin 0 takk@deb9:~/tmp$
これで、/ev/loop0ができました。
ここで、man fsck確認。
FSCK(8) System Manager's Manual FSCK(8)
名前
fsck - Linux ファイルシステムのチェックと修復を行う
書式
fsck [ -sAVRTNP ] [ -C [ fd ] ] [ -t fstype ] [filesys ... ] [--] [
fs-specific-options ]
~省略~
fsck の返り値は、以下の状態を表す数の和となる。
0 - エラーなし
1 - ファイルシステムのエラーが修正された
2 - システムをリブートする必要がある
4 - ファイルシステムのエラーが修正されないまま
残っている
8 - 操作エラー
16 - 利用法・文法のエラー
32 - fsck がユーザ要求によってキャンセルされた
128 - 共有ライブラリのエラー
複数のファイルシステムをチェックした場合の返り値は、 チェックした各
ファイルシステムの返り値に対して、 ビットごとの OR をとったものにな
る。
~省略~
-a 質問なしで自動的にファイルシステムを修復する (このオプションの
使用には注意を要する)。 ほとんどのファイルシステムチェッカーは
-a オプションに対応しているが、 e2fsck(8) においては -a オプ
ションは過去互換性のために準備されているだけである。 したがっ
て e2fsck では、このオプションは (安全に利用できる) -p オプ
ションにマップされ、 いくつかのフィルシステムチェッカーがサ
ポートしている -a にはマップされない。
注意する点としては戻り値でしょうか。0なら成功は覚えられますが、他は覚えられないので、毎回man fsckで確認することになりそうです。
では、fsckかけます。
takk@deb9:~/tmp$ sudo fsck -a /dev/loop0 fsck from util-linux 2.29.2 /dev/loop0: clean, 11/25688 files, 8913/102400 blocks takk@deb9:~/tmp$ echo $? 0 takk@deb9:~/tmp$
成功しました。ファイルを破壊してないので当たり前ですが、特に問題ないようです。
次回、ファイルを破壊後、修復してみます。


コメント