Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides 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

For a production Rails application supervised by systemd, restart Puma—not a separate foreground Rails process. SSH to the VPS and run sudo systemctl restart puma.service, then verify it with sudo systemctl status puma.service. Your deployment may use an application-specific unit such as myapp-puma.service; use the exact unit name configured on the server. If the unit file changed, run sudo systemctl daemon-reload before restarting.

First identify how Rails is running

“Rails server” can mean two different things on a Linux VPS. A production deployment normally runs Puma as a supervised service, commonly under systemd. A development or temporary deployment may have been started directly with bin/rails server in a shell. The correct restart action depends on which process owns the application.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Production Puma managed by systemd

If the application starts automatically after boot, is managed by a service manager, or has a unit file under /etc/systemd/system/, restart the service. Stopping and starting an unrelated shell process will not replace the process serving public traffic.

A foreground Rails process

If someone started the application from the Rails directory with bin/rails server and left it attached to a terminal, stop that process with Ctrl-C and start it again from the application directory. The Rails command line runs in the application context, so running the command from an unrelated directory can select the wrong application or fail to load its configuration.

#1 Best Overall
Sale
Compressed Air Duster,130000RPM Super Power Cordless Air Duster,Rechargeable Brushless Blower,3 Gear Adjustable Blower with LED Light,Dust Remover for Computer/House/Outdoor/Car
  • 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.

Restart Puma with systemd

Use this sequence when Puma is the systemd-managed service:

  1. Connect to the VPS over SSH with an account that can manage the service.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
    ssh user@your-server
  2. Identify the configured unit name if you do not already know it.

    systemctl list-units --type=service | grep -i puma

    The result may be puma.service, myapp-puma.service, or another deployment-specific name. Copy that exact name, including any application prefix.

  3. Change to the application directory when you need to inspect deployment files, environment configuration, or application logs. The directory itself is not required for the systemd command if the unit already contains a WorkingDirectory.

  4. If the systemd unit was edited, ask systemd to reread unit files.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
    sudo systemctl daemon-reload

    This is required after changing a unit definition; it does not replace the restart.

    Rank #2
    EVEO® Screen Cleaner Spray Kit (Streak-Free) TV Screen Cleaner for Smart TV, Lcd, LEd, Oled | Computer Screen Cleaner Spray and Wipe Microfiber Cloth - TV, Monitor, Laptop, iPad, Car - 6.7oz 1 Pack
    • 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
  5. Restart the configured unit.

    sudo systemctl restart puma.service

    Substitute your real unit name, for example:

    sudo systemctl restart myapp-puma.service
  6. Immediately check the service state.

    sudo systemctl status puma.service

    A successful command only means systemd accepted the restart request. The status check tells you whether the replacement Puma process remains active or exited during initialization.

How to find the right systemd unit

Do not assume that every server uses the generic name puma.service. Deployment tools and multi-application VPSs often give each application its own unit. Start with the service list:

systemctl list-units --type=service | grep -i puma

If the service is not currently active, it may not appear in the default list. Inspect the deployment’s service definition and the files in /etc/systemd/system/ or the system-wide unit locations used by the distribution. The unit’s ExecStart line identifies the Puma executable, and WorkingDirectory identifies the application directory. An official Puma systemd example uses an absolute Puma executable path, an application WorkingDirectory, and Restart=always; these settings explain which application and process systemd will operate.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Once you find the unit, use that exact identifier for every command:

sudo systemctl daemon-reload
sudo systemctl restart <unit>.service
sudo systemctl status <unit>.service

Replace <unit> with the real name. Do not type the angle brackets literally.

Why daemon-reload is sometimes necessary

Systemd keeps a loaded representation of each unit. Editing a service file on disk does not automatically make the running system manager reread it. Run:

sudo systemctl daemon-reload

