1. Always-on IRC client
Using screen (a back-groundable terminal that can be easily resumed at any time) and irssi you can stay connected to IRC at all times, quietly sitting there… logging everything. 🙂
Apart from everything else you can do with a shell account, having a personal website on the same machine as the programs and services you run can be very nifty.
Accessing your IRC logs via your website (so even at work/school/etc. you can check IRC quickly and easily) is one example.
3. Anonymous Browsing
Want a secure, anonymous way to browse? On Linux:
ssh user@server -D 9050
Will create a SOCKS port (9050) on your local machine. Point firefox/whatever at localhost:9050 (SOCKS) and browse away!
Windows clients support this too.
4. File Storage
Obviously I’m not saying you should back up your home harddrive to a shell, but doing minor backups can be very useful.
Got a few MBs of source code you want to have backed-up offsite? Why not put it on your shell?
Been writing some papers that are more important than a dead hard drive? Why not back them up every now and then?
scp -r /path/to/folder [email protected]:~
Will copy all files/folders in /path/to/folder to your home directory on shell.com. Using ssh keys for password-less authentication allows you to have a simple, one-line backup script.
5. E-Mail, FTP and other network services
Behind a restrictive connection? If you have outbound access to port 22 (you can always request other ssh ports be used on st0rage.org ;)) you can access any port on that machine.
Check email, use ftp/etc, and choose whether it stays on the shell or if you download it for your machine.
How can we not mention encryption?
How would you like to be able to store sensitive information remotely and encrypted? Keeping a list of passwords or financial information encrypted with gpg is easy and effective.
#Fill out info, accept defaults.
#Select (O)kay instead of (Q)uit to enter your passphrase
#This can take some time. A lot.
gpg -e file-to-encrypt
#enter your name from the step above.
#push enter again to exit
gpg -d file-to-encrypt.gpg
#contents will be displayed on the screen
gpg -d file-to-encrypt.gpg > file-to-encrypt
#will put the contents in a file
Google will give you some more advanced stuff with gpg, have faith the above is the hardest part. 😛
7. Scheduled Tasks
Cron is a powerful tool. With it, you can run commands at pre-determined re-occurring intervals.
For example, want to email yourself a reminder a week in advance for certain people’s birthdays? Easy!
echo “Julie’s birthday is on 3-11-`date +%Y`” > ~/reminders/julie.txt
echo “Sarah’s birthday is on 1-26-`date +%Y`” > ~/reminders/sarah.txt
Already use the shell for screen+irssi? Why not email yourself a daily log of what was said (or lines containing your name)?
58 23 * * * cat ~/irclogs/*`date +%F`* | grep nickname > ~/daily.log
59 23 * * * mutt -s “IRC Log” [email protected] -i ~/daily.log