# Systemd Goals

Systemd unit dosyaları yazmanın detaylarına girmeyeceğiz. Ancak bir unit dosyasının kısa bir genel bakışını ve unit’leri manuel olarak nasıl kontrol edeceğimizi ele alacağız.

İşte temel bir service unit dosyası: **foobar.service**

```
[Unit]
Description=My Foobar
Before=bar.target

[Service]
ExecStart=/usr/bin/foobar

[Install]
WantedBy=multi-user.target
```

Bu basit bir service target’tır, dosyanın başında \[Unit] bölümü görürüz, bu bölüm unit dosyamıza bir açıklama vermemize ve unit’i ne zaman etkinleştireceğimizin sıralamasını kontrol etmemize izin verir. Bir sonraki kısım \[Service] bölümüdür, burada bir servisi başlatabilir, durdurabilir veya yeniden yükleyebiliriz. \[Install] bölümü ise dependency için kullanılır. Systemd dosyaları yazmanın bu sadece buzdağının görünen kısmıdır, daha fazla bilgi edinmek istiyorsanız konuyu okumanızı tavsiye ederim.

Şimdi, systemd unit’leriyle kullanabileceğiniz bazı komutlara bakalım:

**Unit’leri listele**

```bash
$ systemctl list-units
```

**Bir unit’in durumunu görüntüle**

```bash
$ systemctl status networking.service
```

**Bir servisi başlat**

```bash
$ sudo systemctl start networking.service
```

**Bir servisi durdur**

```bash
$ sudo systemctl stop networking.service
```

**Bir servisi yeniden başlat**

```bash
$ sudo systemctl restart networking.service
```

**Bir unit’i enable et**

```bash
$ sudo systemctl enable networking.service
```

**Bir unit’i disable et**

```bash
$ sudo systemctl disable networking.service
```

Yine, systemd’nin ne kadar derine indiğini henüz görmediniz, daha fazlasını öğrenmek istiyorsanız mutlaka okuyun.
