先日、otgデバイスモードでファイル共有を行う方法をまとめました。
elsammit-beginnerblg.hatenablog.com
そこでループバックマウントを実行していますが、
そもそもループバックマウントって何ぞや??
ということを書けていなかったので、ここで紹介したいと思います!!
■ループバックマウントってなんぞや?
ループバックデバイスとも言いますが、、、
一般的なファイルを,あたかもハード・ディスクなどのブロック型デバイスであるかのように扱うための機能です。 パソコン上でイメージ・ファイルを直接操作したい場合などに使います。
例えば、HDDやCDなどをイメージ化したデータをパソコン上で表示、操作したい時に用いる技術になります。
ループバックマウントを用いなかった場合、
ddコマンドのようなディスクへの書き込みコマンドを用いない限りイメージファイルを見ることが出来ないです。
ループバックマウントにより、上記のようなddコマンド等による書き込みを行うことなく、イメージファイルの表示、操作が可能になります。
■ループバックマウントの基本的な操作
ではコマンドによりループバックマウントの方法についてまとめていきたいと思います。
まずはマウント用のイメージファイルの作成を行ってみます。
こちらです。
dd if=/dev/zero of=testImg.img bs=1M count=100
では、ループバックマウントを行ってみます。
コマンドはこちら.
sudo losetup /dev/loop0 testImg.img sudo mkfs.ext4 /dev/loop0 sudo mount -t ext4 /dev/loop0 /mnt
この3行ですが、
sudo losetup /dev/loop0 testImg.img
作成したtestImg.img とループバックデバイス(/dev/loop0)を関連させ、
sudo mkfs.ext4 /dev/loop0
にてext4でフォーマット。
そして最後は、
sudo mount -t ext4 /dev/loop0 /mnt
マウントです。
逆にマウントを解除する場合ですが、
sudo losetup -d /dev/loop0
でOKです。
■ループバックマウントの活用
ループバックデバイスは先ほど記載した通り、マウントすれば書き込むことなくイメージファイル内のデータの閲覧が出来ます。
マウントさえ出来てしまえば、イメージファイル内のフォルダ、ファイルを通常のファイルシステムと同様に操作することが可能になります。
また、マウントさえ出来てしまえばファイル操作も可能になります。保存されるのはイメージファイル内です。
■最後に
今回はループバックマウントについて記載いたしました。
実はLinuxを勉強したての時、このループバックマウントに躓きました。
パッと理解できなかったんですよね?
どんな動き?と考えてしまって。
使っていくと分かる技術かと思います。
写経でよいので上記コードをまねていじってみると色々分かるかもです!!