Sometimes, the easiest method is to use the terminal, rather than GUI tools (if you know what to enter). The basic problem is that what you really want is NOT "file sharing", you just don't know it yet. File sharing is generally talking about sharing things over a network, rather than among users on a single computer.
I don't really know what sort of customizations Ubuntu has in place for its guest account feature, but that CustomizeGuestSession seems to be a good reference for how to do what you want. You just need to be aware that you do NOT want "file sharing". Rather, you want to just create two folders with the desired access rights and you want to create symbolic links to those folders so they'll show up in a guest session.
The two folders could be, for instance, /home/readonly and /home/readwrite. The former is where you want to put the shared files (read only access). The latter is where you let guests save files for future use read write access, but bear in mind any guest can access and mess with what any other guest saves here. If you want more privacy and protection, you'll have to bite the bullet and create user accounts for individuals.)
Create those folders with:
Code:
sudo mkdir /home/readonly
sudo mkdir /home/readwrite
You can see the owner of the file and the access rights with the command:
I'm not 100% sure of how Ubuntu does things (I mainly use the Debian operating system Ubuntu is based on), so I'm not sure if it will be necessary to change the owner to the admin account. If you see something like the following, then you want to change it:
drwxr-xr-x 31 root root 4096 Aug 24 01:21 readonly
The command to change it is:
Code:
sudo chown admin:admin /home/readonly
That code assumes the userid of the admin account is "admin". Adjust accordingly. The result should be that running "ls -l /home" shows you something like this:
drwxr-xr-x 31 admin admin 4096 Aug 24 01:21 readonly
Basically, you want the owner of the "readonly" folder to be the librarian user.
Now you can change the access rights with:
Code:
sudo chmod 755 /home/readonly
sudo chmod 777 /home/readwrite
Eventually, you'll learn the ins and outs of chmod, but for now all you need to know is this:
755 => drwxr-xr-x = the owner has read-write-execute(descend) rights; others have only read-execute(descend) rights
777 => drwxrwxrwx = everyone has read-write-execute(descend) rights
To make these folders easier to find, you can create symbolic links in, say, the ~/Documents folder. When logged in as the admin account, create these links with:
Code:
cd ~/Documents
ln -s /home/readonly
ln -s /home/readwrite
Making such links for an Ubuntu guest account is a matter of creating such links in /etc/guest-session/skel (as per the link provide above). Do this with:
Code:
sudo mkdir /etc/guest-session
sudo mkdir /etc/guest-session/skel
sudo mkdir /etc/guest-session/skel/Documents
cd /etc/guest-session/skel/Documents
ln -s /home/readonly
ln -s /home/readwrite
I'm not 100% sure the above block will work exactly right. I've never messed with Ubuntu guest accounts, I'm just going by the documentation in that link and adding my own little bit.