---
title: stop
---

# stop

Stop running services.

```sh
$ sysg stop
```

## Options

| Short | Long | Description |
|-------|------|-------------|
| `-c` | `--config` | Path to the configuration file. Used when no supervisor is running to locate services. When a supervisor is running, it uses the supervisor's configuration |
| `-s` | `--service` | Name of a specific service to stop. If not specified, all services are stopped |
| `-p` | `--project` | Target a stable project id when stopping services |
| `-` | `--sys` | Opt into privileged system mode. Requires running as root |
| `-` | `--log-level` | Set logging verbosity for this invocation. Accepts named levels (`trace`, `debug`, `info`, `warn`, `error`, `off`) or numeric values (5-0) |

## Examples

### Stop all services

```sh
$ sysg stop
```

### Stop a specific service

```sh
$ sysg stop --service api
```

Leaves other services running.

For multi-project supervisors, combine project and service selectors:

```sh
$ sysg stop --project arbitration --service api
```

## What happens

1. Services stop in reverse dependency order
2. Each service receives `SIGTERM`
3. After 10 seconds, `SIGKILL` is sent if needed
4. The supervisor exits (unless other services are running)

When stopping a single service, its dependents keep running. Only crashes trigger cascading stops.

## See also

- [`start`](/how-it-works/commands/start) - Launch services
- [`restart`](/how-it-works/commands/restart) - Restart services
