【Linux】HDD を NTFS でフォーマット
先日、外付けHDD を NTFS でフォーマットした。
しばらくしたらやり方忘れるので、記事にまとめておく。
ラズパイでの操作を想定。Debian系なら基本的に同じはず。
はじめに
ざっくり手順は以下。
忘れた時のため、説明が無駄に長くなってます。
準備
バックアップを取る
HDD に入っているデータは消えるので事前にバックアップを取っておくこと。
必要ソフトをインストール
ラズパイにデフォでは NTFS を扱うツールが入っていない。
以下のコマンドで ntfs-3g をインストール
$ sudo apt-get install -y ntfs-3g
上記の ntfs-3g を入れれば、NTFS のフォーマット、マウント、書き込み、読み込みに必要なツール(ソフト)がインストールされます。
パーティションの設置
HDDにパーティションを設けます。
パーティションを作らずまるごとフォーマットしてもいいですが、作っておいた方が融通が効く。
特に理由がない限りパーティションを設けるべき。
以下の操作はアンマウントした状態で行う。すでにマウントしている場合はアンマウントしておく。
目的のHDDのデバイスファイルを探す
外付けHDDを接続して以下のコマンド。
$ sudo fdisk -l
以下の感じに表示されると思うので、容量等見て目的のデバイスファイルを探します。
Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
~ 中略 ~
Disk /dev/mmcblk0: 14.9 GiB, 15931539456 bytes, 31116288 sectors
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: dos
Disk identifier: 0xeff4f6a1
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 8192 96042 87851 42.9M c W95 FAT32 (LBA)
/dev/mmcblk0p2 98304 31116287 31017984 14.8G 83 Linux
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
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: dos
Disk identifier: 0x00000000
今回私の場合は '/dev/sda' が目的のデバイスファイルです。
環境によって /dev/sdb だったりもするので必ず確認すること。
デバイスファイルを指定してパーティションの設置
目的のデバイスファイルが分かったら、fdisk コマンドでパーティションを設けます。
以下のコマンド。
$ sudo fdisk /dev/sda
※デバイスファイルは環境に合わせて指定してください。
以下の感じなるんで、コマンドを打って操作していきます。
コマンドに 'w' を指定するまで書き込まれないので、間違えてもやり直せば大丈夫。
Welcome to fdisk (util-linux 2.29.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help):
'p' で現在のパーティションを確認できます。不要なのがあれば 'd' で消しておきます。
Command (m for help): p
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
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: dos
Disk identifier: 0x00000000
Command (m for help):
'n' で新たなパーティションを追加します。
今回はHDD全体を一つのパーティションにしますので、全部何も入力せず Enter してます。
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): ← パーティションのタイプ、プライマリか拡張
Using default response p.
Partition number (1-4, default 1): ← パーティション番号、通常はそのまま
First sector (2048-976773167, default 2048): ← パーティションの先頭、通常はそのまま
Last sector, +sectors or +size{K,M,G,T,P} (2048-976773167, default 976773167): パーティションの末尾、設けたいパーティションのサイズを入力。
Created a new partition 1 of type 'Linux' and of size 465.8 GiB.
Command (m for help):
'p' で確認してみる。この段階ではまだ書き込まれていないのでやり直せる。
Command (m for help): p
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
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: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 976773167 976771120 465.8G 83 Linux
Command (m for help):
/dev/sda1 とか言うのが作られているのが確認できるかと思います。
右っかわの Type が Linux になっているので変更します。
't' を入力して変更します。今回は NTFS にする予定なので'HPFS/NTFS/exFAT'にします。
Command (m for help): t
Selected partition 1 ← パーティション番号、一つの場合は勝手に選択される模様
Partition type (type L to list all types): l ← 'l' でタイプのリストを表示
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden or c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx
5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data
6 FAT16 42 SFS 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility
8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt
9 AIX bootable 4f QNX4.x 3rd part 93 Amoeba e1 DOS access
a OS/2 Boot Manag 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi ea Rufus alignment
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS fs
f W95 Ext'd (LBA) 54 OnTrackDM6 a6 OpenBSD ee GPT
10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/
11 Hidden FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC b
12 Compaq diagnost 5c Priam Edisk a9 NetBSD f1 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor ab Darwin boot f4 SpeedStor
16 Hidden FAT16 63 GNU HURD or Sys af HFS / HFS+ f2 DOS secondary
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fb VMware VMFS
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fc VMware VMKCORE
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fd Linux raid auto
1c Hidden W95 FAT3 75 PC/IX bc Acronis FAT32 L fe LANstep
1e Hidden W95 FAT1 80 Old Minix be Solaris boot ff BBT
Partition type (type L to list all types): 7 ← 上記のリストから目的のタイプ番号を入力
Changed type of partition 'Linux' to 'HPFS/NTFS/exFAT'.
Command (m for help):
'p' で確認します。
Command (m for help): p
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
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: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 976773167 976771120 465.8G 7 HPFS/NTFS/exFAT
Command (m for help):
'HPFS/NTFS/exFAT' になっているのが確認できると思います。
問題がなければ書き込みます。
'w' で書き込む。
※HDD内のデータは読み込めなくなるのでバックアップを取っていることを確認してから行って下さい。
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
書き込むと勝手にfdiskが終了してプロンプトに戻ってくる。
以下のコマンドでパーティションが作れたか確認します。
$ sudo fdisk -l
~ 省略 ~
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
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: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 976773167 976771120 465.8G 7 HPFS/NTFS/exFAT
/dev/sda に /dev/sda1 が確認できました。
NTFS でフォーマット
パーティションが作れたら、次はフォーマット。
パーティションを NTFS でフォーマットする
上記で新たに作ったパーティションを NTFS でフォーマットします。
'/dev/sda1' が今回作った対象のデバイスファイルです。※環境によって違います。
以下のコマンド。
$ sudo mkfs.ntfs -Q /dev/sda1
Cluster size has been automatically set to 4096 bytes.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.
'-Q' はクイックフォーマット。指定しないとゼロ埋めするのでめちゃくちゃ時間が掛かる。
NTFS をマウントできるか確認
フォーマットが完了したら、ちゃんとマウントできるか確認しておきましょう。
以下のコマンド等で適当なところにマウントしてみます。
$ sudo mount /dev/sda1 /mnt
df コマンドで表示してみます。
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/root 15G 2.3G 12G 17% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 464M 0 464M 0% /dev/shm
tmpfs 464M 30M 434M 7% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 464M 0 464M 0% /sys/fs/cgroup
tmpfs 64M 0 64M 0% /tmp
tmpfs 16M 0 16M 0% /var/tmp
tmpfs 16M 16M 0 100% /var/log
/dev/mmcblk0p1 43M 23M 20M 53% /boot
tmpfs 93M 0 93M 0% /run/user/1001
/dev/sda1 466G 79M 466G 1% /mnt
認識されていますね。あとは煮るなり焼くなり好きに使えばいいです。
おわりに
長くて読む気力がなくなる出来になりましたが、私が忘れた時用なのでご容赦下さい。
何かの参考になれば幸いです。
【Linux】exFAT でフォーマットしたHDDが安定しない
題名の通り。
Linux で exFAT を使うのはあまり良くないのかしら?
はじめに
今まで外付けHDDは exFAT でフォーマットして使用していました(Windowsでも読み込めるように)。
バックアップ用として新しい外付けHDDを exFAT でフォーマットしたところ不具合が出ました。
新しい外付けHDD以外は exFAT で問題なく動作しています。
ハード と fuse-exfat との相性の問題なのかなと勝手に思っています。
構成と症状
構成
- マシン: Raspberry Pi 3 Model B
- OS: Raspbian 9 Stretch
- HDD: Seagate BarraCuda 3.5 1TB
- HDDケース: RSHTECHのやつ
症状
- 書き込みが遅い(約250GBで16時間掛かってましたorz)
- I/Oエラー頻発
USB2 での接続になるので速度はあまり期待していませんが、16時間はかかり過ぎ。
ちなみに、私のノートPC(Debian) に接続してマウントしても同様の症状。
そして、アンマウントで固まる。
df コマンドを打つと「通信端点が接続されていません」と表示された。
解決策
パーティションを切り直したり、フォーマットし直したりしましたが、やはり改善されませんでした。
根本的な解決ではありませんが、私の環境では NTFS にフォーマットすることで不具合は解消されました。
同じような症状になっている方がいれば NTFS を試してみると良いかもしれません。
おわりに
exFAT も NTFS もWindowsのファイルシステムなのでLinuxではしばしば融通の効かない所があるようです。サポートはされているようですが、オープンソースじゃないしね。
私自身「Linuxで運用する場合どちらが安定しているか」とかは、よく分かっていません。
ただ、上記の構成で私の場合 NTFS にしたら改善したよってだけの記事。
何かの参考になれば幸いです。
【Linux】QuickViewer という画像ビューアが快適だった(webp)
皆さん画像ビューアは何を使っていますか?
今回「QuickViewer」という画像ビューアを使ってみたらすごく快適に動作したので勝手に紹介しようと思います。
まえおき
私が「QuickViewer」を使い始めた経緯なんかを書いておきます。
読み飛ばしていいです。
経緯
ざっくり
- HDDの寿命が近そう、移行しよう。 ↓
- 写真(jpeg)が未整理で容量喰ってる。懐かしくて消せない。 ↓
- webp に圧縮して容量空けよう。 ↓
- Viewnior じゃ開けないじゃん、なんかいいビューアないの? ↓
- QuickViewer すげー。
長々説明
データ保存用のハードディスク(HDD)の使用時間が30,000時間を超えたので、データを整理して新しいHDDに移行しようと思って整理を始めました。
そしたら大量の画像ファイル(写真)が結構な容量を喰っていて、全く整理されていなかったんですよ。デジカメやスマホで撮った jpeg をそのまま突っ込んでいるので。。。
皆さんは定期的に整理してますか?
開いて見てみると懐かしいなぁと思ってどうでもいい写真も消せないんですよね。なので、大事な写真は jpeg のままにして、大事じゃないのは webp に圧縮して容量を抑えようと考えました。
Linuxで webp を開けるビューアって少ないんですよ。そこでインストールが楽で比較的軽い「QuickViewer」に出会いました。
余談
なぜ WEBP にしたか
Google開発なので、今後はもっと普及すると思うっていうのが第一の理由。
また、圧縮率が高いわりにはデコードも高速なのでバランスがいいと思います。Android端末でもデフォルトで開けるので楽。
BPG というフォーマットもあるが、HEVC の特許の一部が含まれているだかで普及は難しいようです。Android端末では開けないので、使い回しがしにくい、デコードは少々時間が掛かる。今回は却下。だが、個人的にはかなり好きなフォーマットです。
QuickViewer
前置きが長くなりましたが、ここからが「QuickViewer」の話です。
機能
QuickViewer
URL: https://kanryu.github.io/quickviewer/index-ja
上記の「こういうソフトです」や「機能紹介」で書かれています。
わざわざ書く必要もないので私が特に気に入った部分のみ紹介します。
- AppImageなので、依存パッケージとか不要
- 起動が早い
- 画像の切り替えが一瞬(先読みのおかげ)
- 次世代フォーマット(webp, jpeg2000, jpeg xr)に対応してる
- シンプルな表示(ウィンドウ内に画像のみ表示)ができる
- zip等、直接読み込める
手軽に試せるので一回使ってみるといいと思います。
インストール
インストールというより起動方法かな。
QuickViewer に飛ぶ。
少し下にスクロールして、ダウンロードの「ビルド済みリリース版」をクリック。
ビルド済みのファイルが置かれているページに移動するので、「QuickViewer-1.1.1-x64.AppImage」を探し、クリックしてダウンロード。
※最新版は 1.1.8 らしいが、AppImageファイルは 1.1.1 以前の物しかない。
QuickViewer の github ページ。
v1.1.8 に AppImage はない。
v1.1.1 の AppImage をダウンロードする。
ホームディレクトリにでも保存してください。
AppImageは実行ファイルなので、実行できるように実行権限を付与します。
とりあえずターミナルを起動して以下のコマンド。
$ ls -l ~/QuickViewer-1.1.1-x64.AppImage
-rw-r--r-- 1 turtlechan turtlechan 26901336 3月 1 00:00 QuickViewer-1.1.1-x64.AppImage
パーミッションが「-rw-r--r--」になっていると思うので、以下のコマンドで「-rwxr-xr-x」にします。
$ chmod 755 ~/QuickViewer-1.1.1-x64.AppImage
確認します。「-rwxr-xr-x」になっていればオッケーです。
$ ls -l ~/QuickViewer-1.1.1-x64.AppImage
-rwxr-xr-x 1 turtlechan turtlechan 26901336 3月 1 00:00 QuickViewer-1.1.1-x64.AppImage
以下のコマンドで起動してみます。
$ ~/QuickViewer-1.1.1-x64.AppImage
Database: connection ok
問題なく起動するはずです。
ホームディレクトリに置いておいても問題はないですが、
QuickViewer ファイルをPATH(環境変数)の通っているディレクトリに移動してファイル関連付けで設定した方が利便性があると思います。
その辺の設定はお好みでお願いします。
使い方
QuickViewer公式で日本語対応しているし、機能紹介もされているのでそちらを見ながら自分でいじってみるのが一番かと思います(投げやり)。
設定ファイルは「~/.quickviewer/」ディレクトリが作成されその中にあるようです。
おわりに
Viewnior をメインに使っているけど、QuickViewer に乗り換えようかな。
画像ビューアを探している人は是非一回使ってみて下さい。きっと快適に動作します。
何かの参考になれば幸いです。
※この記事は QuickViewer の作者様とは一切関係ないので、この記事に不備があっても私の責任です。
間違っても作者様に迷惑のないようにお願いいたします。