Storage Devices
From LinuxMCE
This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007. In general any information should apply to LinuxMCE. However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto. |
Package: pluto-storage-devices
Directory: src/PlutoStorageDevices
Contents
Background Info
This bash scripts where created to configure / setup storage devices that can be used in pluto. Currently there are 2 device templates that can be configured by this scripts:
- Hard Drives / Generic Internal Driver (1790)
- Network Storage / HD-HG300LAN (1794)
This device templates have some common device data:
- PK_Users (3)
- A list of integer values separated by comma. The numbers represent the id of the users who can use the storage device for storing private files on them. If the 0 value is there too, the storage device can also be used to store public files. If no value is entered, the default is considered 0 (public only). If the next device data (use pluto dir structure) is not set to 1, all the files will be accesible from one directory on the storage device, meaning that public / private files can be accesible by every user that can access that device.
- Use Pluto Directory Structure (130)
- This value can be 1 or 0, meaning that the information on theat devices will be stored using a pluto directory structure, identical to the one in /home directory. For every user there will be a separate directory to store it's private data and there will also be a /public directory in there. The default is set to 1 but if other/no value is entered will be considered 0.
- Use Automatically (134)
- A leftover ? Not used
- Directories (153)
- The media directories from the pluto directory structure that can be used on this device. Example by entering music, movies only the music and movies folders will be available from pluto. The value can be empty, meaning that all directories will be available.
File Details
Scripts used to do generic setup
- StorageDevices_Mounts.sh
- This script instructs the automount daemon via the /etc/auto.PlutoStorageDevices file, how to mount the desired storage devices. After it updates the configuration file, the script reloads the autmount daemon. All the devices will be accesible in the /mnt/device/device_id mountpoints. This script configures the automounter only on the computer that runs it.
- StorageDevices_ExportsNFS.sh
- Some devices can be atached to only one computer, for example the internal disc drive. This script generates a section in the /etc/exports file that can export the local mounts of this kind of devices over nfs. This way the local storage devices can be accesed by any computer over the network. After it updates the /etc/exports file it also trigers a nfs reload.
- StorageDevices_Symlinks.sh
- The mounted storage devices will be accesible to the user via symlinks that are created in the /home directory by this script. Depending if the storage device uses a pluto directory structure or not the synlink will be pointing to the mount point directly or to the pluto media directors that where previously created in it. Also the symlinks will be created only in the directories listed on the Directories device data.
- StorageDevices_PlutoDirStructure.sh [-d <deviceID>]
- Creates a pluto directory structure on a mounted storage device. Called without -d parameter it creates the pluto dir structure only on the localy mounted devices, used with -d it creates the pluto structure on the specified device. If a device doesn't have the corespoding device data (130) set to true that the script skips it.
- StorageDevices_Setup.sh [--cascade]
- is the main script that calls the previous script so that it can setup the storage devices. Is intended to be used as a startup script. At startup is called by sysv-rc without the cascade parameter. If the --cascade parameter is suplied that the scripts runs on the local machine and trigers itself to run on the other working machines too.
Configuration scripts for particular device templates
- StorageDevices_BuffaloNAS.sh
- Configuration script for device templace 1794. It runs StoregeDevices_Setup.sh --cascade to setup the storage devices on all powered on machines and StorageDevices_PlutoDirStructure.sh -d <DeviceID> to setup a directory structure on that particular device.
- StorageDevices_InternalDiskDrive.sh
- Configuration script for device template 1790. It runs the StorageDevices_Setup.sh --cascade so it can configure the new device on all the powered on machines.