whenever you change the unit’s command, working directory, environment references, restart policy, dependencies, or another unit setting. Then restart the service. If you changed only application code while leaving the unit unchanged, a daemon reload is not needed; restart Puma directly.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
BladeHawks RGB Gaming Mouse Pad Extra Large Extended 31.5x12 Inch-Black | LED mouse pad with 14 lighting modes, covers keyboard & mouse, anti-slip rubber base, waterproof surface, USB powered
  • 【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.

A daemon reload does not restart Puma and does not prove that the unit is valid. It only makes the manager reread definitions. The following restart and status commands are still required.

Verify the process and investigate failures

Read the service status

Run status immediately after the restart:

sudo systemctl status <unit>.service

Look for an active/running state and the most recent process messages. If the unit is inactive, failed, or repeatedly restarting, do not keep issuing restart commands without reading the error.

Read the boot’s journal entries

Use the systemd journal for the current boot:

sudo journalctl -u <unit>.service -b

This commonly reveals a bad executable path, an invalid option, a missing environment value, a permission problem, an application boot exception, or a listener-binding failure. Correct the reported cause, then retry the restart and status check.

Check the Rails application log

Systemd output and Rails application output may be separate. Inspect the application log location configured by your deployment after checking the unit and journal. A Puma process can be running while the application is still failing during boot, so a green service state is not a substitute for an application-level check.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Test the public endpoint last

Only after systemd reports a healthy service should you test the site’s public URL or an internal health endpoint. If the URL still fails, distinguish an application boot problem from a reverse-proxy, DNS, TLS, or network issue rather than repeatedly restarting Puma.

Restarting a foreground Rails server

A process launched directly with Rails is not controlled by the Puma systemd unit unless you deliberately wired it into that unit. In the terminal where it is running:

  1. Press Ctrl-C and wait for the process to exit.
  2. Change to the Rails application’s directory.
  3. Start the server again with the command used by that deployment, typically bin/rails server.
  4. Keep the terminal attached or arrange an appropriate supervisor before treating the process as production service.

If the original terminal is gone, identify the process using the server’s process-management method and terminate that process through the method already used on the VPS. Do not kill an arbitrary Ruby process: a host may run several Rails applications, background jobs, or administrative commands.

Rank #4
Sale
Vaydeer Wrist Rest for Keyboard and Mouse, Computer Ergonomic Wrist Support Pad, Soft Memory Foam Arm Cushion for Desk, Palm Hand Office Laptop Typing
  • 【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.

Restart methods and interruption behavior

A systemd restart and Puma’s built-in restart mechanisms do not have identical connection behavior. Choose based on whether a brief listener interruption is acceptable, whether Puma runs in cluster mode, and whether old and new application versions can safely coexist.

Method How it behaves Important conditions
Normal systemd restart Stops and replaces the service process. Listener sockets close while the replacement Puma process initializes unless socket activation is being used. Simple and appropriate for many deployments, but a short interruption is possible.
Puma hot restart (SIGUSR2) Starts a replacement process while keeping the server socket open, so requests are not deliberately discarded during the handoff. New code still has to load successfully; requests can wait while initialization occurs.
Puma phased restart (SIGUSR1) Replaces workers one at a time in cluster mode, allowing old workers to serve while new workers start. Old and new application versions must coexist safely, especially across database changes.
Status-server /restart request Uses Puma’s status server to request a restart through its configured endpoint. The status server must be enabled and protected; the endpoint and access controls are deployment-specific.
Systemd socket activation Keeps the listening socket managed by systemd while Puma is replaced, reducing listener interruption during a service restart. It must be configured in advance and is not currently available on JRuby according to Puma’s documentation.

Normal systemd restart

sudo systemctl restart is the most predictable operational action when systemd owns Puma. It closes the service process and starts it again according to the unit definition. Without socket activation, the listener can be unavailable while Puma initializes. Plan this for a maintenance window when even a short interruption is unacceptable.

Hot restart

Puma describes a hot restart as keeping the server socket open between restarts so requests are not lost solely because the process is being replaced. It can still take time for the new code to boot, and a request may wait during that initialization. Treat it as reduced interruption, not a guarantee that every request completes instantly.

Phased restart

