Bienvenue dans les fichiers de support Userland NBD!
Ce package contient NBD-Server et NBD-Client.
Pour installer le package, téléchargez la source et effectuez la configure / make / faire / make install de la danse normale. Vous devrez l'installer sur le client et le serveur.
Pour compiler à partir de Git, effectuez un paiement, installez les outils SGML (docbook2man), puis exécutez './autogen.sh' lors de votre caisse. Ensuite, voir ci-dessus.
Si vous souhaitez envoyer un patch, veuillez ne pas ouvrir de demande de traction; Au lieu de cela, envoyez-le à la liste de diffusion
Si vous pensez avoir trouvé un problème de sécurité dans NBD, veuillez contacter la liste de diffusion. Ne liez pas seulement un problème pour cela (bien que vous puissiez le faire aussi si vous préférez).
Pour les problèmes embargo, veuillez contacter wouter verhelst [email protected]
NBD est assez facile à utiliser. Tout d'abord, sur le client, vous devez charger le module et, si vous n'utilisez pas UDEV, pour créer les nœuds de périphérique:
# modprobe nbd
# cd /dev
# ./MAKEDEV nbd0
(Si vous avez besoin de plus d'un périphérique NBD, répétez la commande ci-dessus pour NBD1, NBD2, ...)
Ensuite, écrivez un fichier de configuration pour le serveur. Un exemple ressemble à ceci:
# This is a comment
[generic]
# The [generic] section is required, even if nothing is specified
# there.
# When either of these options are specified, nbd-server drops
# privileges to the given user and group after opening ports, but
# _before_ opening files.
user = nbd
group = nbd
[export1]
exportname = /export/nbd/export1-file
authfile = /export/nbd/export1-authfile
timeout = 30
filesize = 10000000
readonly = false
multifile = false
copyonwrite = false
prerun = dd if=/dev/zero of=%s bs=1k count=500
postrun = rm -f %s
[otherexport]
exportname = /export/nbd/experiment
# The other options are all optional
Le fichier de configuration est analysé avec GkeyFile de GLIB, qui analyse les fichiers clés tels qu'ils sont spécifiés dans la spécification d'entrée de bureau Freedesktop.org, comme on peut le trouver sur http://freedesktop.org/standards/desktop-entry-spec. Bien que ce format ne soit pas destiné à être utilisé pour les fichiers de configuration, l'API GLIB est suffisamment flexible pour qu'il soit utilisé en tant que tel.
Démarrez maintenant le serveur:
nbd-server -C /path/to/configfile
Notez que le nom de fichier doit être un chemin absolu; c'est-à-dire quelque chose comme /path/to/file , pas ../file . Consultez le NBD-Server ManPage pour plus de détails sur toutes les options disponibles.
Enfin, vous pourrez démarrer le client:
nbd-client <hostname> -N <export name> <nbd device>
par exemple,
nbd-client 10.0.0.1 -N otherexport /dev/nbd0
utilisera la deuxième exportation dans l'exemple ci-dessus (celui qui exporte /export/nbd/experiment )
nbd-client doit être exécuté comme racine; Il en va de même pour NBD-Server (mais assurez-vous que / var / run est écrite par le serveur que nbd-server s'exécute comme; sinon, vous n'obtiendrez pas de fichier PID, bien que le serveur continue d'exécuter).
Il existe des packages (ou similaires) disponibles pour la plupart des systèmes d'exploitation actuels; Voir le badge "Statut d'emballage" ci-dessous pour plus de détails.
Pour les questions, veuillez utiliser la liste de diffusion [email protected].
Outre ce projet, le protocole NBD a été mis en œuvre par diverses autres personnes. Une liste (probablement incomplète) suit:
qemu-nbd ). Ils maintiennent un document de statut de leur implémentation NBD.De plus, ces implémentations existaient autrefois mais ne sont plus maintenues: