Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Prefer not to run the server on your own PC? Godlike.Host offers hosted Euro Truck Simulator 2 servers with free DDoS protection and up to three free backups a day.
SteamCMD is the updater for both dedicated servers, but it does not schedule itself. Use a scheduled task, cron job, or systemd timer to stop the server, run SteamCMD against the same installation directory, check the result, and start the server again. Use app ID 1948160 for Euro Truck Simulator 2 (ETS2) or 2239530 for American Truck Simulator (ATS).
What automatic updating actually means
An ETS2 or ATS dedicated server will not update merely because Steam is running or because a new game patch has been released. SCS documentation states: “Remember that SteamCMD does not auto-update your server.” SteamCMD is the command-line client that downloads and updates the dedicated-server files; an operating-system scheduler must decide when to run it.
A reliable update job therefore has four separate responsibilities:
- Stop the dedicated-server process cleanly so files are not in use.
- Run SteamCMD with the correct application ID and the exact directory used by the live server.
- Preserve configuration and exported package files, then regenerate packages when the game or mod set changes.
- Start the server and verify its log, token, ports, and reported version before players reconnect.
There is no timeless “latest build number” to put in a script. Steam depots change over time. Your automation should request the current build and use SteamCMD output and the server log to confirm what was installed.
#1 Best Overall
- Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
- With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
- Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
- Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
- Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.
Use the correct dedicated-server application ID
ETS2 and ATS are separate SteamCMD applications. Selecting the wrong ID can produce a successful-looking command that updates a different directory or installs the wrong server files.
| Server | SteamCMD app ID | Command substitution |
|---|---|---|
| Euro Truck Simulator 2 dedicated server | 1948160 |
Use +app_update 1948160 |
| American Truck Simulator dedicated server | 2239530 |
Use +app_update 2239530 |
SCS documentation identifies these as the two dedicated-server applications. The IDs are not interchangeable, even if both servers are hosted on the same machine. If you operate both games, give each installation its own directory and its own scheduled job.
Prerequisites before scheduling updates
Install SteamCMD and identify the live directory
Install SteamCMD on the host operating system and run it manually once. Record the directory passed to +force_install_dir. That directory must be the one from which your launch script or service starts the dedicated server—not merely a directory containing another copy of the files.
A common failure is updating one folder while the service launches another. Check the service definition, batch file, shell script, or control-panel configuration that starts the server, then use that exact path in every update command.
Decide how the server is stopped and started
The updater should not compete with a running server. Use the same mechanism already used to operate the service: a Windows service, a Linux systemd unit, or a controlled launch script. A forced process kill can leave configuration writes incomplete, so send a normal stop request first and allow the process to exit.
Choose a maintenance window
Schedule updates during the least active period for your community. Announce the window, stop accepting new players, and prevent overlapping runs. Two simultaneous SteamCMD processes targeting one directory can corrupt or lock files and make the result difficult to diagnose.
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 reinstallRank #2
- Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
- Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
- Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
- Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
- Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
Make backups that can be restored
Before maintenance, copy server_config.sii, server_packages.sii, and server_packages.dat to a dated backup location. Preserve the server logon token contained in server_config.sii. If your recovery plan requires reverting the installed binaries, retain a known-good copy of the server directory as well; configuration backups alone cannot restore executable files.
Windows: automate an ETS2 or ATS update
Run the command manually first
Open a command prompt and test the command with the real installation path. For ATS:
steamcmd.exe +force_install_dir "C:GameServer" +login anonymous +app_update 2239530 +quit
For ETS2, change only the application ID:
steamcmd.exe +force_install_dir "C:GameServer" +login anonymous +app_update 1948160 +quit
Replace C:GameServer with the directory used by the running server. SteamCMD must be able to write there. If the command reports permission errors, run the job under an account with access to the directory rather than blindly granting broad permissions.
Create a maintenance script
A script makes the order of operations explicit and gives Task Scheduler one item to run. The following PowerShell pattern assumes the server is registered as a Windows service. Replace the example service name with the service name on your machine, and use the appropriate app ID.
$InstallDir = 'C:GameServerets2'
$SteamCmd = 'C:steamcmdsteamcmd.exe'
$LogDir = 'C:GameServermaintenance-logs'
$LogFile = Join-Path $LogDir (Get-Date -Format 'yyyy-MM-dd-HHmmss') + '-steamcmd.log'
New-Item -ItemType Directory -Force -Path $LogDir | Out-Null
Stop-Service -Name 'ets2-dedicated' -ErrorAction Stop
& $SteamCmd +force_install_dir $InstallDir +login anonymous +app_update 1948160 +quit *> $LogFile
$SteamExitCode = $LASTEXITCODE
if ($SteamExitCode -ne 0) {
Write-Error "SteamCMD failed with exit code $SteamExitCode. Server remains stopped."
exit $SteamExitCode
}
Start-Service -Name 'ets2-dedicated' -ErrorAction Stop
For ATS, use a separate script or change the directory, service name, and app ID to the ATS values. Add your backup and package-export steps before the SteamCMD invocation. If you do not use Windows services, call the same clean stop and start commands that your existing launch procedure uses; do not guess an executable name and terminate an unrelated process.
Create the scheduled task
- Open Task Scheduler and choose Create Task, not the limited “Basic Task” wizard if you need retries and overlap controls.
- On General, give the task a clear name, select Run whether user is logged on or not, and enable Run with highest privileges if the service or installation directory requires it.
- On Triggers, create a daily or weekly trigger at your maintenance time. A weekly schedule is suitable when you want to avoid restarting for every minor depot change; a daily schedule keeps the installation closer to current.
- On Actions, start
powershell.exewith arguments that run the saved script, using the full script path. - On Settings, prevent a new instance from starting if the previous instance is still running, enable automatic retries after a failure, and set a time limit appropriate to your download size.
- Run the task manually once. Confirm that the service stops, SteamCMD writes a log, the task reports success, and the service starts again.
Task Scheduler history and the captured SteamCMD log are more useful than a simple “last run” timestamp. Keep enough log files to determine which build was installed and whether a failed run left the server stopped.
Rank #3
- 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
- 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
- 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
- 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
- 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.
Linux: automate an ETS2 or ATS update
Use the Linux command pattern
For ETS2, the command is:
steamcmd +force_install_dir /path/to/server +login anonymous +app_update 1948160 +quit
For ATS, substitute 2239530. Replace /path/to/server with the exact directory referenced by the live service. A different path is the most common reason an update appears not to take effect: SteamCMD updates successfully, but the running process continues to read old files elsewhere.
Wrap the command in a systemd-aware script
If the server runs under systemd, an update script can stop the unit, back up the important files, run SteamCMD, and start the unit only when SteamCMD succeeds. The unit name below is an example; use the unit that actually launches your server.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →#!/usr/bin/env bash
set -u
INSTALL_DIR="/srv/ets2-server"
BACKUP_DIR="/srv/ets2-backups/$(date +%Y-%m-%d-%H%M%S)"
LOG_DIR="/var/log/ets2-maintenance"
LOG_FILE="$LOG_DIR/steamcmd-$(date +%Y-%m-%d-%H%M%S).log"
mkdir -p "$BACKUP_DIR" "$LOG_DIR"
systemctl stop ets2.service
cp "$INSTALL_DIR/server_config.sii" "$INSTALL_DIR/server_packages.sii" "$INSTALL_DIR/server_packages.dat" "$BACKUP_DIR/"
steamcmd +force_install_dir "$INSTALL_DIR" +login anonymous +app_update 1948160 +quit 2>&1 | tee "$LOG_FILE"
STATUS=${PIPESTATUS[0]}
if [ "$STATUS" -ne 0 ]; then
echo "SteamCMD failed with exit code $STATUS; leaving service stopped."
exit "$STATUS"
fi
systemctl start ets2.service
systemctl --no-pager --full status ets2.service
Make the file executable, test it interactively, and inspect the output before adding it to a scheduler. For ATS, use an ATS directory and app ID. If your server is not a systemd service, replace the stop and start lines with the commands used by your launch script.
Schedule with cron or a systemd timer
A cron entry such as the following runs a script every day at 05:15:
15 5 * * * /usr/local/sbin/update-ets2.sh
Use a wrapper such as flock when available so a slow download cannot overlap the next run:
Recommended Free Tools
15 5 * * * /usr/bin/flock -n /run/ets2-update.lock /usr/local/sbin/update-ets2.sh
A systemd timer is preferable when you want dependency ordering, persistent timers after downtime, and journal logging. Create a service that runs the update script and a timer with a daily OnCalendar value, then enable the timer. Whichever scheduler you choose, configure failure notifications or inspect its status regularly; a scheduler that silently fails is not automatic maintenance.
Rank #4
- 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
- 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
- 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
- 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
- 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
Protect configuration, tokens, and exported packages
server_config.sii
This file contains the server settings, including the server logon token. Back it up before every maintenance run and verify that the token is still present after the update. If the token changes or disappears, players may be unable to authenticate even though the binaries updated correctly.
server_packages.sii and server_packages.dat
These files describe the DLC and mod content exported for the dedicated session. They are not a substitute for installing compatible content on the server and clients. Keep copies during maintenance, then regenerate them whenever the game version, DLC selection, or mod set changes.
Run the game’s export_server_packages command from the game installation used to prepare the server package list. Copy the refreshed server_packages.sii and server_packages.dat into the dedicated-server directory before restarting. If you update the server binaries but continue using package metadata from an older mod set, the server can reject content or fail during startup.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Do not overwrite local settings accidentally
SteamCMD normally updates depot files, but maintenance scripts, migrations, or manual file copies can replace local configuration. Back up first, compare the resulting files, and restore only the settings that belong to your installation. Do not blindly restore an old package file after changing the mod list; regenerate it instead.
A safe update sequence
- Announce maintenance and stop accepting new players.
- Stop the dedicated-server process cleanly and wait for it to exit.
- Back up
server_config.sii,server_packages.sii, andserver_packages.dat; retain the token. - Run SteamCMD with the correct app ID and
+force_install_dir. - Capture SteamCMD’s exit status and output. Confirm that the requested application was fully installed or updated in the intended directory.
- Restore preserved configuration only if an installer or maintenance step changed it.
- Run
export_server_packagesand copy the refreshed package files when the game, DLC, or mod set changed. - Start the server and inspect its log for the reported game version, token, ports, and startup errors.
- Reconnect with a client on the matching game build and test the affected mods.
- Notify players that the server is available only after the checks pass.
If a new build is incompatible with a required mod, do not reopen the server merely because SteamCMD finished. Keep the service stopped while you update or remove the incompatible mod, or restore your known-good server copy according to your recovery plan. Server, client, and mod versions must agree before normal play resumes.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.How to verify that an update really happened
Check the directory, not just the command result
Compare the path in the update job with the path in the running service. On Linux, inspect the systemd unit or launch script; on Windows, inspect the service executable path or scheduled launch action. A successful SteamCMD session in the wrong directory is still the wrong update.
Best Value
- 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
- 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
- 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
- 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
- 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.
Check the SteamCMD exit status and log
Record the exit code and retain the output. A non-zero exit code should prevent the server from starting automatically. Look for the requested app ID, depot download activity, and the final installation status. Do not hard-code a build number in a health check because available builds change.
Check the dedicated-server log
After startup, read the server log and confirm that its reported game version matches the clients you intend to admit. Also verify that the logon token was loaded, the expected ports opened, and no package or mod errors appeared. A process that starts and immediately exits is not a successful update.
Perform a client connection test
Use a client on the same game branch and version, then join and load the relevant session content. Test a modded profile separately from an unmodded one when both are supported. This catches package-export and compatibility problems that a simple process-status check cannot detect.
Troubleshooting common failures
| Symptom | Likely cause | Fix |
|---|---|---|
| The command succeeds, but the server remains on the old version. | +force_install_dir points to a different folder from the live server. |
Inspect the launch service or script and make both paths identical. Stop the server before retesting. |
| SteamCMD updates the wrong game. | The app ID is incorrect. | Use 1948160 for ETS2 or 2239530 for ATS, and keep separate directories for separate servers. |
| The scheduler reports success but no files change. | The job runs under an account without access, or SteamCMD is not the executable being called. | Use absolute paths, run the task manually under the scheduler account, and inspect the captured log and exit code. |
| The server starts with missing DLC or mod errors. | Exported package files are stale or incompatible with the new build. | Run export_server_packages again, copy both package files, and update or remove incompatible mods. |
| Players cannot authenticate after maintenance. | The server logon token was overwritten or lost. | Restore the backed-up token in server_config.sii, then restart and verify the token-loading message. |
| The service will not restart after an interrupted update. | SteamCMD failed, a file is locked, or the process was not stopped cleanly. | Leave the server offline, read the SteamCMD log, confirm no old process remains, and rerun after resolving permissions or network errors. |
| Clients are rejected immediately after the update. | Client and server builds do not match. | Check the version reported by the server log and have clients update to the same branch and build before reconnecting. |
| Two updates run at once. | The scheduler allows overlapping instances. | Enable “do not start a new instance” in Task Scheduler or use a lock such as flock on Linux. |
Self-hosting versus managed hosting
A dedicated server can run on a rented or paid-for server, so managed hosting is a legitimate alternative to maintaining SteamCMD yourself. The choice is mainly about control and responsibility, not a different update mechanism: the provider still has to run the correct SteamCMD update against the live directory.
| Consideration | Self-hosted machine or VPS | Managed game hosting |
|---|---|---|
| Operating-system access | Full access; you install SteamCMD, services, backups, and monitoring. | Access varies by provider; some expose a control panel instead of a shell. |
| Scheduler and update control | You choose cron, systemd timers, or Task Scheduler and can inspect every log. | The provider may offer automatic updates, a restart window, or only manual controls. |
| Backup responsibility | You must schedule, retain, and test backups. | Backups may be included, limited, or sold separately; verify retention and restore access. |
| Restart automation | You define clean stop, update, health check, and restart behavior. | Restart and recovery may be built in, but implementation and failure notifications differ. |
| Geographic latency | You select the machine location and network route. | You select from the provider’s available regions. |
| Support | You diagnose SteamCMD, mods, ports, and operating-system issues yourself. | Support may handle host infrastructure, while mod and configuration issues remain yours. |
| Recurring cost | Depends on your existing hardware, bandwidth, electricity, or server rental. | Normally a recurring hosting charge; compare it with the administration time you avoid. |
Choose self-hosting when you need unrestricted operating-system access and are comfortable maintaining backups and schedulers. Choose managed hosting when predictable administration and provider support matter more than low-level control. In either case, verify that the service exposes the real server directory, preserves configuration files, and provides a way to confirm the installed build.
Operational checklist
- Correct app ID selected: ETS2
1948160or ATS2239530. +force_install_dirmatches the directory used by the live server.- Server stops cleanly before SteamCMD runs.
server_config.sii,server_packages.sii, andserver_packages.datare backed up.- Server logon token is preserved.
- Package files are re-exported after game, DLC, or mod changes.
- Scheduler prevents overlapping jobs and retains logs.
- SteamCMD exit status is checked before restart.
- Server log reports the expected version, token, ports, and package status.
- A client on the matching build can connect before players are notified.
Why scheduling is worth doing
SCS describes a dedicated server’s major advantage as remaining available even when no players are online, unlike a convoy that depends on its host. That availability is useful only when maintenance is predictable. A small, logged job that updates during a quiet window, protects configuration, and refuses to restart after failure is safer than manually running app_update whenever players report a version mismatch.
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.

