Stop the server, back up its identity and data, update the vanilla Rust files with SteamCMD, then reinstall or refresh the framework that matches the new Rust build before starting publicly. SteamCMD can replace modded files, so an update that appears successful may leave the server running vanilla unless Oxide or Carbon is deliberately reapplied.
Prefer not to run the server on your own PC? Godlike.Host offers hosted Rust servers with free DDoS protection and up to three free backups a day.
A Rust update has two separate parts: the Facepunch dedicated-server files and the modding framework layered on top of them. Treating them as one package is the most common cause of missing plugins, startup errors and servers that silently return to vanilla. The reliable order is to stop RustDedicated cleanly, make a restorable backup, run SteamCMD against the existing installation, check the resulting vanilla build, install the compatible Oxide or Carbon release, verify the framework and a representative plugin, and only then reopen the server.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
Rust Key Cards, Rust Red Key Card, Cobalt Restricted Access Cards, Rust Gift For Gamers, Blue Key... | $25.00 | Buy on Amazon |
| 2 |
|
Rust Video Game Notebook | $15.00 | Buy on Amazon |
| 3 |
|
Rust Game Props Large Furnace (S) | $14.99 | Buy on Amazon |
As an Amazon Associate I earn from qualifying purchases.
Recommended Free Tools
What an update changes—and what a wipe changes
A game update changes executable files, libraries and other content in the Rust Dedicated Server installation. SteamCMD may overwrite files that Oxide modified, and Carbon expects some of those files to remain in their original vanilla state. A map wipe is different: it can replace the world save while leaving the server identity, configuration and plugin data intact. Facepunch updates can also coincide with scheduled or forced wipes, so decide separately whether you are updating binaries, wiping the map, or doing both.
The server identity is the value supplied by +server.identity. On a typical installation, its folder is beneath server/ and contains the save and configuration associated with that identity. Preserve that folder before updating. If you intentionally want a wipe, retain a dated copy anyway; it is the fastest way to recover a world that was wiped at the wrong time.
#1 Best Overall
- Inspired by the Rust Video Game – These cards replicate the iconic keycards found in Rust (Red, Blue, Green).
- High Quality PVC Plastic – Printed on both sides, durable and water-resistant. Not a sticker.
- Great Rust Gift Idea – Perfect for fans of Rust, whether for cosplay, loot-themed gifts, or collection.
- Wallet-Size Replica – Standard 3.375x2.125 inches, 30 mil thick—fits in any wallet.
- NOT a sticker*
Prepare a safe maintenance window
Announce downtime and stop the process cleanly
Warn players, disable automated restarts temporarily, and stop RustDedicated through the normal console, service manager or control panel. Do not kill the process while it is saving. A clean shutdown reduces the chance of a damaged save and ensures configuration changes are flushed to disk.
Back up every layer you may need to restore
Copy the following to storage outside the live server directory, using a timestamp in the backup name:
Crashes, 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 minuteWindows 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 reinstall- The server identity directory selected by
+server.identity, including its world save and configuration. - Startup scripts, environment files and service definitions, including the exact command-line arguments for ports, RCON and identity.
- Oxide configuration and data directories, if Oxide is installed. Preserve both plugin configuration and persistent plugin data; they are not interchangeable.
- Carbon configuration, data and logs, if Carbon is installed.
- Your plugin files and any custom assemblies or extensions.
- A copy of the current Rust server version and framework version, recorded in a text file beside the backup.
Do not rely on SteamCMD’s validate operation as a backup. Validation repairs the installation toward the official vanilla files; it does not preserve modded binaries or plugin state.
Run the Rust update with SteamCMD
Valve identifies SteamCMD as the command-line tool for downloading and updating dedicated-server files. Rust’s dedicated-server application ID is 258550. Run the updater against the existing installation rather than creating a second directory, otherwise you may update one copy while the startup script launches another.
The documented command
steamcmd +force_install_dir <server-path> +login anonymous +app_update 258550 -beta public validate +quit
-beta public selects Rust’s public branch. validate compares local files with Steam’s manifest and replaces missing or altered vanilla files. Validation is particularly useful before Carbon installation because Carbon’s dynamic patching requires the original Facepunch DLLs. If you deliberately need to preserve a known-good vanilla installation for investigation, make a copy first; validation is corrective, not reversible.
Windows execution
On Windows, place the command in a maintenance batch file that calls steamcmd.exe. Quote a path containing spaces and keep the update step separate from the launch step. A simplified example is:
steamcmd.exe +force_install_dir "C:RustServer" +login anonymous +app_update 258550 -beta public validate +quit
Run the batch file while RustDedicated is stopped. Read the SteamCMD output and confirm that app_update completes without an error before proceeding.
Linux execution
On Linux, use steamcmd.sh with the same application ID and public branch:
./steamcmd.sh +force_install_dir /srv/rust +login anonymous +app_update 258550 -beta public validate +quit
Use the account and permissions that own the Rust installation. If the service runs under a dedicated user, running SteamCMD as a different user can create files that the service cannot read or overwrite.
Start once in vanilla or maintenance mode
After SteamCMD finishes, start the server without assuming the framework survived. A short vanilla start lets Rust finish any first-run migration and gives you a clean log to inspect. Keep the server private or block player access during this check. Confirm that the expected ports, identity, hostname and save location are being used. Then stop it again before installing a framework.
This step also distinguishes a Rust problem from a framework problem. If the vanilla server cannot start, fix the SteamCMD installation, permissions, command-line arguments or operating-system dependency first. Installing Oxide or Carbon on top of a broken base obscures the original failure.
Rank #2
Reinstall or refresh Oxide after every Rust update
Facepunch’s Rust server guidance states that an Oxide update follows a Rust server update and warns that running SteamCMD from a startup script can revert the server to vanilla. Oxide’s owner documentation is explicit: “For every server update by Facepunch, there is an Oxide update. Don’t mismatch version of Oxide and version of servers.” Treat the framework as version-coupled, not as a one-time installation.
Oxide installation procedure
- Stop RustDedicated completely. Do not extract files while the server is running.
- Obtain the Oxide release that corresponds to the new Rust build.
- Extract the release into the server’s
RustDedicated_Datadirectory. - Allow the extraction to overwrite existing files when prompted. The overwrite is what replaces the framework components that SteamCMD may have removed.
- Start the server and watch the console and log for Oxide load messages.
- Run
oxide.versionfrom the server console or an authenticated administrative console. A returned version confirms that the command layer is active.
Keep Oxide’s configuration and data directories from the backup unless the release notes for the specific build require a migration. Do not replace those directories with empty defaults merely because the binaries were refreshed; doing so can erase plugin settings and persistent data.
Prevent the startup-script trap
A common batch or shell script runs SteamCMD every time the server launches. Because SteamCMD restores official files, that pattern can remove Oxide immediately before RustDedicated starts. Use one of these designs instead:
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →- Run SteamCMD manually during a maintenance window, then launch RustDedicated from a separate script.
- Keep an automated updater, but make it a deliberate two-stage job: update Rust, apply the matching Oxide release, verify
oxide.version, and only then launch the server. - Have the script detect the Rust build and framework package, with a hard failure rather than launching vanilla when the matching package is unavailable.
Do not assume that a successful SteamCMD exit code means Oxide is present. The framework check is a separate required condition.
Install Carbon after the Rust update
Carbon uses a different model. Its documentation says that Carbon patches Facepunch DLLs dynamically, so those DLLs must be vanilla before Carbon is installed. If an earlier Carbon version or another modification changed them, restore the official files with SteamCMD and validate first.
Carbon installation procedure
- Stop RustDedicated and keep the backup made before the update.
- Run the SteamCMD command with
validateagainst the server directory to restore clean Facepunch files. - Confirm that SteamCMD reports completion without errors.
- Download the Carbon build compatible with the updated Rust server.
- Unzip the Carbon archive into the root of the Rust Dedicated Server installation, not into a separate staging directory.
- Start the server and inspect the Carbon log and console for patching and hook-load messages.
- Load one representative plugin and check for errors before allowing players to connect.
Carbon documents a built-in self-updating feature and remote hook updates. Those features can reduce manual framework work, but they do not remove the compatibility check after a Facepunch release. Confirm that the Carbon build recognizes the current Rust version and that its hooks complete successfully.
Recovering Carbon when DLLs are no longer vanilla
Symptoms include patching failures, immediate startup termination or a log that reports unexpected DLL contents. Stop the process, run SteamCMD with validate, reinstall the compatible Carbon archive at the server root, and start again. If the failure persists, compare the Carbon log with the version you installed and restore the pre-update backup rather than repeatedly layering files over a damaged installation.
Free tools Windows power users keep installed
One-click scans. No signup required.
Verify the framework, plugins and server settings
Do not reopen the server merely because it reaches a listening state. Use this order of checks:
- Confirm SteamCMD completed the update without errors.
- Read the RustDedicated console and log for missing libraries, permission errors or failed migrations.
- Confirm framework load messages. With Oxide, run
oxide.versionand record the returned version. With Carbon, inspect the Carbon log for successful initialization and hook registration. - Load one representative plugin, preferably one that exercises commands, hooks and persistent data. Resolve its errors before loading the rest.
- Check that the intended server identity, save, hostname, map settings, ports and RCON configuration are still active.
- Connect with an administrator account, test a plugin command and verify that permissions and configuration values survived.
- Only after these checks should you remove the maintenance lock or announce that the server is open.
Updating during a scheduled wipe
Plan a wipe as a separate change record. Back up the old identity before the update, decide whether the wipe affects only the world save or also plugin data, and communicate the exact restart window. Keep plugin configuration and data unless a plugin author specifically requires a reset; deleting all framework data because the map is wiping can remove permissions, economies and other persistent systems unnecessarily.
For a wipe-and-update, the safest sequence is: stop and back up, update Rust with SteamCMD, start once in vanilla to complete migrations, apply Oxide or Carbon, verify the framework, then perform the intentional save reset and test plugins on the new world. This prevents a failed framework installation from being mistaken for a wipe-related problem.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Oxide versus Carbon for ongoing updates
Both frameworks require administrators to track Rust releases and plugin behavior. Their operational differences affect how much of the update process can be automated.
Rank #3
- Acrylic Painting Pla Plastic
| Area | Oxide | Carbon |
|---|---|---|
| After a Facepunch update | Install the Oxide release matching the new Rust build; the owner guidance says not to mix framework and server versions. | Check Carbon compatibility, restore vanilla DLLs when necessary, then install the compatible Carbon build. |
| Installation model | Extract the release into RustDedicated_Data and overwrite existing framework files. |
Unzip the archive into the root of the Rust Dedicated Server; Carbon patches Facepunch DLLs dynamically. |
| Interaction with SteamCMD | SteamCMD can overwrite Oxide files, leaving the server vanilla unless Oxide is reapplied. | SteamCMD validation is a documented recovery step because Carbon requires vanilla Facepunch DLLs. |
| Built-in updating | The documented workflow is an explicit download, extraction and oxide.version check. |
Carbon documents self-updating and remote hook updates, but administrators still need to verify release compatibility. |
| Plugin compatibility | Test plugins after every Rust and Oxide change; a plugin may depend on a particular API or hook behavior. | Test the same way after Carbon and Rust changes; dynamic patching success does not prove every plugin is compatible. |
| Rollback | Restore the backed-up framework files and server data, or install the previously matched Oxide release after restoring the corresponding Rust build. | Use SteamCMD validate to return to vanilla DLLs, reinstall the known-good Carbon build, or restore the complete pre-update backup. |
| Documentation emphasis | Explicit file replacement and a console version command. | Vanilla DLL requirements, dynamic patching, self-updating and remote hooks. |
Choose the workflow your team can execute consistently. Oxide’s explicit extraction and version command make each manual step visible. Carbon can reduce repetitive framework work through self-updating and remote hooks, but its vanilla-DLL prerequisite makes a clean SteamCMD recovery especially important.
Troubleshooting by symptom
The server starts, but all plugins are gone
SteamCMD probably restored vanilla files or the startup script ran the updater after the framework installation. Stop the server, apply the matching Oxide release or Carbon package, and verify the framework before loading plugins. Check that the launch command points to the same directory you updated.
Oxide commands are unknown
Oxide is not loaded, the files were extracted into the wrong directory, or the release does not match the Rust build. Confirm that the files were placed in RustDedicated_Data, reinstall the matching release while the server is stopped, and run oxide.version after restart.
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 problemsCarbon reports patching or hook errors
Restore vanilla Facepunch files with SteamCMD and validate, then reinstall the Carbon build intended for the current Rust version. Inspect the Carbon log for the first failure rather than relying on the final shutdown message.
A plugin fails while the framework loads
Separate framework health from plugin health. Verify the framework version first, then disable or update the failing plugin and test a known-good plugin. Preserve its configuration and data while troubleshooting so a compatibility fix does not become an accidental data reset.
Settings, ports or RCON changed
The update may have launched a different identity or startup script. Compare the live command line with your backup, confirm the +server.identity value and inspect the service’s working directory. Restore the intended configuration only after confirming that the server is reading the expected identity folder.
SteamCMD fails before updating
Check that RustDedicated is stopped, the install path is writable by the account running SteamCMD, and the public branch is selected. Resolve disk-space, permission and network errors shown by SteamCMD before installing a framework. A partial update is not a safe base for either Oxide or Carbon.
Rollback when the update cannot be repaired quickly
Use the dated backup rather than experimenting on the only copy of the server. Stop all services, move the failed installation aside, restore the Rust files, identity, framework files, plugin directories and startup scripts from the same backup set, then start privately and run the verification checklist. Mixing a new Rust binary with an old framework backup, or new plugin data with an old save, can create problems that a complete, same-time restore avoids.
If no complete backup exists, the least destructive recovery is to restore a vanilla Rust installation with SteamCMD, reinstall the framework that matches that build, and copy back plugin configuration and data selectively. Test each plugin after copying its data; never overwrite the entire live data tree blindly when the failure may be caused by one incompatible plugin.
Maintenance checklist for every future Rust release
- Record the current Rust, framework and plugin versions.
- Announce downtime and stop RustDedicated cleanly.
- Back up the identity, save, configuration, framework data, plugins and launch scripts.
- Run SteamCMD against the actual installation using application ID
258550. - Use
validatewhen you need a clean vanilla base, especially before Carbon. - Start once privately to confirm the vanilla update and inspect logs.
- Install the Oxide release matching the Rust build, or install the compatible Carbon archive after restoring vanilla DLLs.
- Verify framework load messages; with Oxide, run
oxide.version. - Test a representative plugin, identity, save, ports, RCON and configuration.
- Open the server only after the checks pass, and retain the backup until the next stable restart.
Conclusion
The dependable update is a controlled sequence, not a single command: preserve the server state, update the vanilla Rust files, deliberately restore the framework, and verify plugins before players return. Oxide requires explicit reapplication after Facepunch updates, while Carbon requires vanilla DLLs and offers self-updating and remote-hook features. Keeping SteamCMD separate from the launch script—and maintaining a tested backup—prevents the most common loss of plugins and gives you a predictable rollback when a Rust release breaks compatibility.
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.




