Linux hostu ve Windows misafiri arasında dosya paylaşmak için virt-manager kullanın


26

Linux sunucumda bir klasörü Windows konuğumla paylaşmak için virt-manager içindeki "Dosya Sistemi Geçidi" sanal donanım seçeneğini kullanmak mümkün mü? Bunun bir Linux konuğu ile nasıl yapılacağı hakkında bazı dersler buldum, ancak bunu Windows konuğumla denediğimde VM'yi başlatmaya çalışırken aşağıdaki hata mesajını alıyorum:

Error starting domain: Unable to read from monitor: Connection reset by peer

Traceback (most recent call last):   File "/usr/share/virt-manager/virtManager/asyncjob.py", line 100, in cb_wrapper
    callback(asyncjob, *args, **kwargs)   File "/usr/share/virt-manager/virtManager/asyncjob.py", line 122, in tmpcb
    callback(*args, **kwargs)   File "/usr/share/virt-manager/virtManager/domain.py", line 1210, in startup
    self._backend.create()   File "/usr/lib64/python2.7/site-packages/libvirt.py", line 698, in create
    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: Unable to read from monitor: Connection reset by peer

Bazı belgeler bulmaya çalıştım, ancak bulabildiğim tek şey bir SSS’ye ve “bazı ekran görüntülerine” bağlanan resmi sayfa oldu .

Yanıtlar:


16

Bunun Windows konuklarını kullanarak mümkün olabileceğini sanmıyorum. Genellikle Linux KVM sunucusuna bir Samba sunucusu kurarım ve sonra bunu KVM misafirlerime kullanarak bir klasörü paylaşırım.

Dosya Sistemi Geçidi

Bir KVM sunucusunun rehberini KVM misafirleriyle (Linux) paylaşma dokümanları burada virt-manager web sitesinde mevcuttur. Sayfa başlığı: Örnek Host dosyalarını Konuk ile paylaşma .

Samba'yı kurma

Linux-kvm web sitesi ayrıca Samba kurulum talimatlarını içerir. Bu belgeye şu adresten ulaşılabilir: Başlık: Linux Host cihazınızdaki dosyaları, Samba kullanarak bir Windows Misafiriyle nasıl paylaşabilirsiniz .


"samba kurma" kısmı için yaşasın. Daha güvenli bir yaklaşımdır
pqnet

@pqnet: Nasıl ve niçin daha güvenli olduğunu niteleyebilir misiniz?
0xC0000022L

4
@ 0xC0000022L, çünkü sanallaştırıcının, işletim sistemi değiştiğinde kırılabilecek konuk işletim sistemini etkin bir şekilde kandırabilmesine bağlı değildir. Samba bir ağ protokolüdür, bu nedenle konuk işletim sisteminin yapabilecekleri ve yapamadıkları hakkında daha az beklentisi vardır.
pqnet

6

Hem Gnome hem de KDE masaüstü ortamının varsayılan dosya yöneticileri, SMB protokolünü kullanarak Windows paylaşılan kaynaklarına kolayca erişebilir. Windows
ana bilgisayarına bir samba sunucusu kurmanıza gerek yok çünkü Windows işletim sistemi zaten samba iletişim protokolleri ile birlikte geliyor.

Diyelim ki misafir işletim sisteminizin " Windows XP " olduğunu varsayalım , paylaşmak istediğiniz klasörü seçin ya da bu amaçla bir tane oluşturun, örneğin "hostshare" ve sağ tıklayın -> " properties " -> " sharing " Tab -> seçin: " Bu klasörü ağda paylaş " ve " Ağ kullanıcısının dosyalarımı değiştirmesine izin ver ".

Bu noktada, pencerelerin güvenlik duvarlarının paylaşılan dosya ve yazıcı kaynaklarına erişim sağladığından emin olun. " Başlat Menüsü " -> " ayarlar " -> " Denetim Masası " -> " windows firewall " -> " İstisnalar " Sekmesi -> seçin: -> " Dosya ve Yazıcı Paylaşımı ".

