Upgraded Moodle on Azure and now can't update plugins ([Error] Write access check [/bitnami/moodle/blocks] Installation

Keywords: Moodle - Microsoft Azure - Technical issue - Upgrade
bnsupport ID: d2deb0d5-b75a-3d3d-8404-9a1668659463
Description:
Upgraded Moodle from 3.10 to 3.10.1 following approach A here - https://docs.bitnami.com/general/apps/moodle/administration/upgrade/

This folder path here (/bitnami/moodle/blocks) seems to be the issue with blocks,local,mod all being an issue.

Linux is not my strong point and I’m guessing it’s a permission set somewhere that needs changing. Any help would be appreciated !

Error message:

Install plugin from ZIP file
Debugging output enabled
ZIP /bitnami/moodledata/temp/tool_installaddon/60066d8176008/plugin.zip
Validating block_configurable_reports ... Error
  [OK] Name of the plugin to be installed [configurable_reports]  
  [OK] Plugin version [2020110300] 
  [OK] Required Moodle version [2017111300] 
  [OK] Full component name [block_configurable_reports] 
  [OK] Declared maturity level [MATURITY_STABLE]  
  [OK] Plugin release [3.9.0] 
  [Debug] Found language file [block_configurable_reports] 
  [Error] Write access check [/bitnami/moodle/blocks] 
Installation aborted due to validation failure

Hi @tom.moon

Thanks for using Bitnami Moodle and running the bnsupport-tool!

Could you please execute the following commands and share their outputs? It is high-likely a permissions issue :slightly_smiling_face:, but let’s confirm that

$ ls -la /opt/bitnami/moodle/
$ ls -la /opt/bitnami/moodle/blocks/

Best regards,
Jose Antonio Carmona


Was my answer helpful? Click on :heart:

Hi Jose ! Here is the output for the two lines below :

