The safest Linux VPS migration is a rehearsed, side-by-side cutover: inventory the old server, build and harden the replacement, copy files in stages, move the database with database-aware tools, test the new address privately, freeze writes for a final synchronization, then change DNS and keep the old VPS ready for rollback.
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
There is no universal downtime number. The maintenance window depends on database size, write volume, replication design, application behavior and DNS caching. The procedure below minimizes avoidable downtime without pretending DNS changes are instantaneous.
As an Amazon Associate I earn from qualifying purchases.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Plan the migration as a reversible change
Do not modify the production VPS in place unless you have no alternative. A parallel build gives you two complete environments, makes configuration differences visible and lets you return traffic to the old address if the replacement fails.
Define the cutover and rollback conditions
Write down the planned maintenance window, the person responsible for changing DNS, the person watching application health and the exact condition that triggers rollback. Typical rollback triggers include failed database writes, broken authentication, missing uploads, duplicate background jobs, invalid TLS, a growing error rate or a queue that cannot drain.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
Take an off-server backup before making changes and verify that at least one backup can be restored. A snapshot that has never been restored is not a dependable rollback plan.
Use a migration schedule
| Phase | When | Purpose |
|---|---|---|
| Discovery | Several days before | Record services, data, dependencies, credentials, DNS and monitoring. |
| DNS preparation | 12–24 hours before cutover | Lower A and AAAA record TTLs to 300 seconds where practical. |
| Parallel build | Before the maintenance window | Provision, patch, secure and configure the new VPS. |
| Initial transfer | Before cutover | Copy most files and restore an initial database copy while the old server remains live. |
| Private validation | Before cutover | Exercise the application through the new IP without changing public DNS. |
| Final cutover | Scheduled window | Stop writes, synchronize changed files and data, start the new services and change DNS. |
| Observation | After cutover | Watch traffic, logs, queues, mail, backups and DNS; retain the old VPS. |
1. Inventory the old Linux server
Migration failures usually come from an overlooked dependency rather than from the file copy itself. Record the current state before touching production.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Collect operating-system and resource details
- Linux distribution and release:
cat /etc/os-release - CPU, memory, swap and disk use, including every mount point:
df -h - Listening sockets and owning processes:
ss -tulpn - Enabled systemd units:
systemctl list-unit-files --state=enabled - Container definitions, volumes and compose files, if containers are used.
Note which paths are local disks, network mounts or symlinks. A symlink that points outside /var/www can make an apparently complete copy incomplete.
List application and operating-system dependencies
- Web-server virtual hosts, document roots, rewrite rules and upstream sockets.
- Runtime versions such as PHP-FPM, Python, Node.js, Java or other application workers.
- Systemd services, timers and user crontabs. Check both
crontab -lfor each relevant user and system-wide schedules. - Queues, schedulers, workers and any process that sends mail, processes payments or calls an external API.
- Firewall rules, SSH configuration, authorized keys, non-root administrators and sudo policy.
- TLS certificates, renewal jobs, private keys and certificate-chain files.
- Database engines, versions, databases, users, extensions, collations and storage locations.
- Persistent uploads, generated media, search indexes, caches that must be rebuilt and files written by the application.
- Environment variables, application secrets, API credentials and webhook signing keys.
- DNS records, monitoring checks, alert destinations, backup jobs and third-party callbacks.
Do not paste secrets into migration notes or chat. Export them through the secret-management process already used by the application, and plan how they will be installed on the new host.
2. Lower DNS TTL before changing the address
Lower the TTL on every relevant A and AAAA record, including application subdomains, 12–24 hours before the planned switch. A commonly recommended temporary value is 300 seconds (five minutes). This reduces the time many recursive resolvers retain the old address, but it does not force an immediate update: resolvers, operating systems and browsers can cache responses for different periods.
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
Make the change at the authoritative DNS provider and confirm the authoritative response directly. Include records used by APIs, administrative panels, mail-related services and callbacks; changing only the main website record can leave dependent traffic on the old host.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsAfter the new VPS has handled normal traffic and the rollback window has ended, restore the normal TTL. A permanently low TTL increases DNS query traffic without providing a continuing migration benefit.
3. Choose and provision the replacement VPS
Size the new machine for current load plus growth, not merely for the old server’s present average. Compare capacity and operational characteristics before ordering.
| Decision area | What to verify | Why it affects migration |
|---|---|---|
| Operating system | Distribution release, kernel behavior and package availability | Matching major versions reduces configuration and library surprises. |
| Runtime and database | Web runtime, extensions, database engine and version compatibility | Applications can fail when a default package is newer or an extension is absent. |
| CPU and RAM | Current usage, burst behavior, swap policy and growth headroom | Insufficient memory causes worker kills and database instability during peak traffic. |
| Disk | Used space, free space, IOPS, snapshots and expansion options | The destination needs room for the copied data, logs, temporary dumps and growth. |
| Region and network | Latency to users and dependencies, bandwidth, IPv4/IPv6 and reverse DNS | Network changes can affect callbacks, mail reputation and user experience. |
| Security controls | Firewall, private networking, SSH access, snapshots and backup retention | These controls determine how safely you can test and recover. |
| Operations | Monitoring, support, migration assistance and ease of reverting traffic | A technically fast server is less useful if it is difficult to observe or restore. |
Build a clean destination
- Install a supported OS and apply all security updates.
- Create a non-root administrative account, install its SSH key and grant only the required sudo access.
- Disable password authentication and direct root SSH access after confirming key-based login from a second session.
- Configure the correct timezone and time synchronization.
- Install the web server, runtime, database packages and transfer tools at versions compatible with the application.
- Apply a default-deny firewall policy, then allow only required ports such as SSH, HTTP, HTTPS and private database access.
- Set up monitoring, log rotation, external health checks and off-server backups before production traffic arrives.
Keep major OS, web-runtime, database and container versions aligned where practical. If you intentionally upgrade during the move, treat that as a separate change and test it independently; combining an infrastructure migration with an untested application upgrade makes diagnosis and rollback harder.
4. Back up and copy files in stages
Create and verify backups
Make a complete application backup, a database backup and a record of configuration before the initial transfer. Store at least one copy away from both VPSs. Check archive contents and perform a test restore into a temporary location or database on the new host.
Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
Run the initial rsync pass
Use SSH-key authentication and preserve ownership, permissions, hard links, ACLs and extended attributes when the destination filesystem supports them. For example:
sudo rsync -aHAX --numeric-ids --info=progress2
root@OLD_SERVER_IP:/var/www/ /var/www/
Adapt the source and destination paths to the application. Repeat the command later; rsync will transfer only files that changed after the first pass.
Copy application code, persistent uploads, static assets and configuration that is safe to review. Exclude caches, temporary files, Unix sockets, process IDs and live database storage directories. Do not copy a database’s active files as if they were ordinary documents. Preserve ownership deliberately: the web-server user, upload directories and worker accounts must match the service configuration on the new host.
Move other persistent data
Identify data outside the web root, such as user-upload directories, media volumes, queue persistence, search indexes and custom scripts. Transfer each path explicitly and document its owner, mode and mount point. Recreate mount units or storage mounts on the new VPS before starting services that depend on them.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
5. Migrate databases with database-aware methods
Never rsync a live PostgreSQL, MySQL or MariaDB data directory and assume it is consistent. Database files can change while they are being copied, producing a destination that will not start or contains an internally inconsistent state.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
PostgreSQL logical dump and restore
A representative flow is:
# old VPS
sudo -u postgres pg_dump -Fc appdb > /tmp/appdb.dump
scp /tmp/appdb.dump root@NEW_SERVER_IP:/tmp/
# new VPS
sudo -u postgres createdb appdb
sudo -u postgres pg_restore --clean --if-exists -d appdb /tmp/appdb.dump
Match the PostgreSQL major version, extensions, roles, ownership and locale requirements. Restore roles and grants before testing application connections, and remove the dump from temporary locations after confirming the restore and backup policy.
MySQL or MariaDB dump
Use a consistent logical dump, commonly with mysqldump --single-transaction for transactional tables. Include the required databases, users, grants, routines, events, triggers and character-set settings. Confirm whether any non-transactional tables require a brief lock or a maintenance window.
Choose a strategy for write-heavy systems
- Planned maintenance: stop writes, take the final dump, restore it and start the destination. This is straightforward but the window grows with data volume.
- Native replication: copy an initial base, stream subsequent changes and promote the new database during cutover. This reduces the final pause but requires tested replication monitoring and promotion steps.
- Application-level dual writing: use only when the application explicitly supports it and conflict handling has been tested.
Whichever method you select, record the final transaction position or dump time and verify row counts, recent records and application reads and writes on the destination before switching traffic.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.6. Recreate services, TLS and scheduled work
Install the same virtual hosts and upstream definitions in Nginx or Apache, then adapt document roots and socket paths to the new filesystem. Recreate PHP-FPM or other runtime pools with matching user IDs, limits and environment settings.
- Install systemd unit files and reload them with
systemctl daemon-reload. - Recreate cron jobs and systemd timers, checking their working directories and environment variables.
- Configure queue workers, supervisors and graceful shutdown behavior.
- Set mail transport, DNS-related sender settings and any required reverse-DNS or relay configuration.
- Reapply firewall rules and restrict database and administration ports to trusted networks.
- Install TLS certificates and complete chains. Re-issue certificates on the new machine when that is safer than copying private keys, then verify automated renewal.
- Install application secrets through the approved secret-management process, not by leaving them in shell history or temporary files.
Check every restored path for the correct owner and mode. A site that loads while uploads, cache warming or queue processing runs as the wrong user is not fully migrated.
Best Value
7. Test the new VPS without public DNS
Use a hosts-file entry for your workstation or send a request directly to the new address with the intended hostname:
curl --resolve example.com:443:NEW_SERVER_IP https://example.com/
The hostname in the request matters because virtual hosts and TLS certificates use it. Test both HTTP-to-HTTPS redirects and the canonical hostname.
Run an acceptance checklist
- Homepage, static assets, authenticated pages and administrative paths.
- Database reads, writes, migrations and transaction rollback behavior.
- New uploads, downloads, image processing and permission handling.
- Background jobs, scheduled tasks, queue retries and idempotency.
- Outbound email, bounce handling, webhooks and callbacks from external services.
- TLS certificate chain, renewal command, redirects, security headers and HTTP status codes.
- Application, web-server, database and system logs under a representative workload.
- Health checks, external monitoring, alerts and off-server backup execution.
- Firewall exposure from both trusted and untrusted networks.
Use realistic test data and exercise a normal workload rather than checking only that the home page returns HTTP 200. Keep the new host private from public DNS while you fix discrepancies.
8. Execute the final cutover
Announce the maintenance window to affected users and pause automated deployments. Have a recent backup and the tested rollback command available before stopping writes.
- Put the old application into maintenance or read-only mode and stop new writes.
- Stop or quiesce workers on the old VPS so jobs cannot run twice. Record any in-flight queue items.
- Run the final rsync pass for application files and uploads.
- Create and restore the final database dump, or complete the planned replication catch-up and promotion.
- Start the database, web server, application services and workers on the new VPS.
- Run smoke tests against the new IP, including a controlled write, login, upload and representative job.
- Change the authoritative A and AAAA records to the new address.
- Keep the old application stopped or read-only while DNS caches expire, unless your rollback plan requires it to be ready to serve.
Do not start workers on both hosts during the transition. Duplicate consumers can send two emails, charge an operation twice or corrupt application state even when the web pages appear healthy.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minute9. Monitor both hosts and preserve rollback
For the first hours after the DNS change, monitor access and error logs, latency, CPU, memory, disk, database health, queue depth, mail delivery, webhook responses and external DNS answers. Query several resolvers and test from more than one network because cached answers will not change simultaneously.
Rollback procedure
- Stop writes and workers on the new VPS if they could create divergent data.
- Change A and AAAA records back to the old address.
- Restore service on the old VPS using the latest synchronized data, or restore the verified backup if data diverged.
- Confirm application health, then investigate the failure before attempting another cutover.
Keep the old VPS intact until the replacement has served representative traffic and completed at least one verified backup. Only then restore normal DNS TTL, remove obsolete SSH keys and firewall allowances, revoke credentials no longer needed, confirm external monitoring and backups, and decommission the old machine deliberately.
Common failure modes and fixes
| Symptom | Likely cause | Action |
|---|---|---|
| Site shows the wrong application | Virtual-host hostname or DNS record is missing | Use curl --resolve, check the Host header and verify every A/AAAA record. |
| 502 or 504 responses | Runtime socket, service, permissions or firewall mismatch | Check upstream paths, service status, socket ownership and logs. |
| Login works but data is missing | Wrong database, schema, role or environment variable | Compare connection settings, schema versions, row counts and application secrets. |
| Uploads fail | Upload directory was omitted or has the wrong owner, mode or mount | Confirm the path exists on the correct filesystem and is writable by the application user. |
| Jobs run twice | Workers remained active on both VPSs | Stop old workers, inspect queue leases and make handlers idempotent before retrying. |
| Some users still reach the old server | Resolver or browser caching | Check authoritative DNS and multiple recursive resolvers; do not treat the lowered TTL as an instant switch. |
| TLS warning appears | Certificate, chain or hostname does not match | Install a certificate covering the requested names and test the complete chain externally. |
| Mail or callbacks stop | Firewall, credentials, allowlist, reverse DNS or callback URL still references the old host | Review outbound logs, provider allowlists, DNS records and signing secrets. |
| Database will not start after copying | Live data directory was copied with inconsistent files | Discard that copy and restore a logical dump or use a database-native replication method. |
Final migration checklist
- Inventory, backup and restore test completed.
- Destination capacity, OS, runtime and database compatibility confirmed.
- SSH, firewall, monitoring, time synchronization and backups configured.
- DNS TTL lowered 12–24 hours before the change and authoritative responses checked.
- Initial rsync completed without caches, sockets or live database directories.
- Database restored with a logical dump or synchronized through a tested replication plan.
- Virtual hosts, secrets, TLS, cron, timers, queues, mail and callbacks tested privately.
- Final write freeze, worker stop and synchronization sequence rehearsed.
- Rollback DNS change and old-server recovery steps documented.
- Post-cutover logs, metrics, queues, mail, DNS and backups monitored.
- Old VPS retained until representative traffic and a verified backup succeed.
A migration is complete only when the new VPS can serve real traffic, process its background work, send and receive required integrations, and recover from a tested backup. Treating the move as a rehearsal followed by a controlled DNS change turns a fragile copy operation into a reversible infrastructure change.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Recommended Free Tools




