如果我尝试为外部驱动器上的文件设置此选项,它只会自行取消标记。这样做chmod +x
没有效果。驱动器使用默认选项安装。
答案1
您的外部磁盘可能已格式化为 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
- 对于 Bash 脚本:
- 将文件复制到您的计算机(例如主文件夹),在其上设置执行位并运行它。(并非所有文件都可以执行此操作)
(可能很危险)挂载分区并设置所有文件的执行位。为此,请按照以下说明操作:
- 挂载分区(例如,在文件浏览器中打开它)
打开终端并运行:
sudo mount -o remount,fmask=027 /media/YOURDRIVE
,uid=$(id -u)
如果您无法写入/访问文件,请使用after运行命令fmask=022
:sudo mount -o remount,fmask=027,id=$(id -u) /media/YOURDRIVE
“可能有危险”因为您授予所有文件的执行权限,仅当其他方法不起作用时才使用此选项。
答案2
如果文件系统格式为 FAT 或 NTFS,您始终可以使用适当的权限挂载它。从命令行挂载时的默认权限包括所有用户的执行权限。
mount.ntfs-3g
要获得更具体的结果,请参见和的手册页mount
,后者位于脂肪装载选项,特别看看选项uid
,,,,,gid
umask
fmask
dmask
答案3
Ubuntu 10.04 在设置运行程序或在外部驱动器上读/写的权限时没有任何问题。
对我来说,这是一个持久的特质,使它成为有史以来在 USB 上运行的最佳版本。
无论为了阻止这种情况而取消了什么 - 以及它糟糕的默认无线连接 - 都使 10.10 及更高版本如此令人沮丧。
修复这样的问题应该不是是用户的工作。如果必须进行移动执行,请使用 10.04。