total 1064
drwxrwxr-x 57 root root     4096 Jan 19 03:19 .
drwxr-xr-x  7 root root     4096 Jan 19 03:17 ..
drwxrwxr-x 13 1005   1005   4096 Jan 16 15:58 admin
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 analytics
drwxrwxr-x 17 1005   1005   4096 Jan 16 15:58 auth
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 availability
-rw-rw-r--  1 1005   1005   7380 Jan 16 15:58 babel-plugin-add-module-to-define.js
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 backup
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 badges
-rw-rw-r--  1 1005   1005    302 Jan 16 15:58 behat.yml.dist
drwxrwxr-x 47 1005   1005   4096 Jan 16 15:58 blocks
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 blog
-rw-rw-r--  1 1005   1005   1162 Jan 16 15:58 brokenfile.php
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 cache
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 calendar
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 cohort
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 comment
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 competency
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 completion
-rw-rw-r--  1 1005   1005    552 Jan 16 15:58 composer.json
-rw-rw-r--  1 1005   1005 161252 Jan 16 15:58 composer.lock
-rw-rw-r--  1 1005   1005  56572 Jan 16 15:58 config-dist.php
-rw-r-----  1 root daemon   1013 Jan 11 23:41 config.php
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 contentbank
-rw-rw-r--  1 1005   1005   2356 Jan 16 15:58 CONTRIBUTING.txt
-rw-rw-r--  1 1005   1005  35147 Jan 16 15:58 COPYING.txt
drwxrwxr-x 10 1005   1005   4096 Jan 16 15:58 course
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 customfield
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 dataformat
-rw-rw-r--  1 1005   1005   2595 Jan 16 15:58 draftfile.php
drwxrwxr-x 19 1005   1005   4096 Jan 16 15:58 enrol
drwxrwxr-x  2 1005   1005   4096 Jan 16 15:58 error
-rw-rw-r--  1 1005   1005   2404 Jan 16 15:58 .eslintignore
-rw-rw-r--  1 1005   1005   8067 Jan 16 15:58 .eslintrc
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 favourites
-rw-rw-r--  1 1005   1005   3871 Jan 16 15:58 file.php
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 files
drwxrwxr-x 18 1005   1005   4096 Jan 16 15:58 filter
-rw-rw-r--  1 1005   1005    597 Jan 16 15:58 .gherkin-lintrc
-rw-rw-r--  1 1005   1005     94 Jan 16 15:58 .gitattributes
-rw-rw-r--  1 1005   1005    953 Jan 16 18:10 githash.php
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 .github
drwxrwxr-x 11 1005   1005   4096 Jan 16 15:58 grade
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 group
-rw-rw-r--  1 1005   1005   6725 Jan 16 15:58 GruntfileComponents.js
-rw-rw-r--  1 1005   1005  33641 Jan 16 15:58 Gruntfile.js
drwxrwxr-x  9 1005   1005   4096 Jan 16 15:58 h5p
-rw-rw-r--  1 1005   1005   1423 Jan 16 15:58 help_ajax.php
-rw-rw-r--  1 1005   1005   1872 Jan 16 15:58 help.php
-rw-rw-r--  1 1005   1005   4717 Jan 16 15:58 index.php
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 install
-rw-rw-r--  1 1005   1005  26188 Jan 16 15:58 install.php
-rw-rw-r--  1 1005   1005    664 Jan 16 15:58 INSTALL.txt
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 iplookup
-rw-rw-r--  1 1005   1005     16 Jan 16 15:58 .jshintignore
-rw-rw-r--  1 1005   1005   1545 Jan 16 15:58 .jshintrc
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 lang
drwxrwxr-x 65 1005   1005   4096 Jan 16 15:58 lib
drwxrwxr-x  2 1005   1005   4096 Jan 16 15:58 local
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 login
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 media
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 message
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 mnet
drwxrwxr-x 26 1005   1005   4096 Jan 19 03:20 mod
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 my
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 notes
-rw-rw-r--  1 1005   1005 354972 Jan 16 15:58 npm-shrinkwrap.json
-rw-rw-r--  1 1005   1005      9 Jan 16 15:58 .nvmrc
-rw-rw-r--  1 1005   1005   1360 Jan 16 15:58 package.json
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 payment
-rw-rw-r--  1 1005   1005  10057 Jan 16 15:58 phpunit.xml.dist
drwxrwxr-x 14 1005   1005   4096 Jan 16 15:58 pix
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 plagiarism
-rw-rw-r--  1 1005   1005   1677 Jan 16 15:58 pluginfile.php
drwxrwxr-x 10 1005   1005   4096 Jan 16 15:58 portfolio
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 privacy
-rw-rw-r--  1 1005   1005    266 Jan 16 15:58 PULL_REQUEST_TEMPLATE.txt
drwxrwxr-x 11 1005   1005   4096 Jan 16 15:58 question
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 rating
-rw-rw-r--  1 1005   1005   1176 Jan 16 15:58 README.txt
drwxrwxr-x 21 1005   1005   4096 Jan 16 15:58 report
drwxrwxr-x 28 1005   1005   4096 Jan 16 15:58 repository
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 rss
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 search
-rw-rw-r--  1 1005   1005    274 Jan 16 15:58 security.txt
-rw-rw-r--  1 1005   1005     67 Jan 16 15:58 .shifter.json
-rw-rw-r--  1 1005   1005   2446 Jan 16 15:58 .stylelintignore
-rw-rw-r--  1 1005   1005   4727 Jan 16 15:58 .stylelintrc
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 tag
drwxrwxr-x  6 1005   1005   4096 Jan 19 03:22 theme
-rw-rw-r--  1 1005   1005   1600 Jan 16 15:58 tokenpluginfile.php
-rw-rw-r--  1 1005   1005   2191 Jan 16 15:58 TRADEMARK.txt
-rw-rw-r--  1 1005   1005   8492 Jan 16 15:58 .travis.yml
drwxrwxr-x  9 1005   1005   4096 Jan 16 15:58 user
drwxrwxr-x  2 1005   1005   4096 Jan 16 15:58 userpix
-rw-rw-r--  1 1005   1005   1636 Jan 16 15:58 version.php
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 webservice
    drwxrwxr-x 47 1005 1005  4096 Jan 16 15:58 .
    drwxrwxr-x 57 root root  4096 Jan 19 03:19 ..
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 activity_modules
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 activity_results
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 admin_bookmarks
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 badges
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 blog_menu
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 blog_recent
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 blog_tags
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 calendar_month
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 calendar_upcoming
    drwxrwxr-x  3 1005 1005  4096 Jan 16 15:58 classes
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 comments
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 completionstatus
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 course_list
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 course_summary
    -rw-rw-r--  1 1005 1005 14609 Jan 16 15:58 edit_form.php
    drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 feedback
    drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 globalsearch
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 glossary_random
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 html
    -rw-rw-r--  1 1005 1005     1 Jan 16 15:58 index.html
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 login
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 lp
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 mentees
    drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 mnet_hosts
    -rw-rw-r--  1 1005 1005 27761 Jan 16 15:58 moodleblock.class.php
    drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 myoverview
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 myprofile
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 navigation
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 news_items
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 online_users
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 private_files
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 quiz_results
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 recent_activity
    drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 recentlyaccessedcourses
    drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 recentlyaccesseditems
    drwxrwxr-x  8 1005 1005  4096 Jan 16 15:58 rss_client
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 search_forums
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 section_links
    drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 selfcompletion
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 settings
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 site_main_menu
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 social_activities
    drwxrwxr-x  8 1005 1005  4096 Jan 16 15:58 starredcourses
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 tag_flickr
    drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 tags
    drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 tag_youtube
    drwxrwxr-x  3 1005 1005  4096 Jan 16 15:58 tests
    drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 timeline
    -rw-rw-r--  1 1005 1005  4957 Jan 16 15:58 upgrade.txt

