Hey everyone! I've been using Linux for about six years now, and I'm getting ready to migrate my data and services from an old workstation to a new one my PhD supervisor bought for me. The new setup has better specs and a fancy GPU, which is great for my work. My IT team has already rsynced the /home folder, but I want to ensure I rebuild the system cleanly and follow best practices. I'm particularly trying to avoid just copying over configuration files haphazardly to prevent issues down the line. Right now, I've got a fresh install of Rocky Linux set up, users transferred, and all licensed software installed. I've not touched the /etc directory or any service configs yet since the old system is still accessible for a couple more weeks. I'm running a GitLab server in Docker to manage projects and have multiple Python environments along with various open-source projects that rely on those.
I'm hoping to ensure everything is done right. Here are some specific questions I have:
1. What's the best order to tackle rebuilding?
2. Should I selectively copy configs from /etc or just start fresh each time?
3. When it comes to databases, do you recommend logical dumps or just copying raw data folders, assuming versions align?
4. What common pitfalls should I watch out for during this kind of migration?
5. If you were doing this today, would you opt for containerization or stick with the traditional setup?
If you need any more details, just let me know! Thanks a lot!
3 Answers
For migration workflows, I often copy configs selectively, like for SSH since they don’t change much, and then diff others. Dumping the databases is a good idea too. Just remember, you’ll likely forget something during the migration—happens to all of us!
In my experience, the order doesn’t really matter as long as everything ends up working. As for configs, I usually rebuild them unless I know that the versions are comparable. And for databases, I definitely prefer using mysqldump or pg_dump; those tools exist for a reason. Just copying the data directories can lead to missing important info. Also, keep things simple and document your steps, so you don’t miss anything crucial.
I really suggest taking the time to rebuild everything from scratch using something like Ansible or Nix. It allows for reproducibility, which can save a lot of headaches later on.

Related Questions
Can't Load PhpMyadmin On After Server Update
Redirect www to non-www in Apache Conf
How To Check If Your SSL Cert Is SHA 1
Windows TrackPad Gestures