
私はFAT16/32/NTFSパーティション(好ましくは外部USBドライブ)で実行(圧縮されていない)できるLinuxディストリビューションを探しています。私はSlaxとPorteusと他のいくつかに触れましたが、どちらもモジュラーシステムを使用してシステムファイルを含みます。そのようなディストリビューションが存在しない場合は、そのパーティションで動作するようにLinuxディストリビューションを変更するにはどうすればよいですか?ここでは、セキュリティ、権限、速度などの要素は重要ではありません。
その理由は、xorgとLinuxデスクトップの内部が実際にどのように機能するかを調べています。私はUSBドライブを起動すると同時にファイルシステムを見ることができるようにQEMUを使用しています。
答え1
シングルブロックデバイスは同時に2台以上のシステムでマウント、読み取り、書き込みができないため、USBドライブを共有ストレージとして使用することはあなたの目的には適していません。ファイルシステムをファイルごとに複数のホスト間で共有できるようにするNFSベースのディスクレスシステムを設定できます。
ここには、完全な(やや古い)Debianデスクトップの事前に構築された画像を使用する方法に関する小さなガイドがあります。このウェブサイトから。私はDebianホストで作業していると仮定していますが、これを他のディストリビューションに簡単に適用できると確信しています。
debian_wheezy_amd64_desktop.qcow2
上記のサイトからQCOW2画像をダウンロードしてください。必要な画像を抽出するにはqemu-nbd
(apt-get install qemu-img
):
# modprobe nbd
# qemu-nbd -c /dev/nbd0 /path/to/debian_wheezy_amd64_desktop.qcow2
# mount /dev/nbd0p1 /mnt -o ro
# mkdir -p /srv/nfsroot/wheezy
# rsync -avP /mnt/ /srv/nfsroot/wheezy/
# umount /mnt
# qemu-nbd -d /dev/nbd0
/etc
ディスクがないシステムの一部のファイルを回復する必要があります。まず、ハードドライブのパーティションを表すUUID=
inで始まる行をコメントアウトします。/srv/nfsroot/wheezy/etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
#UUID=613f176b-eca4-47e6-93a6-32653ca1982e / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
#UUID=24674a13-481b-4ff8-913f-9099661397bd none swap sw 0 0
/srv/nfsroot/wheezy/etc/network/interfaces
次に、NetworkManagerを遠ざけるために以下を追加しますeth0
。
auto eth0
iface eth0 inet dhcp
ホストにNFSサーバーを設定します。
# apt-get install nfs-kernel-server
# vi /etc/exports
# exportfs -ra
次の行を入力してください/etc/exports
。
/srv/nfsroot/wheezy *(rw,sync,no_subtree_check,no_root_squash,insecure)
これで、カーネルとinitrdイメージとnfsrootコマンドラインを使用してQEMUを起動します。
# qemu-system-x86_64 -enable-kvm -m 512 -kernel /srv/nfsroot/wheezy/boot/vmlinuz-3.2.0-4-amd64 -initrd /srv/nfsroot/wheezy/boot/initrd.img-3.2.0-4-amd64 -append "root=/dev/nfs nfsroot=192.168.1.2:/srv/nfsroot/wheezy ip=dhcp rw"
でホストのIPv4アドレスを指定する必要がありますnfsroot=
。内蔵NATを介してQEMU内部ネットワークからアクセスします。
/srv/nfsroot/wheezy
QEMUウィンドウにGUIログイン画面が表示され、システム上のすべてのファイルを表示および変更できます。デフォルトのシステム設定(例:ユーザー/パスワード)は、次のとおりです。読む.txt。