Linux ana makinesinin Windows konuk VM'den ağ üzerinden görülebildiğinden emin olun. Böylece, pencerelerin komut satırından şunu yazın: " ping 10.0.0.12 ", bu durumda (örnek olarak) "10.0.0.12" ana bilgisayar IP adresidir; Bunu kendin yapmak zorundasın. Echo'nun cevapları yoksa, bu sorunu gidermeniz gerekir.
Aynı şeyi Linux komut satırından da yapın: " ping -c3 192.168.122.216 ", burada bu sayılar (örnek olarak) konuk VM'ye atanan virt-IP adresine aittir; kendin için değiştirmelisin.

Linux ana bilgisayarından " Nautilus " u açın ve " Dosya " -> " Sunucuya Bağlan " -> " Sunucu Adresi " kutularına gidin: " smb / 192.168.122.216 " -> " Bağlan ".
Nautilus penceresi, pencerelerinizin yerleşik Samba sunucusundaki göz atılabilir kaynaklarıyla açılır. " Hostshare " windows klasörünün içeriğini görebilir ve erişebilirsiniz . Bu kadar!


2

@Slm'nin en iyi cevabı verdiğine inanıyorum. Ancak, başka bir kullanım durumu var. Bu alternatif olsa da, biraz kesmek.

Kaba rehber Bu kesin komutları dikkate almayın:

  1. bir görüntü dosyası oluşturun (ms-disket veya ISO-9660 CD'si)
  2. görüntüyü bir dosya sistemiyle biçimlendirin, örneğin mkfs.msdos
  3. mcopy, et al.
  4. Guest VM cd-rom veya disket sürücüsüne görüntü takma

Bu ideal değildir, ancak Misafir VM'niz dom0 ve Guest arasındaki ağ protokolü bağlantılarına izin vermiyorsa (kapalı bir VPN oturumu sırasında olduğu gibi) işe yarayabilir.

Daha fazla bilgi burada:

/programming//q/11202706/3407600


1

Salt okunur bir paylaşım mümkündür (Windows konukları R / W'ye sahiptir ve yalnızca Linux ana bilgisayarı okuyabilir), çünkü Linux ana bilgisayarı NTFS'yi geri döngü cihazına bağlayabildiğinden, Windows konukları için 'raw' türü depolamayı kullandığınızı varsayalım:

Ham görüntü olarak Win.img'nin olduğunu varsayalım, disk olarak öykünülmüş.

  • Adım 1: fdisk kullanarak dosya sisteminizin uzaklığını (bir disk olduğundan) bulun:
$ fdisk -lu Win.img

Disk Win.img: 16.3 GB, 16252928000 bytes
255 heads, 63 sectors/track, 1975 cylinders, total 31744000 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
Disk identifier: 0x3a793a79

    Device Boot      Start         End      Blocks   Id  System
    Win.img   *          63    31712309    15856123+   7  HPFS/NTFS/exFAT

Şimdi ofseti hesapla = 63 x 512 = 32256

  • 2. Adım: bağlayın
mount Win.img /mntpoint -o ro,loop,offset=32256

DİKKAT

RW'yi monte edebilirsiniz ve böylece Linux ona yazabilir, ancak dosya sisteminiz bozulur! Çünkü hem Linux hem de Windows, AYNI ZAMANLI! Yazmak istedikleri dosyaları yazmak için aynı boş blokları tahsis edebilirler!

Linux okuma nadir durumlarda, istikrarlı değil

Bu yöntemle dosya sistemi güvenlidir ve kararlı bir okumaya sahip olmak için çoğunlukla Tamam. Ancak, dediğim gibi, dosya sistemine aynı anda erişiyorlar ve bu nedenle Windows bir şeyler yazmaya çalıştığında, Linux bildirilmeyebilir ve bu nedenle bozuk bir şey okuyabilir. Ancak, dikkatli kullanırsanız, okuma çok kararlı olmalıdır.


3
Bu ne kadar güvenilir? Veri önbellekte olabilir. Yazma, diğer sistemdeki okumalara göre atomik olmayacaktır.
ctrl-alt-delor


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.