【问题标题】:Vagrant make a file writable or executableVagrant 使文件可写或可执行
【发布时间】:2017-05-27 20:26:34
【问题描述】:

我发现正在运行

chmod u+x myfile

当我 ssh 进入我的本地 vagrant 机器时不起作用。对于可写的 +/- 也是如此,实际上 chmod 没有效果。如何在我的 vagrant 实例中修改权限?

  • 在 Windows 10 机器上运行
  • VirtualBox 5.1.10 版
  • 流浪者 1.8.7

这也是 Vagrantfile 中的一行:

    config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]

666 = rw-rw-rw- .. 我怀疑权限是不可更改的,因为无论我做什么,它都保持不变。

(澄清一下,我的目的是练习一个 PHP shell 脚本,但如果它不可执行,我就无法运行该脚本)

【问题讨论】:

  • 是共享文件夹中的文件吗?共享文件夹有任何特定属性吗?
  • 我编辑了 OP,感谢您指出这一点;它有fmode=666,当然是rw-rw-rw- - 它似乎无法修改。

标签: permissions vagrant virtualbox file-permissions


【解决方案1】:

您告诉 vagrant 以完整模式共享文件夹以用于目录 (dmode),但将文件权限设置为 666,这样您之后就无法创建可执行模式。

如果您没有特别的理由为共享文件夹设置目录/文件模式,只需删除安装选项并保留为

config.vm.synced_folder ".", "/var/www"

【讨论】:

  • 这在下一个vagrant up 会话中工作,谢谢!我担心这可能会对我的数据产生不利影响,但事实并非如此。此外,我之前尝试设置的权限“神奇地出现了”——希望这能给其他人带来洞察力。
【解决方案2】:

以下权限应该足以写入和执行。

chmod 755 filename

【讨论】:

    猜你喜欢
    • 2015-04-06
    • 1970-01-01
    • 2012-11-26
    • 2021-02-15
    • 1970-01-01
    • 2023-03-26
    • 2015-03-15
    • 1970-01-01
    相关资源
    最近更新 更多