如何在外部驱动器上标记“允许将文件作为程序执行”

Bor*_*ook 15 permissions external-hdd

如果我尝试为外部驱动器上的文件设置此选项,它只会取消标记自身。做chmod +x没有效果。驱动器使用默认选项安装。

Lek*_*eyn 33

您的外部磁盘可能已格式化为 NTFS 或 FAT32。这些文件系统不支持 Linux 文件权限。

您现在至少有五个选项:

  • 只需将其复制到桌面(或您的主文件夹)并设置该文件的权限。
  • 备份上面的数据并将驱动器重新格式化为ext4文件系统。这可以使用磁盘工具或 GParted 来完成
  • 用程序执行文件,打开终端并运行:
    • 对于 Bash 脚本: bash /path/to/your/file.sh
    • 对于 Python 脚本: python /path/to/your/file.py
    • 对于 Perl 脚本: perl /path/to/your/file.pl
    • 对于 Windows 可执行文件: wine /path/to/your/file.exe
    • 对于 32 位二进制文​​件: /lib/ld-linux.so.2 /path/to/your/file
    • 对于 64 位二进制文​​件: /lib/ld-linux-x86-64.so.2 /path/to/your/file
  • 将文件复制到您的计算机(例如主文件夹),在其上设置执行位并运行它。(不能对所有文件都这样做)
  • (可能有危险)挂载为所有文件设置了执行位的分区。为此,请按照以下说明操作:

    1. 挂载分区(例如在文件浏览器中打开它)
    2. 打开终端并运行:

      sudo mount -o remount,fmask=027 /media/YOURDRIVE
      
      Run Code Online (Sandbox Code Playgroud)

      如果您无法写入/访问文件,请使用,uid=$(id -u)after运行命令fmask=022

      sudo mount -o remount,fmask=027,id=$(id -u) /media/YOURDRIVE
      
      Run Code Online (Sandbox Code Playgroud)

    “可能很危险”,因为您授予所有文件的执行权限,只有在其他方法不起作用时才使用此选项。

  • +1 对我来说是新的`/lib/ld-linux.so.2 文件 (7认同)
  • `wine /path/to/your/file` 也适用于 Windows 应用程序。 (2认同)