We've done this, with a cellphone/cell modem and PIC micro to show realtime position on gmaps, using GPS data from a bar-mounted Garmin (details
here). For quick updates and 2-way comms we used GPRS (much cheaper than SMS too, if you're doing fast updates). Nice feature with the Garmin is the external pack can provide power as well as suck out GPS position, so the tradeoff is simply run time vs update frequency for a given battery size (we used 60s updates).
For non-real time, there are loads of solutions. Google for 'Trackstick' which is a pretty good gadget to sling in a backpack and record 24-hour type rides (any longer and you'll need extra batteries).
Smartphone apps will do the job too,of course - as long as you don't want to go long.