web-dev-qa-db-fra.com

Comment marquer "autoriser l'exécution du fichier en tant que programme" sur un lecteur externe

Si j'essaie de définir cette option pour un fichier sur un lecteur externe, elle se désactive simplement. Faire chmod +x n'a aucun effet. Le lecteur est monté avec les options par défaut.

15
Borsook

Votre disque externe est probablement formaté NTFS ou FAT32. Ces systèmes de fichiers ne prennent pas en charge les autorisations de fichiers Linux.

Vous avez maintenant au moins cinq options:

  • Copiez-le simplement sur le bureau (ou votre dossier de base) et définissez les autorisations sur ce fichier.
  • Sauvegardez les données et reformatez le lecteur sur le système de fichiers ext4. Cela peut être fait en utilisant l’utilitaire de disque ou GParted
  • Exécutez le fichier avec un programme, ouvrez un terminal et exécutez:
    • pour les scripts Bash: bash /path/to/your/file.sh
    • pour Python scripts: python /path/to/your/file.py
    • pour les scripts Perl: Perl /path/to/your/file.pl
    • pour les exécutables Windows: wine /path/to/your/file.exe
    • pour les fichiers binaires 32 bits: /lib/ld-linux.so.2 /path/to/your/file
    • pour les fichiers binaires 64 bits: /lib/ld-linux-x86-64.so.2 /path/to/your/file
  • Copiez le fichier sur votre ordinateur (par exemple, un dossier personnel), définissez le bit d’exécution sur celui-ci et exécutez-le. (cela ne peut pas être fait pour tous les fichiers)
  • (éventuellement dangereux) Montez la partition avec le bit d'exécution défini pour tous les fichiers. Pour ce faire, suivez ces instructions:

    1. Montez la partition (en l'ouvrant dans un navigateur de fichiers par exemple)
    2. Ouvrir un terminal et lancer:

      Sudo mount -o remount,fmask=027 /media/YOURDRIVE
      

      Si vous ne pouvez pas écrire/accéder aux fichiers, exécutez la commande avec ,uid=$(id -u) après fmask=022:

      Sudo mount -o remount,fmask=027,id=$(id -u) /media/YOURDRIVE
      

    "Peut-être dangereux" parce que vous accordez des autorisations d'exécution à tous les fichiers, utilisez cette option uniquement si les autres méthodes ne fonctionnent pas.

32
Lekensteyn

Si le système de fichiers est au format FAT ou NTFS, vous pouvez toujours le monter avec les autorisations appropriées. Les autorisations par défaut lorsque vous montez à partir de la ligne de commande incluent des autorisations d'exécution pour tous les utilisateurs.

Pour obtenir des résultats plus spécifiques, consultez les pages de manuel de mount.ntfs-3g et mount, la dernière dans la section Options de montage pour fat, en particulier, consultez les options uid, gid, umask, fmask, dmask,

3
enzotib

Ubuntu 10.04 n'a rencontré aucun problème pour définir les autorisations nécessaires à l'exécution de programmes ou à la lecture/écriture sur des lecteurs externes.

Pour moi, c'est un trait durable qui en fait la meilleure version à avoir jamais fonctionné sur une clé USB.
Tout ce qui a été enlevé pour mettre un terme à cette situation - et c’est sa mauvaise connectivité sans fil par défaut - est ce qui fait que 10.10 et au-delà sont si frustrants.

La réparation de ce genre de choses devrait pas être le travail de l'utilisateur. Si l'exécution mobile est indispensable, utilisez 10.04.

0
247wkman