ACPI administration advocacy advocacy advocacy opinion alsa amarok apache apple apt aptitude archive audio audo authentication automount avi awk bash BIOS boot browser business cache calendar calibre cdr cdrecord censorship commandline computerscience console convert cron cut database date debian degree design desktop development disk dpkg dvd economics education emacs email europe exim faad ffmpeg file files firefox firewall flash foss freedom ftp fun fuse git gnumeric graphics grep growisofs grub gtkpod hardware hardware html icedove idiocy image imagemagick images installation ip iphone ipod iptables iso itunes ivman kde kernel keyboard knoppix lame laptop latex linux locale lockin locking longlines lsof m4a microsoft mimetypes minitab mount mp3 mp4 mplayer multimedia music mysql network nfs nfs4 nmap openbox openfiles openoffice opinion opinion orgmode partition pdf perl php podcast politics pomodoro ports postgresql printing privacy process programming rant remote rhythmbox rss rsync rxvt scp screengrab screenshot script scripting scsi security sed server services shell siteadmin sitenews sitesoftware skype skype slackware sound sox spam spreadsheet ssh statistics subversion sudo svk swap t23 t43 terminal tex text thinkpad thunderbird time timer timezone ubuntu udev upgrade usb usbmount users uuid versioncontrol vfat video vnc windows wine wordpress wordprocessing X40 xwindows xwindows youtube
This is a FAQ. Mostly when you are moving a directory from one file system to another you want to keep file permissions and ownershops, which, using cp on its own my not do.
One solution is from the Tips HOWTO and was originally suggested by Alan Cox with an amendment of Jim Dennis:
(cd /source/directory && tar cf - . ) | (cd /dest/directory && tar xvfp -)
Using tar, like this makes sure that permissions and ownerships are maintained. Another way may be to use the excellent rsync tool:
rsync -avz /src/foo /dest