Saya sedang mengerjakan sistem berbasis debian dan saya masih belajar tentang systemctl vs layanan , tetapi saya mencoba menggunakan openvpn
konfigurasi saya sebagai use-case untuk bekerja melalui ini.
Dalam pengaturan saya saat ini, saya benar-benar bingung tentang bagaimana openvpn
memulai boot dan bagaimana mengelolanya.
Saat boot, ini adalah openvpn
proses yang telah dimulai:
> ps aux | ag 'openvpn'
nobody 952 0.0 0.0 5800 1108 ? Ss 13:29 0:00 /usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --config /etc/openvpn/server.conf
root 1537 0.0 0.1 6088 2544 ? Ss 13:30 0:00 /usr/sbin/openvpn --daemon --auth-nocache --config /root/.vpn_conf/pia.ovpn
Saya masih tidak tahu apa yang mengendalikan ini untuk mulai saat boot.
Proc pertama adalah server (yang ingin saya nonaktifkan), dan yang lainnya adalah klien yang ingin saya pertahankan dan terus gunakan.
Pemahaman saya adalah bahwa seseorang dapat menggunakan systemctl
untuk mendaftar semua layanan:
> systemctl list-unit-files --type=service | ag 'openvpn'
openvpn.service disabled
[email protected] disabled
Apa perbedaan antara keduanya? Apakah ini dua layanan yang mengendalikan proses di atas? Jika dinonaktifkan, mengapa masih dijalankan saat boot?
Jika saya mencoba dan menggunakan service
untuk mendapatkan status openvpn
, saya mendapatkan:
> service openvpn status
● openvpn.service - OpenVPN service
Loaded: loaded (/lib/systemd/system/openvpn.service; disabled)
Active: active (exited) since Sun 2017-02-19 13:29:51 PST; 18min ago
Process: 936 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 936 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/openvpn.service
Feb 19 13:29:51 systemd[1]: Started OpenVPN service
Yang mendorong saya untuk bertanya:
Jika ada dua entri dalam systemctl untuk openvpn, apa yang disebut kedua saat menggunakan service openvpn_2nd? status
?
Untuk jaga-jaga, ada /etc/init.d/openvpn
skrip.
Setiap wawasan tentang beberapa pertanyaan di atas akan sangat dihargai.
Jawaban:
OpenVPN bukan tempat terbaik untuk memulai jika seseorang sedang belajar systemd, karena OpenVPN bukan layanan yang sederhana.
OpenVPN adalah layanan templatized di bawah systemd. Unit layanan diberi nama , semua berasal dari file unit layanan tunggal bernama . Jadi, Anda memulai contoh Anda dengan
dan memilikinya mulai otomatis saat bootstrap dengan Jelas, Anda berhenti dan menonaktifkannya dengan perintah analog.openvpn@config.service
[email protected]
/etc/openvpn/server.conf
Ini bukan apa yang menjalankan klien OpenVPN Anda. Untuk menemukan unit layanan untuk itu, seseorang dapat menemukan nama unit dari nama grup kontrol, dengan menjalankan
Non-template
openvpn.service
dijelaskan dalam komentar di bagian atas file unit layanannya. Ini adalah hal lain yang, sekali lagi, menjadikan ini hal yang lebih kompleks untuk dipelajari sebagai pengalaman pertama pemula dalam systemd.Bacaan lebih lanjut
sumber