Migrate Old Server to New
Two virtual servers with command line
sftp access, administered from my local machine.
I want to migrate everything from one server to the other, without an additional stop on the local machine.
The web site in question is located in a
www subfolder of the home folder (sometimes also
public_html or similar).
Please check if the server software is compatible; in my case, both servers use Apache 2.4.x and PHP 7.4.x, so Everything Should Work (tm) and I can re-use
ssh into the new server.
[new_server] $> mkdir transfer; cd transfer [new_server] $> sftp -r user@old_server.tld . sftp> get .
So after entering the sftp command, you get an
sftp> prompt, and simply enter
-r option ensures that this will transfer the user's whole home directory tree, without following symlinks.
For large transfers it might be advisable to archive & compress
old_server's home first.
The old server will ask for a password; if that option has been disabled I'm sure the standard techniques for enabling key login apply, i.e. one would have to copy the appropriate keys from the local machine to
new_server, or create new ones specifically for this.
Before I replace the new server's
www with the contents of the
transfer/www directory, I go through everything there and check for files and folders that are now irrelevant (like logs, caches, software-specific files and folders etc.).
I take even more care for other (hidden) files and directories located directly under the home folder.