File system repository
Note: You are currently viewing documentation for Moodle 2.2. Up-to-date documentation for the latest stable version is available here: File system repository.
The file system repository allows access to files which have been uploaded (e.g. via FTP) into designated folders on the server. A file system repository may be available site wide for everyone; within an individual course or for an individual user.(However - see this tracker entry regarding course and individual repositories)
Once a repository has been created and files uploaded to it, the files can be made available within the file picker for use within a course. There are several steps to take to implement this feature:-
These must be done by a systems admin who has write permissions to the server directories and admin permissions within Moodle.
1. Creating folders for your file system repositories
- Find the moodledata folder on the server
- Inside it, create a folder called "repository"
- Inside that folder, create as many folders as you need, named appropriately.
- Copy into the appropriate folder the files you want (using FTP, SFTP, shared folder etc.). (The folders can hold all types of files)
2. Enabling the File System repository plugin
- Go to Settings > Site administration > Plugins > Repositories > Manage Repositories;
- Select from the drop down next to File sytem "Enabled and visible"
- Click settings. There are two check boxes which may be set, These control the appearance of the 'Create Instance' menu item within the settings for all courses and if the second box is checked the create instance menu item appears within a users profile. See notes 4 and 5 below.
3. Setting up a site-wide file system repository
- Once the repository is enabled as above, click on the "Settings" link to the right.
- Scroll down to Repositories instances of the site
- Click Create a repository instance
- Give it a name and (if there are several folders on the server) choose from the dropdown the one you want. Click save
- It will now be available in the file picker in all courses.
NOTE: Just repeat the process to get more than one site wide file system repository
4. Setting up a repository inside a course NOTE only Moodle admins can do this in version 2.3
- If the first box has been checked (See 2 above) then-
- Go to the desired course and click on “repositories” in the administration block
- Scroll down and click "Create File System instance"
- Follow the same process as here
5. Setting up an individual file system repository instance NOTE: Onle Moodle admins can do this in version 2.3)
- In the navigation block, click on “my profile”
- Click on “repositories”
- Scroll down and click “create File System instance”
- Follow the same process as here
- This will create a personal file system repository connecting just you to a folder on the server.
6. Upload any files required by course creators to the appropriate folders
- Server permissions needed here
From this point on the check boxes need not be set - leaving them set just invites people to create a repository instance and then advises them that they do not have sufficient privilges.
Using a File System repository file
- A course creator can now make use of the uploaded files by accessing the repository from within the file picker, creating a resource link to a document, for example. This process copies the uploaded file into Moodle and students may access the resource.
Note that file types are respected (based on file extensions), so if you are adding an image in the editor, then you won't see Office docs (for example) appear in the File Picker.
There is just one capability, View file system repository, which is allowed for the default authenticated user role. This means that if a student is required to upload a file - upload assignment, for example, then the repository files may be browsed. It may be more appropriate for this permission to be changed so that course creators have the capabilty, but not students.
- File system repository FAQ
- Overview of Repositories
- FTP files into Moodle 2.0 with the repository API article from somerandomthoughts.com including screencast
If the file within the repository folder is modified the