You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Knit Store-Metrics.Rmd生成网页仪表盘时遇权限错误求助

解决方案:解决Rmd Knit时的权限拒绝与缓存错误

1. 修复路径拼写错误

第135行代码中cache.extra的文件路径缺少开头的斜杠,这会导致Knitr无法定位到目标文件,进而触发缓存异常。修正后的代码块头部应为:

{r, echo=False, warning=False, message=False, cache=TRUE, cache.extra=file.info("/srv/shiny-server/Store/Store_Report/Storedata.RData")$mtime}

2. 解决目录权限问题

核心问题是当前运行RStudio的用户没有写入/srv/shiny-server/Store/Store_report/目录的权限,可通过以下两种方式处理:

  • 临时开放写入权限(测试用):
    在终端执行命令:
    sudo chmod -R u+w /srv/shiny-server/Store/Store_report/
    
  • 安全修改目录所有者(长期方案):
    将目录所有者改为当前RStudio登录用户:
    sudo chown -R $USER:$USER /srv/shiny-server/Store/Store_report/
    

3. 手动指定缓存目录到有权限路径

如果不想修改服务器目录权限,可在Rmd文件开头显式设置缓存目录到用户有权限的路径(比如默认的~/R目录):

knitr::opts_chunk$set(cache.path = "~/R/Store-Metrics_cache/")

4. 显式设置工作目录

在Rmd开头添加代码,强制指定工作目录,避免getwd()返回根目录/的问题:

setwd("/srv/shiny-server/Store/Store_report/")

5. 清理旧缓存后重新Knit

先手动删除存在权限问题的旧缓存目录:

sudo rm -rf /srv/shiny-server/Store/Store_report/Store-Metrics_cache/

之后重启RStudio,重新运行代码再尝试Knit生成报告。

内容的提问来源于stack exchange,提问作者De Guen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 05:32:07