Der*_*ern 15 usb-drive usb executable
我正在尝试在我的 USB 驱动器上安装一个便携式应用程序,以便它与 Ubuntu 和 Windows(特别是一个名为 eToys 的程序)兼容。应用程序中已经内置了对两种操作系统的支持 - 有etoys.sh适用于 Ubuntu 和etoys.exeWindows。我决定安装到 FAT 驱动器上,因为它可以从两个系统中读取。这适用于 Windows,但由于某种原因,我无法在 Ubuntu 上执行 etoys.sh。
问题不在于文件 - 当整个文件夹复制到本地硬盘时,该应用程序在 Ubuntu 中运行良好。但是当我尝试从 USB 执行它时,它会在文本编辑器中打开文件。
然后我尝试从终端运行它,但我收到消息权限被拒绝。
我对其他可执行文件也有同样的问题。
有没有一种简单的方法可以从 USB 记忆棒中执行操作?
小智 22
由于 FA32 文件系统的限制,您不能这样做。
现在,你可以作弊:
sh etoys.sh,而不是./etoys.sh如果需要,您甚至可以创建另一个脚本(例如,位于您的硬盘驱动器上),只需调用 USB 驱动器上的脚本:
#!/bin/bash
sh /media/USB/etoys.sh
Run Code Online (Sandbox Code Playgroud)小智 8
安装设备-o mode=<value>应该可以
mode=value
Run Code Online (Sandbox Code Playgroud)
将所有文件的模式设置为 value &0777忽略原始权限。为具有读取权限的目录添加搜索权限。该值以八进制给出。
我实际上在http://ubuntuforums.org/showthread.php?t=1665289上找到了一个很好的解决方案来解决这个问题。
基本上,它说要运行命令
sudo sed -i -e 's|showexec|\x00\x00\x00\x00\x00\x00\x00\x00|g' /usr/lib/udisks/udisks-daemon
Run Code Online (Sandbox Code Playgroud)
这将阻止使用 showexec 选项自动挂载磁盘。
我不喜欢回答我自己的问题,但这对我有用,我希望它也能帮助其他人。
对于 Ubuntu 18.04:
sudo sed -i -e 's|showexec|\x00\x00\x00\x00\x00\x00\x00\x00|g' /usr/lib/udisks2/udisksd
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40098 次 |
| 最近记录: |