Hi @tom.moon

Could you please execute the following commands to set the correct permissions (as the guide mentions)?:

Configure file permissions as follows:

sudo chown daemon:daemon -R /opt/bitnami/moodle
sudo chmod -R g+rwX /opt/bitnami/moodle
sudo chown root /opt/bitnami/moodle/config.php
sudo chmod 640 /opt/bitnami/moodle/config.php

Best regards,
Jose Antonio Carmona


Was my answer helpful? Click on :heart:

Hi Jose

I did run those commands before and have done it again but am still getting the error below when I try to update a plugin:

Install plugin from ZIP file
Debugging output enabled
ZIP /bitnami/moodledata/temp/tool_installaddon/600803469d9bf/plugin.zip
Validating block_configurable_reports ... Error
  [OK] Name of the plugin to be installed [configurable_reports]  
  [OK] Plugin version [2020110300] 
  [OK] Required Moodle version [2017111300] 
  [OK] Full component name [block_configurable_reports] 
  [OK] Declared maturity level [MATURITY_STABLE]  
  [OK] Plugin release [3.9.0] 
  [Debug] Found language file [block_configurable_reports] 
  [Error] Write access check [/bitnami/moodle/blocks] 

Installation aborted due to validation failure

Okay, let’s verify if the commands are executed properly.

  1. Execute the commands configuring file permissions:
sudo chown daemon:daemon -R /opt/bitnami/moodle
sudo chmod -R g+rwX /opt/bitnami/moodle
sudo chown root /opt/bitnami/moodle/config.php
sudo chmod 640 /opt/bitnami/moodle/config.php
  1. Execute the following commands to assert file permissions were configured properly:
ls -la /opt/bitnami/moodle/
ls -la /opt/bitnami/moodle/blocks/

Could you please execute the flow and provide me with the output? Thanks

Best regards,
Jose Antonio Carmona


Was my answer helpful? Click on :heart:

Here is the output

bitnami/moodle

