Mapear caminhos do Windows para caminhos do Linux para o VirtualBox

2

Estou tentando sincronizar minhas máquinas do VirtualBox entre o Linux + o Windows. No entanto, o arquivo de configuração abaixo é mostrado no formato de diretório do Windows. Meu local do Linux é /media/large/VirtualBox , meu Windows é D:\VirtualBox . Existe alguma maneira de mapear D:\ para /media/large ?

EDIT: Também preciso alterar AUTOMATICAMENTE \ para / .

<?xml version="1.0" encoding="UTF-8"?>
<!--
** DO NOT EDIT THIS FILE.
** If you make changes to this file while any VirtualBox related application
** is running, your changes will be overwritten later, without taking effect.
** Use VBoxManage or the VirtualBox Manager GUI to make changes.
-->
<VirtualBox xmlns="http://www.virtualbox.org/" version="1.12-windows">
  <Global>
    <ExtraData>
      <ExtraDataItem name="GUI/DetailsPageBoxes" value="general,system,preview,display,storage,audio,network,usb,sharedFolders,description"/>
      <ExtraDataItem name="GUI/GroupDefinitions/" value="go=Linux,go=Mac OSX,go=Virus Tests,go=Windows"/>
      <ExtraDataItem name="GUI/GroupDefinitions/Linux" value="m=961169b7-5d37-4b29-b4bf-c16c39ddda6a,m=321fafcc-9a84-4303-a8f6-777a54bbb420,m=41d67265-baf7-4b07-a98f-163012e4c1ef,m=48f12f20-604b-4977-b415-ca6ca4680c0f,m=e6b39bc1-0de8-49df-8cd1-92250840617e,m=0b09bc8a-8aa9-41e0-b79a-faef029003b0,m=9c6fc622-b0c1-47c8-b2b6-3a0a723257bd"/>
      <ExtraDataItem name="GUI/GroupDefinitions/Mac OSX" value="m=9136bf28-622b-4d5c-9dac-5c46529aff7b"/>
      <ExtraDataItem name="GUI/GroupDefinitions/Virus Tests" value="m=be4f52c0-4d86-445d-bf49-65d86bd1c8de"/>
      <ExtraDataItem name="GUI/GroupDefinitions/Windows" value="m=7ec90f6d-3bf2-4d96-912c-67283315a62b,m=d89443fc-2e4b-4870-a0d4-bf99b2d2a1f5,m=20a56fc1-4acf-436a-a3b1-6c79d1786911,m=4eecddd5-53d6-403f-9e11-3f91be2ea0f7"/>
      <ExtraDataItem name="GUI/HideDescriptionForWizards" value="NewVM"/>
      <ExtraDataItem name="GUI/HostScreenSaverDisabled" value="false"/>
      <ExtraDataItem name="GUI/Input/AutoCapture" value="true"/>
      <ExtraDataItem name="GUI/Input/HostKeyCombination" value="163"/>
      <ExtraDataItem name="GUI/LastItemSelected" value="m=Mac OSX 10.12 Sierra"/>
      <ExtraDataItem name="GUI/LastWindowPosition" value="0,23,1920,1027,max"/>
      <ExtraDataItem name="GUI/RecentFolderCD" value="D:/OS"/>
      <ExtraDataItem name="GUI/RecentFolderHD" value="D:/Virtual Box"/>
      <ExtraDataItem name="GUI/RecentListCD" value="D:\OS\Fedora-Workstation-Live-x86_64-25-1.3.iso,D:\OS\Windows 10 x64 Insider Preview.iso"/>
      <ExtraDataItem name="GUI/RecentListHD" value="D:\Virtual Box\UbuntuPartition.vmdk,D:\Virtual Box\UbuntuPartition-pt.vmdk,D:\Virtual Box\USB.vmdk,D:\Virtual Box\Windows\Windows 7\Windows 7.vdi,D:\Virtual Box\Windows 7.vdi"/>
      <ExtraDataItem name="GUI/SplitterSizes" value="638,1277"/>
      <ExtraDataItem name="GUI/SuppressMessages" value="remindAboutAutoCapture,remindAboutMouseIntegration"/>
      <ExtraDataItem name="GUI/UpdateCheckCount" value="8"/>
      <ExtraDataItem name="GUI/UpdateDate" value="never"/>
    </ExtraData>
    <MachineRegistry>
      <MachineEntry uuid="{961169b7-5d37-4b29-b4bf-c16c39ddda6a}" src="D:/Virtual Box/Linux/Debian/Debian.vbox"/>
      <MachineEntry uuid="{321fafcc-9a84-4303-a8f6-777a54bbb420}" src="D:/Virtual Box/Linux/Kali Linux/Kali Linux.vbox"/>
      <MachineEntry uuid="{41d67265-baf7-4b07-a98f-163012e4c1ef}" src="D:/Virtual Box/Linux/Linux Mint Mate/Linux Mint Mate.vbox"/>
      <MachineEntry uuid="{48f12f20-604b-4977-b415-ca6ca4680c0f}" src="D:/Virtual Box/Linux/Ubuntu 16.04/Ubuntu 16.04.vbox"/>
      <MachineEntry uuid="{9136bf28-622b-4d5c-9dac-5c46529aff7b}" src="D:/Virtual Box/Mac OSX/Mac OSX 10.12 Sierra/Mac OSX 10.12 Sierra.vbox"/>
      <MachineEntry uuid="{be4f52c0-4d86-445d-bf49-65d86bd1c8de}" src="D:/Virtual Box/Virus Tests/Windows XP - Infected/Windows XP - Infected.vbox"/>
      <MachineEntry uuid="{20a56fc1-4acf-436a-a3b1-6c79d1786911}" src="D:/Virtual Box/Windows/Windows 8/Windows 8.vbox"/>
      <MachineEntry uuid="{4eecddd5-53d6-403f-9e11-3f91be2ea0f7}" src="D:/Virtual Box/Windows/Windows 10 Insider Preview/Windows 10 Insider Preview.vbox"/>
      <MachineEntry uuid="{7ec90f6d-3bf2-4d96-912c-67283315a62b}" src="D:/Virtual Box/Windows/Windows XP/Windows XP.vbox"/>
      <MachineEntry uuid="{d89443fc-2e4b-4870-a0d4-bf99b2d2a1f5}" src="D:\Virtual Box\Windows\Windows 7\Windows 7.vbox"/>
      <MachineEntry uuid="{e6b39bc1-0de8-49df-8cd1-92250840617e}" src="D:\Virtual Box/Linux\Fedora\Fedora.vbox"/>
      <MachineEntry uuid="{0b09bc8a-8aa9-41e0-b79a-faef029003b0}" src="D:\Virtual Box/Linux\Gparted\Gparted.vbox"/>
      <MachineEntry uuid="{9c6fc622-b0c1-47c8-b2b6-3a0a723257bd}" src="D:\Virtual Box/Linux\Ubuntu Partition\Ubuntu Partition.vbox"/>
    </MachineRegistry>
    <NetserviceRegistry>
      <DHCPServers>
        <DHCPServer networkName="HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter" IPAddress="192.168.56.100" networkMask="255.255.255.0" lowerIP="192.168.56.101" upperIP="192.168.56.254" enabled="1"/>
      </DHCPServers>
    </NetserviceRegistry>
    <SystemProperties defaultMachineFolder="D:\Virtual Box" defaultHardDiskFormat="VDI" VRDEAuthLibrary="VBoxAuth" webServiceAuthLibrary="VBoxAuth" LogHistoryCount="3" exclusiveHwVirt="false"/>
    <USBDeviceFilters/>
  </Global>