A phased restart replaces workers individually in cluster mode. It can avoid hanging requests because other workers continue serving while each replacement starts. The trade-off is deployment compatibility: both the old and new code may run at the same time. Database migrations and schema changes must therefore be backward-compatible with both versions until the old workers are gone.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Status-server restart

Puma also documents requesting a restart through its /restart status-server endpoint. Use this only when the status server is intentionally enabled and access is restricted. An exposed administrative endpoint can become an operational and security risk, so its address, authentication, and network reachability must match the deployment’s configuration.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Planning a restart with no avoidable downtime

“Without downtime” depends on the complete serving path, not only on the command used to replace Puma. Before a production deployment, check the following:

  • Supervision: Confirm which systemd unit or Puma control mechanism owns the live process.
  • Cluster mode: A phased restart requires Puma cluster mode; it is not a property of every single-process deployment.
  • Socket handling: Determine whether systemd socket activation is configured. A normal restart without it can briefly close the listener.
  • Boot time: Ensure the new process can load configuration, dependencies, and application code promptly.
  • Database compatibility: During a phased restart, old and new workers can overlap. Deploy schema changes in steps that both versions understand.
  • Rollback: Know which unit definition, application release, and environment values you would restore if the new process fails.
  • Observability: Keep the service status, journal, application log, and a health check available while the restart runs.

A phased or hot restart reduces a particular class of interruption; it does not repair a broken release. If the new application cannot boot, the supervisor may repeatedly replace a failing process while the endpoint remains unhealthy.

Best Value
Sale
Under Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
  • 【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.

Troubleshooting common restart problems

“Unit not found”

The name is probably different from the one you typed, or the service is not installed as a systemd unit. Search for Puma units, inspect the deployment definition, and rerun the command with the exact identifier. Do not create a second unit merely to make the generic command work; that can leave two processes competing for the same listener.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The service becomes inactive immediately

Read both status output and the current-boot journal. An incorrect ExecStart path, missing executable, wrong WorkingDirectory, unavailable environment value, or application exception can make Puma exit during startup. Fix the reported configuration or application problem before restarting again.

Permission denied

Use an account authorized to manage the service, commonly through sudo. Also check permissions for the executable, application directory, log destinations, sockets, and any files read during boot. Changing ownership blindly can create a different deployment problem; use the service definition and journal message to identify the specific path.

Address or socket already in use

A second Rails or Puma process may still own the listener, or the unit may be configured for a binding already used by another service. Identify which process the deployment intends to supervise, stop the duplicate through its own supervisor, and then restart the correct unit. Avoid terminating unrelated services on a shared VPS.

The service is running but requests fail

Compare the unit’s configured working directory, executable, environment, and binding with the release you meant to deploy. Then inspect the Rails log and the reverse-proxy path. A running Puma process can still serve an application that failed to load the expected code or configuration.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A phased restart exposes migration errors

This indicates that old and new workers are not compatible with the database state during overlap. Pause the rollout, restore a compatible application/database combination, and redesign the migration as backward-compatible steps before attempting another phased restart.

Command reference

Purpose Command
Find Puma services systemctl list-units --type=service | grep -i puma
Reload changed unit files sudo systemctl daemon-reload
Restart the generic unit sudo systemctl restart puma.service
Restart an application-specific unit sudo systemctl restart myapp-puma.service
Check service state sudo systemctl status <unit>.service
Read current-boot service logs sudo journalctl -u <unit>.service -b
Start a foreground Rails server bin/rails server

Recommended decision path

  1. Live production app under systemd: discover the exact Puma unit, run daemon-reload only if the unit changed, restart it, and check status and logs.
  2. Foreground process: stop it with Ctrl-C, return to the Rails application directory, and run the deployment’s Rails server command again.
  3. Brief interruption acceptable: use the normal systemd restart.
  4. Interruption must be minimized: use a configured Puma hot or phased restart, or systemd socket activation, while meeting their respective compatibility requirements.
  5. Restart failed: stop retrying, read systemctl status and journalctl, correct the reported cause, and then verify the public endpoint.

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.