Pour utiliser le système de construction de requête que tu préfères, voir de le construire toi même.
Exécuter une requête par une fonction en lui passant en string la query çà reste une base. C'est peut être trop "bas niveau" pour certains mais complexifier à ce niveau oui c'est pour moi une erreur dans un langage tel que PHP ou de toute manière le langage seul ne permettra pas de gérer un projet sans une bonne base de code et d'outils. En tout cas pas sans exploser les délais. Le tout est de pouvoir choisir ses outils.
Dans ma société on utilise un système de mapping entre les objets et la base de données, il est rare que l'on ait à écrire une requête manuellement en développement et si c'est le cas une classe d'abstraction gère l'aspect sécurité.
Ajouter encore une couche d'abstraction complexe dans le langage n'aurait pas d’intérêt dans ce cas et serait certainement néfaste pour les performances.
Proposer un autre système, en complément du bas niveau, dans le langage ça serait sympa, c'est assez élégant ce qui se fait dans le doc que tu as posté, mais dans ce cas la problématique d'être au courant que ça existe est aussi présente.
En attendant des systèmes d'abstractions pour PHP qui fonctionnent y'en a à la pelle.
D'où le problème "philosophique" pour un mode de fonctionnement en typage faible.
Du coup au lieux de concaténer des strings et de les passer à une fonction qui va l'interpréter comme du SQL, si on a tout simplement pas de fonction qui lancent des requête qui ne font pas d'échappement systématique de toutes les strings raw avant de basculer dans le type "fragment de SQL", par exemple, on a déjà probablement moins de problème vu qu'il faut que le dev s'embête beaucoup plus pour aller se tirer une balle dans le pied …
Implémenter ça dans une couche d'abstraction / un framework en utilisant des objets c'est tout à fait possible.
Mais en l’implémentant au niveau des fonctions SQL de PHP on risque de s'embêter beaucoup plus pour faire des choses simples / voulues aussi, pas que pour la balle dans le pied :).
La syntaxe pour construire des tableaux dans la query string n'est pas propre à PHP, cela fonctionne aussi en Java et dans d'autres langages. En java le typage obligatoire fera qu'il n'y aura pas de surprises sur ce qui sera récupéré.
L'utilisation du typage fort en PHP étant maintenant possible, le même principe peut être appliqué.
Trans-typer en fonctionnant en typage faible pour obtenir le type attendu dans le cadre d'une utilisation normale - un tableau dans le cas d'une liste de sélection à choix multiple par exemple - irait à l'encontre de la logique de typage faible, en tout cas j'y vois tout de même une certaine logique et une fonctionnalité pratique dans la plupart des cas.
La sécurisation des entrées va de toute manière bien au delà de ce problème de typage qui n'est qu'une petite facette des problématiques à gérer, une string n'est pas moins dangereuse si elle est utilisée dans une requête sans être vérifiée.
Le typage fort te permet de te passer de la première vérification (la variable est forcément du bon type).
La prise en compte des tableaux étant une fonctionnalité de mongo qui permet de construire des requêtes elle n'a pas a être accessible depuis les données postés dans un formulaire donc c'est effectivement un problème de type dans le sens où le type array ne doit pas être passé à mongo depuis un formulaire. D'ailleurs à part pour les Select permettant le choix multiple on a normalement très rarement un tableau en entrée de formulaire, donc les interdire par défaut n'est pas une mauvaise idée.
Alors si c'est bien l'objet de la question, non il n'est pas possible de typer directement le contenu de $_GET / $_POST en PHP.
Du coup même typée statiquement la variable password de l'exemple précédent fait qu'il faudra gérer l'exception TypeError qui sera levée lors de l'affectation. Bon il n'y aura déjà plus de faille de sécurité, juste un script qui plante, c'est déjà mieux.
Par contre écrire une fonction d'abstraction pour accéder aux données de get/post est une bonne pratique et une pratique courante (si vous utilisez netbeans ide par exemple, vous aurez une astuce vous disant qu'accéder directement à ces variables c'est le MAL(tm), à raison).
Si cette fonction est présente l'utiliser pour effectuer un trans-typage automatique est assez trivial.
va transformer le type tableau non attendu en une chaîne de caractères "inoffensive" (je ne parle pas des failles d'injections / de safe escape dans ce cas) contenant "Array".
Heureusement les register_globals et magic quotes c'est plus possible, même avec PHP, depuis la sortie de la 5.4 en 2012.
Maintenant en effet c’était un gros piège pourri et ça aurait dû dégager bien avant vu que de toute manière les gens correctement informés ne l'utilisaient plus depuis (très) longtemps.
Une bonne règle à retenir est de ne surtout jamais faire confiance aux entrées fournies par le navigateur sans avoir vérifié qu'elle soient bien conformes à ce que l'on attend.
Amdgpu est un module noyau "natif" il est lié directement à l'installation du noyau linux assez récent (c'est apparu dans le 4.2 il me semble) et non à un package tiers.
xserver-xorg-video-amdgpu fournit ce qu'il faut à Xorg pour prendre en charge ce module, mais pas le module.
Le module fglrx est lui fourni par l'installation du driver proprio.
En fait je ne suis pas certain que la 250 soit concernée par amdgpu.
Sur Ubuntu 15.10, la dernière version des libs mesa / gallium et tout le toutim, une r9 385 (reconnue comme 380 par le driver fglrx, elle embarque le tout dernier gpu de la marque) le nouveau driver amdgpu "fonctionne", c'est a dire que Xorg démarre. Par contre je n'ai pas réussi a faire fonctionner l’accélération 3D, que le driver proprio soit installé ou non. Lorsque le CCC est installé la carte est marquée comme non reconnue avec le module amdgpu.
Bref pour amdgpu il faut encore attendre que le travail d'intégration se fasse au niveau des distributions (voir du driver proprio amd) et cela quelle que soit la carte c'est encore un peu frais.
Par contre en attendant elles sont supportées par fglrx sans soucis.
J'ai eu le même soucis récemment avec une 380 qui n'était pas reconnue dans le catalyst control center.
A vérifier de ton coté mais pour ma part c'était lié au chargement du nouveau driver amdgpu à la place de fglrx.
Si c'est le cas, pour utiliser le pilote proprio de la carte il va falloir blacklister le pilote amdgpu au démarrage (sudo echo "blacklist amdgpu" > /etc/modprobe.d/amdgpu.conf && sudo update-initramfs -u") pour ne pas qu'il se charge à la place du driver proprio catalyst fglrx puis redémarrage.
Je pensais à la base le contraire mais visiblement pour le moment avec le driver proprio il faut encore utiliser le module fglrx sur ces cartes pour avoir une accélération graphique qui fonctionne.
Aller chercher les dépendances c'est justement ce que le
sudo apt-get -f install
va faire.
Mais gdebi ou le software center ont le mérite d'êtres graphiques donc peut être aussi un peu plus user friendly / clair pour ceux qui ne sont pas habitués à la ligne de commande.
Pour sshfs je ne sais pas exactement d'où vient le problème.
Par contre pour ma part je configure des acls sur les dossiers pour éviter que des droits sautent sur les serveurs web.
Un bon coup de setfacl avec les bons droits pour l'écriture et un script en cron daily avec chmod 550 + chown sur l'utilisateur du serveur web pour avoir des droits posix inoffensifs devraient faire le boulot. N'oublies simplement pas de laisser des droits au serveur web dans les dossiers où il doit pouvoir uploader / déplacer des fichiers.
Ton problème d'authentification peut être contourné relativement facilement.
L'authentification par mot de passe / http n'est pas conservée par iOS c'est surtout là que se situe ton problème. Maintenant si au lieu d'utiliser cette authentification par mot de passe / HTTP tu utilises un petit formulaire - avec le langage de ton choix - tu peux enregistrer un cookie qui pourra servir d'authentification pour l'accès à la vidéo et le problème iOS sera réglé ;)
De nouveaux raspberry un peu plus puissants sont sortis il y a quelques temps.
On peut imaginer que certains montent en gamme pour gagner un peu de puissance de calcul et se retrouvent avec ce genre de machines - qui ne vaut pas grand chose à l'achat et encore moins à la revente - au fond d'un carton.
Pour l'alim n'importe quel chargeur de smartphone fait l'affaire.
Des écrans, claviers ou souris c'est assez facile à trouver : les conteneurs de la déchetterie du coin en sont remplis et cela ne veut pas dire qu'ils sont H.S.
En nous donnant la sortie de ton lspci ou utilisant ton moteur de recherche préféré.
Sinon, oui, modprobe peut charger le module noyau pour toi, mais malheureusement à moins qu'il soit blacklisté ton noyau l'aurait normalement déjà chargé au démarrage si il était disponible.
Oui les différentes distributions proposaient des images d'amorce par disquette à l'époque.
Mais vu que le lecteur est HS ça ne va pas beaucoup l'avancer ^^.
Vu le screenshot du BIOS fourni plus bas et le seul mode LS120 je partage tes craintes à ce niveau là, je pense que c'est mort.
Du coup trois solutions :
- Faire l'installation dans la machine qui a un lecteur cd qui marche (par usb ou cd)
- Mettre le lecteur cd qui marche dans l'ancienne machine si elle dispose du bon connecteur (c'est certainement de l'IDE pour l'ancienne machine et peut être déjà du SATA sur la nouvelle, à voir)
- Remplacer le lecteur cd défectueux par un lecteur d'occasion trouvable facilement pour une dizaine d'euros.
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 2. Dernière modification le 18 décembre 2015 à 19:44.
Cela permet surtout d'avoir le choix.
Pour utiliser le système de construction de requête que tu préfères, voir de le construire toi même.
Exécuter une requête par une fonction en lui passant en string la query çà reste une base. C'est peut être trop "bas niveau" pour certains mais complexifier à ce niveau oui c'est pour moi une erreur dans un langage tel que PHP ou de toute manière le langage seul ne permettra pas de gérer un projet sans une bonne base de code et d'outils. En tout cas pas sans exploser les délais. Le tout est de pouvoir choisir ses outils.
Dans ma société on utilise un système de mapping entre les objets et la base de données, il est rare que l'on ait à écrire une requête manuellement en développement et si c'est le cas une classe d'abstraction gère l'aspect sécurité.
Ajouter encore une couche d'abstraction complexe dans le langage n'aurait pas d’intérêt dans ce cas et serait certainement néfaste pour les performances.
Proposer un autre système, en complément du bas niveau, dans le langage ça serait sympa, c'est assez élégant ce qui se fait dans le doc que tu as posté, mais dans ce cas la problématique d'être au courant que ça existe est aussi présente.
En attendant des systèmes d'abstractions pour PHP qui fonctionnent y'en a à la pelle.
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 2. Dernière modification le 18 décembre 2015 à 11:05.
D'où le problème "philosophique" pour un mode de fonctionnement en typage faible.
Implémenter ça dans une couche d'abstraction / un framework en utilisant des objets c'est tout à fait possible.
Mais en l’implémentant au niveau des fonctions SQL de PHP on risque de s'embêter beaucoup plus pour faire des choses simples / voulues aussi, pas que pour la balle dans le pied :).
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 2.
La syntaxe pour construire des tableaux dans la query string n'est pas propre à PHP, cela fonctionne aussi en Java et dans d'autres langages. En java le typage obligatoire fera qu'il n'y aura pas de surprises sur ce qui sera récupéré.
L'utilisation du typage fort en PHP étant maintenant possible, le même principe peut être appliqué.
Trans-typer en fonctionnant en typage faible pour obtenir le type attendu dans le cadre d'une utilisation normale - un tableau dans le cas d'une liste de sélection à choix multiple par exemple - irait à l'encontre de la logique de typage faible, en tout cas j'y vois tout de même une certaine logique et une fonctionnalité pratique dans la plupart des cas.
La sécurisation des entrées va de toute manière bien au delà de ce problème de typage qui n'est qu'une petite facette des problématiques à gérer, une string n'est pas moins dangereuse si elle est utilisée dans une requête sans être vérifiée.
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 3. Dernière modification le 16 décembre 2015 à 15:35.
La prise en compte des tableaux étant une fonctionnalité de mongo qui permet de construire des requêtes elle n'a pas a être accessible depuis les données postés dans un formulaire donc c'est effectivement un problème de type dans le sens où le type array ne doit pas être passé à mongo depuis un formulaire. D'ailleurs à part pour les Select permettant le choix multiple on a normalement très rarement un tableau en entrée de formulaire, donc les interdire par défaut n'est pas une mauvaise idée.
Alors si c'est bien l'objet de la question, non il n'est pas possible de typer directement le contenu de $_GET / $_POST en PHP.
Du coup même typée statiquement la variable password de l'exemple précédent fait qu'il faudra gérer l'exception TypeError qui sera levée lors de l'affectation. Bon il n'y aura déjà plus de faille de sécurité, juste un script qui plante, c'est déjà mieux.
Par contre écrire une fonction d'abstraction pour accéder aux données de get/post est une bonne pratique et une pratique courante (si vous utilisez netbeans ide par exemple, vous aurez une astuce vous disant qu'accéder directement à ces variables c'est le MAL(tm), à raison).
Si cette fonction est présente l'utiliser pour effectuer un trans-typage automatique est assez trivial.
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 4. Dernière modification le 16 décembre 2015 à 10:27.
PHP permet tout de même de faire du trans-typage (http://php.net/manual/fr/language.types.type-juggling.php#language.types.typecasting), dans le cas de la faille en question :
va transformer le type tableau non attendu en une chaîne de caractères "inoffensive" (je ne parle pas des failles d'injections / de safe escape dans ce cas) contenant "Array".
[^] # Re: amdgpu / fglrx
Posté par Chris K. . En réponse au message mauvaise performance CG amd radeon R7 250e. Évalué à 2. Dernière modification le 15 décembre 2015 à 13:22.
Mieux vaut blacklister amdgpu et utiliser fglrx si il veut jouer en 3d (pour le moment).
Il faudrait déjà vérifier que le module est bien chargé actuellement et que c'est bien ça le soucis.
Matteli, que donne un " lspci -vvv | grep amdgpu " ?
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 3. Dernière modification le 15 décembre 2015 à 13:08.
Heureusement les register_globals et magic quotes c'est plus possible, même avec PHP, depuis la sortie de la 5.4 en 2012.
Maintenant en effet c’était un gros piège pourri et ça aurait dû dégager bien avant vu que de toute manière les gens correctement informés ne l'utilisaient plus depuis (très) longtemps.
[^] # Re: Typage strict
Posté par Chris K. . En réponse à la dépêche Sortie de PHP 7.0 - un nouveau départ. Évalué à 2.
Magnifique en effet .
Une bonne règle à retenir est de ne surtout jamais faire confiance aux entrées fournies par le navigateur sans avoir vérifié qu'elle soient bien conformes à ce que l'on attend.
[^] # Re: amdgpu / fglrx
Posté par Chris K. . En réponse au message mauvaise performance CG amd radeon R7 250e. Évalué à 2. Dernière modification le 15 décembre 2015 à 10:55.
Amdgpu est un module noyau "natif" il est lié directement à l'installation du noyau linux assez récent (c'est apparu dans le 4.2 il me semble) et non à un package tiers.
xserver-xorg-video-amdgpu fournit ce qu'il faut à Xorg pour prendre en charge ce module, mais pas le module.
Le module fglrx est lui fourni par l'installation du driver proprio.
[^] # Re: amdgpu / fglrx
Posté par Chris K. . En réponse au message mauvaise performance CG amd radeon R7 250e. Évalué à 2. Dernière modification le 13 décembre 2015 à 13:13.
En fait je ne suis pas certain que la 250 soit concernée par amdgpu.
Sur Ubuntu 15.10, la dernière version des libs mesa / gallium et tout le toutim, une r9 385 (reconnue comme 380 par le driver fglrx, elle embarque le tout dernier gpu de la marque) le nouveau driver amdgpu "fonctionne", c'est a dire que Xorg démarre. Par contre je n'ai pas réussi a faire fonctionner l’accélération 3D, que le driver proprio soit installé ou non. Lorsque le CCC est installé la carte est marquée comme non reconnue avec le module amdgpu.
Bref pour amdgpu il faut encore attendre que le travail d'intégration se fasse au niveau des distributions (voir du driver proprio amd) et cela quelle que soit la carte c'est encore un peu frais.
Par contre en attendant elles sont supportées par fglrx sans soucis.
# amdgpu / fglrx
Posté par Chris K. . En réponse au message mauvaise performance CG amd radeon R7 250e. Évalué à 3. Dernière modification le 13 décembre 2015 à 12:25.
J'ai eu le même soucis récemment avec une 380 qui n'était pas reconnue dans le catalyst control center.
A vérifier de ton coté mais pour ma part c'était lié au chargement du nouveau driver amdgpu à la place de fglrx.
Si c'est le cas, pour utiliser le pilote proprio de la carte il va falloir blacklister le pilote amdgpu au démarrage (sudo echo "blacklist amdgpu" > /etc/modprobe.d/amdgpu.conf && sudo update-initramfs -u") pour ne pas qu'il se charge à la place du driver proprio catalyst fglrx puis redémarrage.
Je pensais à la base le contraire mais visiblement pour le moment avec le driver proprio il faut encore utiliser le module fglrx sur ces cartes pour avoir une accélération graphique qui fonctionne.
# Snapshots
Posté par Chris K. . En réponse au message Sauvegarder son système dans une virtual box. Évalué à 4.
Tu peux utiliser les snapshots :
http://www.it-connect.fr/la-gestion-des-snapshots-avec-virtualbox/
[^] # Re: facile a comprendre pourtant
Posté par Chris K. . En réponse au message Gestionnaire de fichier qt/kde utilisant gvfs. Évalué à 3.
J'ai très bien compris l'origine des deux systèmes mais je ne compte pas pour autant changer de DE car le reste me va très bien.
Phonon sait bien utiliser gstreamer en backend par exemple et je ne vois pas où est le problème.
Si les développeurs de KDE tiennent à réinventer la roue et même si elle est carrée dans le cas de kio, ils font bien ce qu'ils veulent.
Nautilus sous kde marche très bien. Le seul bémol est au niveau de l'intégration "esthétique". Sur le coté fonctionnel il n'y a aucun soucis.
Après si y'a a pas… ben y'a pas c'est pas plus grave, je préfère toujours un outil moche/mal intégré qui fonctionne à un bel outil qui ne sert à rien.
# Driver
Posté par Chris K. . En réponse au message Problème installation carte wifi usb. Évalué à 3. Dernière modification le 26 octobre 2015 à 15:03.
Ton chip est pris en charge par le driver rt2800usb qui est dans debian, donc très certainement dans kali.
Par contre il a besoin du firmware propriétaire pour fonctionner.
Tu dois avoir un paquet firmware-ralink dans les dépôts non-free. Sinon tu peux toujours utiliser ceux de debian.
Chris.
[^] # Re: Suggestions
Posté par Chris K. . En réponse au message problème wifi. Évalué à 2. Dernière modification le 17 septembre 2015 à 23:45.
As tu installé le package linux-firmware-nonfree ?
Certains chipset wifi font juste semblant de fonctionner sans leur firmware propriétaire.
# Onlyoffice ou autre
Posté par Chris K. . En réponse au message CMS avec gestion document, tableau, rapport qui génère des doc (doc,odt, pdf, ...). Évalué à 3.
On en parlait ici :
https://linuxfr.org/news/collaborer-sur-vos-documents-a-l-aide-du-libre
Je pense que tu devrais le retrouver dans la liste ;)
[^] # Re: mint = ubuntu = debian
Posté par Chris K. . En réponse au message drivers pour imprimante canon ip7250. Évalué à 3. Dernière modification le 15 septembre 2015 à 14:18.
Si cela va fonctionner.
Aller chercher les dépendances c'est justement ce que le
va faire.
Mais gdebi ou le software center ont le mérite d'êtres graphiques donc peut être aussi un peu plus user friendly / clair pour ceux qui ne sont pas habitués à la ligne de commande.
# ACLs
Posté par Chris K. . En réponse au message Développement web, droits des fichiers, ssh, sshfs. Évalué à 3.
Pour sshfs je ne sais pas exactement d'où vient le problème.
Par contre pour ma part je configure des acls sur les dossiers pour éviter que des droits sautent sur les serveurs web.
Un bon coup de setfacl avec les bons droits pour l'écriture et un script en cron daily avec chmod 550 + chown sur l'utilisateur du serveur web pour avoir des droits posix inoffensifs devraient faire le boulot. N'oublies simplement pas de laisser des droits au serveur web dans les dossiers où il doit pouvoir uploader / déplacer des fichiers.
# Hey oui !
Posté par Chris K. . En réponse au journal Les brevets logiciels toujours interdits en France. Évalué à 5.
Je me rappelle de cette histoire j'avais fait un journal à ce propos à l'époque suspectant légèrement le coup fourré aux brevets logiciels.
http://linuxfr.org/users/chrisk/journaux/orange-attaque-free-pour-son-offre-de-replay
Mais je n'avais pas vu le jugement !
Merci pour l'info :)
# Auth HTTP
Posté par Chris K. . En réponse au journal Partager une vidéo privée : oui mais pas sur iOS. Évalué à 3.
Ton problème d'authentification peut être contourné relativement facilement.
L'authentification par mot de passe / http n'est pas conservée par iOS c'est surtout là que se situe ton problème. Maintenant si au lieu d'utiliser cette authentification par mot de passe / HTTP tu utilises un petit formulaire - avec le langage de ton choix - tu peux enregistrer un cookie qui pourra servir d'authentification pour l'accès à la vidéo et le problème iOS sera réglé ;)
Mes 2 cents. :)
[^] # Re: Fausse bonne idée ?
Posté par Chris K. . En réponse au journal Recyclez vos vieux RaspberryPI pour les enfants maliens. Évalué à 6.
De nouveaux raspberry un peu plus puissants sont sortis il y a quelques temps.
On peut imaginer que certains montent en gamme pour gagner un peu de puissance de calcul et se retrouvent avec ce genre de machines - qui ne vaut pas grand chose à l'achat et encore moins à la revente - au fond d'un carton.
Pour ce qui est de l’écran la prise HDMI n'est pas un problème : http://www.ebay.fr/itm/like/281596817983?ul_noapp=true&chn=ps&lpid=97
Pour l'alim n'importe quel chargeur de smartphone fait l'affaire.
Des écrans, claviers ou souris c'est assez facile à trouver : les conteneurs de la déchetterie du coin en sont remplis et cela ne veut pas dire qu'ils sont H.S.
Bref non c'est une belle initiative.
[^] # Re: Ajout de drivers à l'image
Posté par Chris K. . En réponse au message Carte ethernet non montée suite à un dd. Évalué à 2.
En nous donnant la sortie de ton lspci ou utilisant ton moteur de recherche préféré.
Sinon, oui, modprobe peut charger le module noyau pour toi, mais malheureusement à moins qu'il soit blacklisté ton noyau l'aurait normalement déjà chargé au démarrage si il était disponible.
[^] # Re: Commande
Posté par Chris K. . En réponse au message importer un fichier sql dans postgresql. Évalué à 2. Dernière modification le 26 août 2015 à 15:28.
Sous debian en local sur la machine c'est l'utilisateur postgres.
Donc
Si tu connecté sur le serveur postgresql directement, l'utilisateur est certainement le même sous ubuntu.
[^] # Re: Sans doute trop vieux
Posté par Chris K. . En réponse au message comment installer linux via USB. Évalué à 2.
Ah oui dans ce cas ça pourrait aussi fonctionner pour une clé USB.
Le plus dur sera surement de trouver une disquette encore en état de marche :D
[^] # Re: Sans doute trop vieux
Posté par Chris K. . En réponse au message comment installer linux via USB. Évalué à 2. Dernière modification le 16 août 2015 à 16:36.
Oui les différentes distributions proposaient des images d'amorce par disquette à l'époque.
Mais vu que le lecteur est HS ça ne va pas beaucoup l'avancer ^^.
Vu le screenshot du BIOS fourni plus bas et le seul mode LS120 je partage tes craintes à ce niveau là, je pense que c'est mort.
Du coup trois solutions :
- Faire l'installation dans la machine qui a un lecteur cd qui marche (par usb ou cd)
- Mettre le lecteur cd qui marche dans l'ancienne machine si elle dispose du bon connecteur (c'est certainement de l'IDE pour l'ancienne machine et peut être déjà du SATA sur la nouvelle, à voir)
- Remplacer le lecteur cd défectueux par un lecteur d'occasion trouvable facilement pour une dizaine d'euros.