drwxrwxr-x 57 root root     4096 Jan 19 03:19 .
drwxr-xr-x  7 root root     4096 Jan 19 03:17 ..
drwxrwxr-x 13 1005   1005   4096 Jan 16 15:58 admin
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 analytics
drwxrwxr-x 17 1005   1005   4096 Jan 16 15:58 auth
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 availability
-rw-rw-r--  1 1005   1005   7380 Jan 16 15:58 babel-plugin-add-module-to-define.js
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 backup
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 badges
-rw-rw-r--  1 1005   1005    302 Jan 16 15:58 behat.yml.dist
drwxrwxr-x 47 1005   1005   4096 Jan 16 15:58 blocks
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 blog
-rw-rw-r--  1 1005   1005   1162 Jan 16 15:58 brokenfile.php
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 cache
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 calendar
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 cohort
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 comment
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 competency
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 completion
-rw-rw-r--  1 1005   1005    552 Jan 16 15:58 composer.json
-rw-rw-r--  1 1005   1005 161252 Jan 16 15:58 composer.lock
-rw-rw-r--  1 1005   1005  56572 Jan 16 15:58 config-dist.php
-rw-r-----  1 root daemon   1013 Jan 11 23:41 config.php
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 contentbank
-rw-rw-r--  1 1005   1005   2356 Jan 16 15:58 CONTRIBUTING.txt
-rw-rw-r--  1 1005   1005  35147 Jan 16 15:58 COPYING.txt
drwxrwxr-x 10 1005   1005   4096 Jan 16 15:58 course
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 customfield
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 dataformat
-rw-rw-r--  1 1005   1005   2595 Jan 16 15:58 draftfile.php
drwxrwxr-x 19 1005   1005   4096 Jan 16 15:58 enrol
drwxrwxr-x  2 1005   1005   4096 Jan 16 15:58 error
-rw-rw-r--  1 1005   1005   2404 Jan 16 15:58 .eslintignore
-rw-rw-r--  1 1005   1005   8067 Jan 16 15:58 .eslintrc
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 favourites
-rw-rw-r--  1 1005   1005   3871 Jan 16 15:58 file.php
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 files
drwxrwxr-x 18 1005   1005   4096 Jan 16 15:58 filter
-rw-rw-r--  1 1005   1005    597 Jan 16 15:58 .gherkin-lintrc
-rw-rw-r--  1 1005   1005     94 Jan 16 15:58 .gitattributes
-rw-rw-r--  1 1005   1005    953 Jan 16 18:10 githash.php
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 .github
drwxrwxr-x 11 1005   1005   4096 Jan 16 15:58 grade
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 group
-rw-rw-r--  1 1005   1005   6725 Jan 16 15:58 GruntfileComponents.js
-rw-rw-r--  1 1005   1005  33641 Jan 16 15:58 Gruntfile.js
drwxrwxr-x  9 1005   1005   4096 Jan 16 15:58 h5p
-rw-rw-r--  1 1005   1005   1423 Jan 16 15:58 help_ajax.php
-rw-rw-r--  1 1005   1005   1872 Jan 16 15:58 help.php
-rw-rw-r--  1 1005   1005   4717 Jan 16 15:58 index.php
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 install
-rw-rw-r--  1 1005   1005  26188 Jan 16 15:58 install.php
-rw-rw-r--  1 1005   1005    664 Jan 16 15:58 INSTALL.txt
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 iplookup
-rw-rw-r--  1 1005   1005     16 Jan 16 15:58 .jshintignore
-rw-rw-r--  1 1005   1005   1545 Jan 16 15:58 .jshintrc
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 lang
drwxrwxr-x 65 1005   1005   4096 Jan 16 15:58 lib
drwxrwxr-x  2 1005   1005   4096 Jan 16 15:58 local
drwxrwxr-x  3 1005   1005   4096 Jan 16 15:58 login
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 media
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 message
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 mnet
drwxrwxr-x 26 1005   1005   4096 Jan 19 03:20 mod
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 my
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 notes
-rw-rw-r--  1 1005   1005 354972 Jan 16 15:58 npm-shrinkwrap.json
-rw-rw-r--  1 1005   1005      9 Jan 16 15:58 .nvmrc
-rw-rw-r--  1 1005   1005   1360 Jan 16 15:58 package.json
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 payment
-rw-rw-r--  1 1005   1005  10057 Jan 16 15:58 phpunit.xml.dist
drwxrwxr-x 14 1005   1005   4096 Jan 16 15:58 pix
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 plagiarism
-rw-rw-r--  1 1005   1005   1677 Jan 16 15:58 pluginfile.php
drwxrwxr-x 10 1005   1005   4096 Jan 16 15:58 portfolio
drwxrwxr-x  6 1005   1005   4096 Jan 16 15:58 privacy
-rw-rw-r--  1 1005   1005    266 Jan 16 15:58 PULL_REQUEST_TEMPLATE.txt
drwxrwxr-x 11 1005   1005   4096 Jan 16 15:58 question
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 rating
-rw-rw-r--  1 1005   1005   1176 Jan 16 15:58 README.txt
drwxrwxr-x 21 1005   1005   4096 Jan 16 15:58 report
drwxrwxr-x 28 1005   1005   4096 Jan 16 15:58 repository
drwxrwxr-x  4 1005   1005   4096 Jan 16 15:58 rss
drwxrwxr-x  8 1005   1005   4096 Jan 16 15:58 search
-rw-rw-r--  1 1005   1005    274 Jan 16 15:58 security.txt
-rw-rw-r--  1 1005   1005     67 Jan 16 15:58 .shifter.json
-rw-rw-r--  1 1005   1005   2446 Jan 16 15:58 .stylelintignore
-rw-rw-r--  1 1005   1005   4727 Jan 16 15:58 .stylelintrc
drwxrwxr-x  5 1005   1005   4096 Jan 16 15:58 tag
drwxrwxr-x  6 1005   1005   4096 Jan 19 03:22 theme
-rw-rw-r--  1 1005   1005   1600 Jan 16 15:58 tokenpluginfile.php
-rw-rw-r--  1 1005   1005   2191 Jan 16 15:58 TRADEMARK.txt
-rw-rw-r--  1 1005   1005   8492 Jan 16 15:58 .travis.yml
drwxrwxr-x  9 1005   1005   4096 Jan 16 15:58 user
drwxrwxr-x  2 1005   1005   4096 Jan 16 15:58 userpix
-rw-rw-r--  1 1005   1005   1636 Jan 16 15:58 version.php
drwxrwxr-x  7 1005   1005   4096 Jan 16 15:58 webservice

