nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC 25 Janvier, 2021, 19:08:51 Bonjour,Comme beaucoup aujourd'hui, j'ai un PC sans lecteur de DVD. Et un vieux PC qui a un lecteur et une connexion réseau.Pour lire le DVD sur le PC, j'ai cherché des solutions. L'une d'elles est de monter le DVD sur le vieux PC, partager le point de montage en NFS (ou en SMB), et lire depuis le PC récent avec VLC.Malheureusement, ça ne marche que sur de rares DVDs, à cause apparamment du cryptage.J'ai cherché, et trouvé l'utilitaire nbd :https://forum.ubuntu-fr.org/viewtopic.php?id=427354Ce tuto date de 2010.La solution est séduisante. Mais ça ne marche pas sur ma config.Sur le vieux PC, j'ai une Leap 15.1, et sur le récent une 15.2.Sur le vieux PC, le lecteur de DVD est en /dev/sr0Le paquetage s'appelle tout simplement "nbd". Il contient le client et le serveur.Il est en version 3.16.2 de 2018.Quand j'essaie la commande "nbd-server 2000 /dev/sr0", j'obtiens :(process:3094): GLib-CRITICAL **: g_array_append_vals: assertion 'array' failed** (process:3094): WARNING **: Could not parse config file: Invalid directory specified: Not a directory** (process:3094): WARNING **: Specifying an export on the command line no longer uses the oldstyle protocol.J'ai cherché, mais n'ai pas trouvé d'explications claires sur ce "oldstyle protocol"Quelqu'un a-t-il réussi à faire marcher nbd ?Ce serait intéressant, car il est sensé pouvoir partager, non seulement des lecteurs de DVD, mais aussi des disques.Merci pour votre aide.Cordialement.Wallace Citer la sélection
Re : nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC Répondre #1 – 25 Janvier, 2021, 19:38:41 hellotout d'abord je ne connais pas nbd et je n'ai jamais essayé ni smb ni nfs. est ce que tu as essayé avec le script évoqué dans le tuto?par exempleCode: [Sélectionner]sudo chmod a+x nom_du_script_sudo sh nom_du_scriptpeux tu renvoyer les messages d'erreurs obtenus?il est aussi possible que ça ne fonctionne pas toujours car tu n'as pas les paquets de décryptage tels que libdvdcss2 (les as tu installés ainsi que les codecs du dépôt packman?)a+ Citer la sélection
Re : nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC Répondre #2 – 26 Janvier, 2021, 21:26:26 Bonsoir,Merci pour la réponse.Pour le coté décryptage, j'utilise VLC. Afin de savoir s'il est vraiment équipé pour les DVDs, je me suis fait prêter un lecteur de DVD portable avec câble USB et je l'ai branché sur le PC récent :Résultat : il sait lire tous les DVDs. Donc pas de souci de ce côté-là.Pour le script, la commande "nbd-server 2000 /dev/sr0" était tapée sur le PC ancien.Pour respecter le tuto, j'ai tapé, depuis le PC récent :ssh 192.168.x.x "nbd-server 2000 /dev/sr0"J'obtiens :(process:2769): GLib-CRITICAL **: g_array_append_vals: assertion 'array' failed** (process:2769): WARNING **: Could not parse config file: Invalid directory specified: Not a directory** (process:2769): WARNING **: Specifying an export on the command line no longer uses the oldstyle protocol.A part le numéro de processus, c'est le même message d'erreur.Ce qui est bizarre, c'est que la syntaxe respecte la manpage de nbd-server. Et pourtant, l'erreur parle de "oldstyle protocol".Le paquetage n'est pas vieux, il date de 2018. On peut supposer que ça marchait il y a 3 ans.Quelqu'un aurait une explication de ces messages d'erreur ?Avez-vous réussi à faire fonctionner nbd-server et nbd-client ?Merci d'avance.Wallace Citer la sélection
Re : nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC Répondre #3 – 26 Janvier, 2021, 21:41:17 Bonjour,Tu peux faire une iso du dvd pour la lire directement via vlc.Personnellement c'est ce que je faisais pour les dvd quand je partais en vacance et que je ne voulais pas embarquer les dvd physiques. J'avais un script pour faire ça et qui marchait sur les dvd testés, je ne sais pas si ça marche encore sur les tout tout récent mais ça passait encore l'année dernière sur les dvd que je voulais voir ( achetés légalement ) Citer la sélection
Re : nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC Répondre #4 – 26 Janvier, 2021, 22:23:23 Hello,Citation de: man 5 nbd-serveroldstyle Optional; boolean In versions of nbd-server between 2.9.17 and 3.9.1, when this option was set to true, nbd-server would export all exports on a separate port with the old (pre-2.9.17) handshake protocol. In that case, the 'port' option for individual exports was mandatory. Since version 3.10 of nbd-server, however, this option is no longer supported, and any attempt to use it will result in nbd-server exiting with an appropriate error message. https://www.systutorials.com/docs/linux/man/5-nbd-server/https://bbs.archlinux.org/viewtopic.php?id=121956à plus,oh!rocks Citer la sélection
Re : nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC Répondre #5 – 28 Janvier, 2021, 19:46:45 OK. Merci.Je vais donc essayer de configurer le fichier /etc/nbd-server/configA+Wallace Citer la sélection
Re : nbd : ou comment lire un DVD quand on n'a pas de lecteur dans son PC Répondre #6 – 04 Mars, 2021, 21:29:47 Bonjour,Voici un exmplaire de /etc/nbd-server/config qui permet le partage:[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 allowlist = true # Since version 2.9.17, nbd-server will do exports on a name # basis (the used name is the name of the section in which the # export is specified). This however required an incompatible # protocol change. To enable backwards-compatible port-based # exports, uncomment the following line: # oldstyle = true[export1] exportname = /dev/sr0 # The following line will be ignored unless the # "oldstyle = true" line in the generic section above is # enabled. # port = 12345 # 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, except this one in case # the oldstyle option is used in [generic]: # port = 12346[export2] exportname = /dev/fd0[export3] exportname = /dev/sr1Petites explications :/dev/sr0 est lecteur de CD-ROM interne/dev/fd0 le lecteur de disquette (je vous parle d'un périphérique que les moins de 20 ans ne peuvent pas connaître !)/dev/sr1 : lecteur de DVD en USB Vous pouvez constater qu'il y a un "#" devant les lignes # user = nbd # group = nbd Toutes commendes qui suivent sont tapées en su.Une fois le fichier /etc/nbd-server/config écrit, nous lançons le serveur avec:nbd-server -C /etc/nbd-server/configPour vérifier que les export sont lancés, c'est simple : taper :nbd-client -l localhostCela donne :Negotiation: ..export1otherexportexport2export3A priori, les 3 lecteurs seront accessibles.Depuis le PC client, si nous tapons nbd-client -l ip.du.ser.veurCela donne :Negotiation: ..export1otherexportexport2export3Jusqu'ici, tout va bien.Ensuite :Insérer un DVD non marqué "systeme anti-copie" dans le lecteur sr0 du serveur.Sur le client, taper :nbd-client ip.du.ser.veur /dev/nbd1 -name export1Cela donne :Negotiation: ..size = 3189MBbs=1024, sz=3344822272 bytesAu final, sur le PC client, ouvrir VLC, au Menu Média, et choisir "Ouvrir un disque"A la ligne "Disc device, taper : /dev/nbd1Miracle : la lecture du DVD se lance !Mais si j'essaie avec un DVD "système anti-copie", VLC arrive juste à lancer le menu principal, et n'affiche plus rien après un premier choix.Alors que le DVD est lisible localement sur le client et le serveur.Des fois que ce soit dû au réseau, vu que deux switchs s'intercalent entre client et serveur, j'ai testé en faisant tout sur un seul PC: il est à la fois serveur et client, via localhost. Résultat : pareil !Il doit y avoir encore un bogue dans nbd qui fait qu'il n'établit pas de connexion totalement transparente entre le client et le serveur.Nota : Sur le PC client, pour déconnecter /dev/nbd1, il faut taper :nbd-client -d /dev/nbd1Disques de données:Si vous mettez un CD ou un DVD de données dans le lecteur du serveur, ce disque devient accessible sur le PC client en "montant" /dev/nbd1 comme un CD.Taper (si vous voulez y accéder dans le dossier /cdrom):mount -t iso9660 /dev/nbd1 /cdromEt ça, ça marche !Conclusion:Il y a un intérêt à nbd : il est quand même capable d'accéder à des DVDs non protégés, et surtout à des CDs ou DVDs de données ! Cela peut toujours dépanner !Je n'ai pas testé d'autres périphériques.Si vous avez des idées pour la lecture de DVDs protégés, je suis preneur. Peut-être un paramètre à ajuster dans /etc/nbd-server/config ?A+Wallace. Citer la sélection Dernière édition : 05 Mars, 2021, 09:43:16 par wallace