Hi all :)
I manage a handful of websites and their emails using the PortableApps suite on Windows, so have a separate browser and mail client for each one. This has worked well for years, but now I’m switching to Linux, Mint specifically. I’ve read that I can set up profiles on Firefox and probably Thunderbird, or maybe run separate instances with things like AppImages, but it sounds like it’s a messy solution, and could end up with me using the wrong profile by mistake
What I want to do is set up a virtual machine for each site, and have a completely separate instance of the programs, and hopefully a way to easily transfer the machines to other systems if needs be.
I’d prefer to use a Debian / Ubuntu based distro with Apt and the ‘Windows’ style desktop, as that’s what I’m already used to, but am I better off installing Mint and stripping it down, or is there something more suited to this?
Thanks in advance :)
If you’re running Linux you could just have different logins to either your main desktop or within one VM running linux.
Each user login would have their own separate home directory, own profiles for Firefox and Thunderbird, or any other tools you use. But at the same time all apps you’d install would still be available to all accounts and kept secure and up to date with the VMs system updates.
As you’re using mint as your main desktop and if you’re not very familiar with linux, I’d just run Mint within a Virtualbox VM, probably XFCE edition of mint. That way techniques you use in your main desktop work the same in the your VM, albeit with a slightly different interface with XFCE. Once you’re more familiar with Linux you could look at other techniques? If you’re familiar with Linux then KVM would be an alternate route for virtualisation, albeit very similar in this scenario.
There are methods to run portable apps in Linux (such as Appimage) but the real key is keeping profiles separate. You could also do all this by having separate Firefox and Thunderbird profiles and set up links to run the software with the specific profile you want. Again this could be done with a VM if you want to contain all this in one place, or on your main desktop (either in your Linux profile or a dedicated work profile to separate it out more cleanly from your personal files). You’d get less overhead via this route in terms of hard drive space an RAM/CPU usage. You’d literally just have separate shortcuts like “Website 1” which runs the command “thunderbird -P /path/to/website1/thunderbird/profile”.
This is what I’d recommend, use different themes, color schemes, and/or the customer’s logo so they all look very different. This is what I do to separate my business from personal stuff.
Thanks for the detailed reply :)
I’ve tried setting up a separate profile on my laptop for the main site that I manage, but I’m finding the permissions to be difficult. I need to transfer files from my existing profile to the new website profile, but I keep getting all sorts of errors telling me that I’m not allowed, even if I put the users in the same group and give the group read and write access, or if I try changing ownership to the website user.
I’ve probably set up something wrong with the new user, but it made me think about other ways of doing it, and how to back it up. I’m probably going with a VM so that as well as a regular backup, I can back up the whole VM and store a copy on other physical computers. If something goes wrong, like my laptop getting stolen, I can just fire up the VM on another computer and keep working.
@[email protected] had a good idea though, of using different themes and the logo to help differentiate them. I think I’ll use that whichever way I go.
XFCE is a good idea, thanks. I use Xubuntu on my media server at the moment, so I’m used to the way that it works. I like the look of KVM too. Apparently it’s faster than VirtualBox, and that’s usually fine for my needs, so it should be good :)
Having different Firefox and Thunderbird profiles under the same login is something that I’m definitely avoiding. I’ve tried things like that in the past, and have trouble keeping them separated. I have some memory issues, probably related to ADHD, and find it too easy to open the wrong copy of a program when I’m focused on something else.
Ya, this isn’t an easy problem to solve. I have some of the same issues.
If you want to try again or keep trying with the shared directory model try the “sticky bit” along with ACL.
sudo setfacl -d -m g:shared:rwx /path/to/shared_directory
This will make any files/directories you create in the shared dir have the right permissions to share. But it doesn’t apply to files already existing in the directory or files/directories created outside of this directory that are moved into the directory.
If you go the VM route, you might look into QEMU + KVM using .qcow2 files for the VM disk. Then you could just copy the qcow around and start the VM with a command (albeit a complex command). If this sounds interestiing, let me know and I can provide help and examples of how I do it or explanations.
+1 👍