bitnami/moodle/blocks

drwxrwxr-x 47 1005 1005  4096 Jan 16 15:58 .
drwxrwxr-x 57 root root  4096 Jan 19 03:19 ..
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 activity_modules
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 activity_results
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 admin_bookmarks
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 badges
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 blog_menu
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 blog_recent
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 blog_tags
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 calendar_month
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 calendar_upcoming
drwxrwxr-x  3 1005 1005  4096 Jan 16 15:58 classes
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 comments
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 completionstatus
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 course_list
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 course_summary
-rw-rw-r--  1 1005 1005 14609 Jan 16 15:58 edit_form.php
drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 feedback
drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 globalsearch
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 glossary_random
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 html
-rw-rw-r--  1 1005 1005     1 Jan 16 15:58 index.html
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 login
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 lp
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 mentees
drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 mnet_hosts
-rw-rw-r--  1 1005 1005 27761 Jan 16 15:58 moodleblock.class.php
drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 myoverview
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 myprofile
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 navigation
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 news_items
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 online_users
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 private_files
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 quiz_results
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 recent_activity
drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 recentlyaccessedcourses
drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 recentlyaccesseditems
drwxrwxr-x  8 1005 1005  4096 Jan 16 15:58 rss_client
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 search_forums
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 section_links
drwxrwxr-x  5 1005 1005  4096 Jan 16 15:58 selfcompletion
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 settings
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 site_main_menu
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 social_activities
drwxrwxr-x  8 1005 1005  4096 Jan 16 15:58 starredcourses
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 tag_flickr
drwxrwxr-x  7 1005 1005  4096 Jan 16 15:58 tags
drwxrwxr-x  6 1005 1005  4096 Jan 16 15:58 tag_youtube
drwxrwxr-x  3 1005 1005  4096 Jan 16 15:58 tests
drwxrwxr-x  9 1005 1005  4096 Jan 16 15:58 timeline
-rw-rw-r--  1 1005 1005  4957 Jan 16 15:58 upgrade.txt

Hi @tom.moon

