fstab'daki libvirt / 9p / kvm montajı önyükleme zamanında bağlanamıyor


18

Qemu-kvm / 9p kullanarak paylaşılan bir klasör bağlamaya çalışıyorum ve fstab dosyasına eklerseniz çalışma başarısız olur. Önyükleme sırasında aygıtın bağlanamayacağı konusunda bir hata alıyorum, ancak "mount -a" komutunu çalıştırırsam, aygıt bağlanır.

fstab satırı:

src_mnt /src 9p trans=virtio 0 0

Dmesg'den görebiliyorum:

[    7.606258] 9p: Could not find request transport: virtio

Ve birkaç satır sonra "virtio-pci" girdilerini görüyorum. Ancak bu cihaz kullanıma hazır olana kadar montajı nasıl erteleyeceğim konusunda net değilim.

Yanıtlar:


24

İdeal bir çözüm olup olmadığını bilmiyorum, ancak bir Ubuntu 12.04 misafirinde initramfs'ye 9p modülleri ekleyerek işe başladım.

/ Etc / initramfs-tools / modüllerine eklendi:

9p
9pnet
9pnet_virtio

Sonra:

sudo update-initramfs -u

Teşekkür ederim - bunun idealçözüm olduğunu söylemenin makul olduğunu düşünüyorum . Sorun, modülün dosya sistemi montajı sırasında takılmaması, çözümünüz montaj zamanında yüklenen modüller listesine eklemektir.
Greg

Bu neden ideal?
lindhe

4

Ubuntu 14.04'te bhassel'in cevabına9pnet_virtio göre sadece modülün önceden yüklenmesi gerekir .

Belirtilenlerden birkaç satır önce dmesg, diğer ikisinin zaten yüklü olduğunu ancak gerekli taşımayı bulamadığını gösterir.

[ 1.370611] 9pnet: Installing 9P2000 support 
[ 1.376384] 9p: Installing v9fs 9p2000 file system support 
[ 1.376754] 9pnet: Could not find request transport: virtio 

OpenSUSE 13.2'de qemu / KVM'de Ubuntu 14.04 misafiriyle test edildi.


Merhaba Tim ve siteye hoş geldiniz. Yanıtların sıralamasının hem kullanıcı oylarıyla hem de kullanıcı tercihleriyle değişebileceğini unutmayın, bu nedenle hangi cevaba atıfta bulunduğunuz konusunda her zaman açık olun. Bunu şimdilik yayında düzelttim; lütfen gelecekte kendiniz yapın. Teşekkürler!
bir CVn

Bu ubuntu 16.04 üzerinde de çalışır.
stalet

Bu ayrıca Ubuntu 18.04 üzerinde çalışıyor
jackkamm

1

Buradaki problem, virtio montajının ana bilgisayara nasıl ayarlandığıdır. Bu sorunu çözmenin iki yolu vardır.

Çözüm 1: Taşıma yerine eşlenmiş kullanın

<filesystem type='mount' accessmode='mapped'>
  <source dir='/src_dir'/>
  <target dir='src'/>
</filesystem>

Bu çalışır, ancak tüm dosyalar kullanıcı tarafından sahip olunan libvirt olarak çalışıyor. Bu, tmp veya günlük dosyası sistemleri için iyi çalışmaz.

Çözüm 2: Libvirt'i root olarak çalıştırın ve geçidi kullanın

vi /etc/libvirt/qemu.conf

Sonra uncomment veya ekleyin:

user=root
group=root

Ana bilgisayarı yeniden başlatın veya tüm libvirt ve qemu / kvm işlemlerini yeniden başlatın ve geçidi kullanın:

<filesystem type='mount' accessmode='passthrough'>
  <source dir='/src_dir'/>
  <target dir='src'/>
</filesystem>

Ana bilgisayar için bazı güvenlik etkileri olsa da, bu, uid: ana bilgisayardaki dosyaların giderini, günlük ve tmp dosya sistemleri için iyi çalışan konuk ile aynı hale getirir. Bu durumda yaptığım şey bu.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.