I have been given promotion in the office and hence given a new laptop. Now I have to move from my old system to the new laptop. I am currently working on many projects and have many dependencies installed in my system. Is there any way I can take my entire system's memory or entire data even from a small image to a bigger software to my new machine?
Aren't you approaching this problem from the wrong end? I mean, cloning is convenient, but it's usually a rule of thumb that when you clone you want the hardware to be exactly identical, you might not want to clone an operating system installed on Model X straight onto Model Y for a bunch of reasons.
You mention that you have "dependencies" installed on your machine, I'm assuming you are talking about package dependencies in general in Debian/Ubuntu, but surely there is some way to check what dependencies are required for whatever important packages you have already.
apt-get supports several arguments, when you figure out what packages you need you can just do this on your new computer:
sudo apt-get package1 package2 package3 etc.
In short, I would recommend a clean install of Ubuntu with a clean install of the packages to avoid problems further ahead. It might take you a couple of hours, but troubleshooting a borked install will take you a lot more time.
Do you have any examples of what kind of stuff you want to back up? It's not easy to help you with so little information.
You can check out some other backup solutions here: http://www.thegeekstuff.com/2012/05/backup-ubuntu-desktop/
As you have dependencies etc. installed and it seems from your question that you are not very confident about it, I would highly recommend CloneZilla as it can help you to copy an exact system image to the new machine. In short, it just creates a clone of the system hard disk.
As bigbadonk240 said, cloning a system assumes the same hardware and is not recommended otherwise. However, Linux Mint (which is an Ubuntu derivative) has developed some tools that can help you. See here for more details.
Try the following:
Get the list of your installed packages
mintbackupfrom here and install it.
mintbackupand click on "Backup software selection":
Choose a destination to save the list of installed packages
The following screen shows you all the packages you have installed, select the ones you want to exclude from your backup and click "Apply".
This should create a file whose name starts with
software_selectionin the directory you chose as the destination.
Copy that file over to your new Ubuntu install on the new laptop, install
mintbackupthere, run it and
Click on "Restore software selection":
Select your backed up software selection file and press "Forward":
In the next screen you can see a list of packages. Select the ones you want to install and press "Apply":
This list only contains packages which were part of your previous software selection and which are not installed in the present system. The packages which are already installed in your new system don't need to be installed again, so they don't appear in this list.
Your files and data you can simply copy over from the machine. Databases can be slightly more complex but you should also be able to just copy over the data files.
Duplicating the system
I've migrated my system via
dd and subsequent
parted a number of times (from desktop to laptop to laptop to desktop). There were always just a few things that changed or had to be adjusted, e.g. network device numbering and the Xorg.conf. Most of the system, however, continued to work just fine, esp. user space stuff like data bases.
Backing up the apt-get history beforehand might be of use. This will help you remember which packages you've had installed.