</VirtualBox>
    
por Modelmat 24.05.2017 / 07:04

2 respostas

2

Se você quiser evitar ter dois arquivos de configuração do VirtualBox, mas compartilhar o mesmo, existem dois conjuntos de conversões a considerar.

  1. Você tem caminhos do Windows com barra invertida \ entre pastas. Por exemplo, D:\OS\Fedora-Workstation-Live-x86_64-25-1.3.iso
  2. Você tem caminhos do Windows com barra / entre pastas. Por exemplo, D:/Virtual Box/Linux/Kali Linux/Kali Linux.vbox

Em ambos os casos, os caminhos começam com D:

Você pode corrigir o ponto de partida do caminho com um link simbólico colocado estrategicamente no diretório a partir do qual você executa o VirtualBox. Além disso, é possível corrigir as barras invertidas no arquivo de configuração com uma transformação repetível:

ln -s /media/large 'D:'
cp -p vbox.xml vbox.xml.old && tr '\' / <vbox.xml.old >vbox.xml

Se você quiser evitar consertar o arquivo de configuração do VirtualBox, ele fica um pouco mais difícil, mas não é impossível. O ideal é você voltar e verificar o lado do Windows para ver se você pode fornecer caminhos cortados para a frente. Caso contrário, uma aplicação cuidadosa adicional de links simbólicos pode ajudar. Aqui está um exemplo do tipo de coisa que você terá que aplicar:

ln -s 'D:'/OS/Fedora-Workstation-Live-x86_64-25-1.3.iso 'D:\OS\Fedora-Workstation-Live-x86_64-25-1.3.iso'

Observe que citei o nome do link de destino e deixei as barras invertidas na íntegra. Isso criará um nome que superficamente pode parecer um caminho de nome de arquivo do Windows, aparentemente incluindo pastas, mas na verdade é apenas um nome de arquivo UNIX contendo as barras invertidas necessárias.

    
por 26.05.2017 / 17:40
0

Claro, basta usar qualquer ferramenta de processamento de texto. Com sed , por exemplo:

sed 's|D:\|/media/large|g' file.win > file.nix
    
por 26.05.2017 / 17:28