【问题标题】:chmod command in Ubuntu works from command line but not from bash scriptUbuntu 中的 chmod 命令可从命令行运行,但不能从 bash 脚本运行
【发布时间】:2017-08-17 15:17:09
【问题描述】:

我有一个目录结构/var/www/html/storage/user/job_id。用户目录的权限是0777,所有者是'user@example.com',它是一个FTP用户,组是'www-data'。我需要在文件上传时运行 bash 脚本以在文件上传后执行一些任务。为此,我需要更改目录用户的所有权。 inotify 捕获 FTP 目录中的新文件创建事件。在新文件创建事件中,我调用一个命令来更改同一目录的所有权,例如

chown -R root:www-data /var/www/html/storage/user

但这里的问题是,如果我直接在终端中运行此命令,它会成功执行,而从 bash 文件调用时它不会更改所有权。我正在从 root 用户运行 sh 脚本。这个脚本的所有者是root,它被设置为可执行模式。

【问题讨论】:

  • 使用 bash -x 执行脚本来调试输出。
  • 我得到以下输出:+ chown root:www-data /var/www/html/storage/user

标签: linux bash ftp


【解决方案1】:

经常遇到同样的问题。最后添加/,它对我有用。

chown -R root:www-data /var/www/html/storage/user/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-15
    • 2020-01-02
    • 2015-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-20
    • 1970-01-01
    相关资源
    最近更新 更多