我试图在我的*nix开发机器上运行集成测试,但是测试无法执行,因为权限被拒绝了。
ActionView:Template:Error: Permission denied @ dir_s_mkdir - home/alan/app/tmp/cache/asssets/testRails版本为4.2.0,Ruby2.2.2p95。我正在使用内置的Rails服务器(Webrick)。进程在用户alan下运行,tmp/属于我(alan)。
rake tmp:cache:clear和重新启动服务器并没有做到这一点。
ls -alh输出如下:
drwxrwxr-x 14 alan alan 4,0K Kol 7 10:41 .
drwxr-xr-x 22 alan alan 4,0K Kol 7 09:10 ..
drwxrwxr-x 8 alan alan 4,0K Kol 4 14:37 app
drwxrwxr-x 2 alan alan 4,0K Kol 4 14:37 bin
drwxrwxr-x 2 alan alan 4,0K Kol 6 10:04 .bundle
drwxrwxr-x 5 alan alan 4,0K Kol 7 10:41 config
-rw-rw-r-- 1 alan alan 153 Kol 4 14:37 config.ru
-rw-rw-r-- 1 alan alan 16 Kol 4 14:45 contributors.txt
drwxrwxr-x 2 alan alan 4,0K Kol 7 11:59 db
-rw-rw-r-- 1 alan alan 652 Kol 7 10:41 Gemfile
-rw-rw-r-- 1 alan alan 5,3K Kol 7 10:41 Gemfile.lock
drwxrwxr-x 8 alan alan 4,0K Kol 7 10:42 .git
-rw-rw-r-- 1 alan alan 512 Kol 7 10:41 .gitignore
-rw-rw-r-- 1 alan alan 1,9K Kol 7 10:41 Guardfile
-rw-rw-r-- 1 alan alan 299 Kol 7 10:41 layout_file
drwxrwxr-x 4 alan alan 4,0K Kol 4 14:37 lib
drwxrwxr-x 2 alan alan 4,0K Kol 7 11:28 log
drwxrwxr-x 2 alan alan 4,0K Kol 4 14:37 public
-rw-rw-r-- 1 alan alan 249 Kol 4 14:37 Rakefile
-rw-rw-r-- 1 alan alan 219 Kol 4 14:37 README.md
drwxrwxr-x 8 alan alan 4,0K Kol 7 10:41 test
drwxrwxrwx 6 alan alan 4,0K Kol 6 10:04 tmp
drwxrwxr-x 3 alan alan 4,0K Kol 4 14:37 vendor发布于 2015-08-07 10:35:10
您可能以某种方式拒绝了目录中的+x。只需将其设置为所有文件夹层次结构(针对您自己的用户):
chmod +x /home
chmod +x /home/alan
chmod +x /home/alan/app
rm -rf /home/alan/app/tmp
mkdir /home/alan/app/tmp
chmod +x /home/alan/app/tmp发布于 2015-08-07 10:33:19
将tmp和log文件夹的权限设置为755或777总是一个好主意,因为这是您的开发环境。
chmod -R 755 tmp发布于 2021-06-18 09:51:20
我更新了Ubuntu18.04到20.04,然后我有了同样的问题,并通过运行
sudo sed -i "s/fs.protected_regular = .*/fs.protected_regular = 0/" /usr/lib/sysctl.d/protect-links.conf然后用这个更新
sudo sysctl --system那我的案子就解决了。
https://stackoverflow.com/questions/31875547
复制相似问题