Okay, so it seems the ownerships and permissions are not taking effect because the /opt/bitnami/moodle is a symbolic link to /bitnami/moodle. Could you please try the following commands instead?

  1. Execute the commands configuring file permissions (notice the -LR option in chown):
sudo chown daemon:daemon -LR /opt/bitnami/moodle
sudo chmod -R g+rwX /opt/bitnami/moodle
sudo chown root /opt/bitnami/moodle/config.php
sudo chmod 640 /opt/bitnami/moodle/config.php
  1. Execute the following commands to assert file permissions were configured properly:
ls -la /opt/bitnami/moodle/
ls -la /opt/bitnami/moodle/blocks/

They should look something like this now:

$ ls -la /opt/bitnami/moodle/ | head
total 1064
drwxrwxr-x 57 daemon daemon   4096 Jan 21 10:42 .
drwxr-xr-x  7 root   root     4096 Jan 21 10:37 ..
drwxrwxr-x 13 daemon daemon   4096 Jan 16 15:58 admin
drwxrwxr-x  5 daemon daemon   4096 Jan 16 15:58 analytics
drwxrwxr-x 17 daemon daemon   4096 Jan 16 15:58 auth
drwxrwxr-x  6 daemon daemon   4096 Jan 16 15:58 availability
-rw-rw-r--  1 daemon daemon   7380 Jan 16 15:58 babel-plugin-add-module-to-define.js
drwxrwxr-x  8 daemon daemon   4096 Jan 16 15:58 backup
drwxrwxr-x  8 daemon daemon   4096 Jan 16 15:58 badges

...

$ ls -la /opt/bitnami/moodle/blocks/ | head
total 244
drwxrwxr-x 47 daemon daemon  4096 Jan 16 15:58 .
drwxrwxr-x 57 daemon daemon  4096 Jan 21 10:42 ..
drwxrwxr-x  6 daemon daemon  4096 Jan 16 15:58 activity_modules
drwxrwxr-x  7 daemon daemon  4096 Jan 16 15:58 activity_results
drwxrwxr-x  6 daemon daemon  4096 Jan 16 15:58 admin_bookmarks
drwxrwxr-x  6 daemon daemon  4096 Jan 16 15:58 badges
drwxrwxr-x  6 daemon daemon  4096 Jan 16 15:58 blog_menu
drwxrwxr-x  6 daemon daemon  4096 Jan 16 15:58 blog_recent
drwxrwxr-x  6 daemon daemon  4096 Jan 16 15:58 blog_tags

Notice the 3rd & 4th column (daemon daemon)

Could you please give it a try? I will notify the documentation team about this :slightly_smiling_face:

Best regards,
Jose Antonio Carmona


Was my answer helpful? Click on :heart:

1 Like

Hi Jose

Thank you for the following code - that worked perfectly ! Cheers for being patient and helping me through the troubleshooting steps - it’s very appreciated !

Cheers
Tom

Debugging output enabled
Downloading local_mailtest ... 
 <- https://moodle.org/plugins/download.php/22516/local_mailtest_moodle310_2020092000.zip
 -> /bitnami/moodledata/temp/core_plugin/code_manager/distfiles/a71b20c5a5d805577c1521a63d54a06f.zip ... OK
Validating local_mailtest ... OK
  [OK] Name of the plugin to be installed [mailtest]  
  [OK] Plugin version [2020092000] 
  [OK] Required Moodle version [2013040500] 
  [OK] Full component name [local_mailtest] 
  [OK] Declared maturity level [MATURITY_STABLE]  
  [OK] Plugin release [1.4.0 (2020092000)] 
  [Debug] Found language file [local_mailtest] 
  [OK] Write access check [/bitnami/moodle/local] 

Validation successful, installation can continue

My pleasure @tom.moon

Glad to see you were able to solve your issue! We are marking the previous answer as “Solution” and this topic as “Closed”.

If you have any other questions, please do not hesitate to let us know. Feel free to create a new topic referencing to this one if necessary.

Best regards,
Jose Antonio Carmona


Was my answer helpful? Click on :heart:

We have also updated the guide at https://docs.bitnami.com/general/apps/moodle/administration/upgrade/ with these changes