Jalankan sebagai pengguna yang berbeda


9

Pada sistem RedHat, saya mencoba meluncurkan program dengan pengguna lain yang tidak memiliki shell. Di / etc / passwd, shell adalah / sbin / nologin.

Saya telah mencoba:

  1. su myuser -c /home/myuser/script.sh Hasil: Akun ini saat ini tidak tersedia.

  2. Dengan chown dan setuid: chown myuser: mygroup /home/myuser/script.sh chmod + s /home/myuser/script.sh /home/myuser/script.sh Hasil: script.sh masih dieksekusi sebagai pengguna masuk saya ( akar).


Apakah Anda menjalankan suroot sebagai atau pengguna yang tidak terjangkau?
James O'Gorman

Jawaban:


17

mencoba:

su myuser -s /bin/sh -c /home/myuser/script.sh

0

kesalahan ini berarti bahwa di / etc / passwd Anda telah menetapkan shell / sbin / nologin atau / sbin / false untuk pengguna pengguna.

Silakan atur sesuatu yang bermanfaat seperti / bin / bash


Itulah yang telah diposting oleh OP; OP bertanya apakah ada cara untuk menjalankan program meskipun nama pengguna tidak memiliki shell.
Bart Silverstrim

Ya ... sebenarnya pertanyaannya. Saya ingin tahu apakah mungkin untuk menjalankan skrip sebagai pengguna yang berbeda, tanpa menetapkan shell di / etc / passwd
Karl

1
Anda tidak dapat melakukannya menggunakan skrip jika pengguna memiliki shell seperti ini.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.