Copy all sdcard contents to larger sdcard
The least tricky way is:

take your 2GB card out of the device, put it into a card reader, and attach that to your computer
copy all contents from the card to an empty directory on your computer
safely remove the card reader, replace the 2GB card by the newer, bigger one, and attach that to the computer
copy the contents of the directory from step 2. to the new card
safely remove that card again, and place it into your Android device

When in doubt about the hidden stuff, use Linux for the copy process. You can even boot it from a LiveCD. From a terminal command, use cp -R /path/to/source/* /path/to/target. On the other hand, if using Windows and you can see the files/directories starting with a dot (watch out e.g. for the .android_secure directory), they should be copied along fine.
See also:

How do I switch my Android device's SD card without causing problems?
Changing SD Card Just a Simple Copy &amp; Paste
App2sd - Changing the SD Card
How to upgrade / swap SD card without losing data and installed apps?