GNU/Linux >> Belajar Linux >  >> Linux

Mengonfigurasi Layanan Systemd untuk dijalankan dengan akses root

Solusi 1:

beri tahu systemd untuk menjalankan layanan dengan sudo ?

sudo tidak ada hubungannya dengan itu.

Biasanya Anda menginstruksikan systemd untuk menjalankan layanan sebagai pengguna/grup tertentu dengan User= dan Group= direktif dalam [Service] bagian dari file unit.

Setel itu ke root (atau hapus, karena menjalankan sebagai root adalah default).

Solusi 2:

Untuk menghapus, systemd layanan sistem dijalankan sebagai root secara default, tetapi masih ada perbedaan antara perilaku default dan menjalankan layanan sistem dengan User=root .

Seperti yang didokumentasikan dalam variabel Lingkungan dalam proses pemijahan, variabel ini hanya disetel jika User= diatur:

$USER, $LOGNAME, $HOME, $SHELL

Saya diuji untuk mengkonfirmasi temuan ini. Jadi jika Anda ingin menjalankan layanan systemd sebagai root yang membutuhkan salah satu variabel di atas, Anda perlu mengatur User=root .

Solusi 3:

solusi sementara, tetapi berhasil dalam keadaan darurat:

/usr/bin/sudo /bin/bash -lc 'bundle exec rails server -e demo -p 80'

Dapat berjalan dengan pengguna yang memiliki hak istimewa sudo di file unit systemd seperti:

[Unit]
Description=Rails Webserver
After=syslog.target

[Service]
Type=simple
User=ubuntu
WorkingDirectory=/var/www/webserver
ExecStart=/usr/bin/sudo /bin/bash -lc 'bundle exec rails server -e demo -p 80'
Restart=always
KillSignal=SIGQUIT

[Install]
WantedBy=multi-user.target

Linux
  1. Menghentikan Unit Systemd Bersama Dengan Yang Lain. Memulai Pekerjaan?

  2. Tanpa akses root, jalankan R dengan BLAS yang disetel saat ditautkan dengan referensi BLAS

  3. Bagaimana cara menjalankan skrip sebelum yang lainnya dimatikan dengan systemd?

  1. Linux – Bagaimana Mendapatkan Lebih Sedikit Ttys Dengan Systemd?

  2. Bagaimana cara menjalankan skrip dengan systemd tepat sebelum dimatikan?

  3. Bagaimana cara mendapatkan lebih sedikit tty dengan Systemd?

  1. Bagaimana Cara Menjalankan Perintah Yang Melibatkan Pengalihan Atau Perpipaan Dengan Sudo?

  2. Linux – Jalankan Script Setiap 30 Menit Dengan Systemd?

  3. Jalankan Layanan Systemd Setelah Automount Tapi Setelah Diakses?