I'm planning to make an SD card (or a flash drive) my home directory so as to be able to work on different PCs without much hassle.
Is this a bad idea for some reason?
I'm planning to make an SD card (or a flash drive) my home directory so as to be able to work on different PCs without much hassle.
Is this a bad idea for some reason?
While they are quite reliable (no moving parts), SD cards/USB flash drives can be slower (you probably do not want to run disk-intensive operations from there) and have limited write cycles. From this Super User question:
Flash memory indeed has limited write cycles. However, by now it is unlikely that you'll encounter this within the normal lifetime of such a card.
You will probably want to avoid a journaling file system, as this puts extra strain on the memory chips: for this you can use ext2. (I remember this was the case once, but as noted in a comment, this might not be the case anymore)
I think you'd be OK as long as you backup frequently and replace the card/flash drive if it starts showing errors.
I've ran an entire system from an SD card before (over USB 1.0!) It was extremely slow. I was running OpenBSD. It has softdep
which increased performance by a large amount, though that doesn't transfer to Linux.
I'd say the biggest thing to make sure of is that you mount it with noatime
, this way, you don't get penalized by every read you do. Also, you should have a good reason for doing this. I did it with the purpose of saving power in a basic router setup(where I didn't need more than 1G of space).
This will also be significantly slower unless you use a USB 3.0 port and a matching thumbdrive/SD card reader. USB 3.0 is actually faster than the ubiquitous SATA-2, so in theory if you use USB 3.0, you shouldn't have any performance problems.
Also, you may want to make sure you can log in to your account without your thumb drive just in case
I do this and it works just fine for me. But I only use it on one computer; the biggest problem I see with using the same card for two means you can only use one at a time. Just something to watch out for: I ran into a bit of trouble because the system was trying to mount the /home directory before the SD card was detected, aborting the boot process. I had to alter the boot scripts (Arch Linux) slightly to wait for the card before mounting it and moving on with the boot.
From my experience, I will really suggest NO. On past few years working of Linux environment for my development purposes, the thing that matters most is performance and stability and SD cards are hardly meant for those, I believe they serve as secondary storage more(Please correct me If I am wrong), rather than primary high speed storage such as HDD itself.
One of the most daunting task you will probably face during this campaign, is when you lose your SD card, or corrupt it somehow. Although, this can be fixed, its a lot confusing task for starters. Waiting for help from an online community such as this site itself might not guarantee a solution and you may get stuck with an useless system for days.
If your home folder is not huge and all your PCs have normal connectivity, you could try one or more of these cloud storage services: Dropbox, Google Drive, Sugarsync, Microsoft Skydrive (but there are many more).
We're living in times of cloud storage and ubiquitous connectivity: if you don't have particular constraints, using a SD to bring your documents with you is simply anachronistic.
Dropbox
folder. At least as long as Sugarsync releases a native Linux client.
Just be aware that when SD cards fail they fail suddenly and catastrophically.
Hard drives may give you some advance warning and degrade gracefully. You can usually mount a failing hard drive and retrieve data. SD cards don't give you that chance.