আমি কীভাবে এই ডেমন / আরআইভিটিকে একটি নন রুট ব্যবহারকারী হিসাবে চালাতে পারি?


19

ডিমন বন্ধ করার জন্য আমার কাছে একটি স্ক্রিপ্ট রয়েছে। সমস্যাটি এটি মূল হিসাবে চলে as আমি এটি "স্থাপনা" নামে পরিচিত একজন ব্যবহারকারী হিসাবে চালানো চাই। উবুন্টু 12.04

#! /bin/sh

# File: /etc/init.d/unicorn

### BEGIN INIT INFO
# Provides:          unicorn
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the unicorn web server
# Description:       starts unicorn
### END INIT INFO

DAEMON=/usr/local/bin/unicorn_rails
DAEMON_OPTS="-c /var/www/current/config/unicorn.rb -D"
NAME=unicorn
DESC="Unicorn"
PID=/var/www/current/shared/pid/unicorn.pid

case "$1" in
  start)
    echo -n "Starting $DESC: "
    $DAEMON $DAEMON_OPTS
    echo "$NAME."
    ;;
  *)
    echo "Usage: $NAME {start|stop|restart|reload}" >&2
    exit 1
    ;;
esac

exit 0

2
পরিবর্তন $DAEMON $DAEMON_OPTSকরুনsu - deploy -c "$DAEMON $DAEMON_OPTS"
ডেইজি

আপনি পরীক্ষা করার সময় "পরিষেবা" কমান্ডটি ব্যবহার করে ডিমন চালু না করার বিষয়ে সতর্ক হন যেহেতু চুইড বিকল্পের কোনও প্রভাব থাকবে না এবং প্রক্রিয়াটি মূল হিসাবে চালিত হবে।
pasqal

কার্নেলটি ইতিমধ্যে সিস্টেমের ব্যবহারকারীদের জানার পরে কি init.d- এ থাকা সমস্ত স্ক্রিপ্টগুলি বলা হয় ?
আরশ

উত্তর:


18

start-stop-daemonআপনার ডেমনটি শুরু করতে ইউটিলিটিটি ব্যবহার করুন । -c(বা --chuid) বিকল্পটি অন্য কোনও ব্যবহারকারী হিসাবে চালানোর জন্য পাস করুন । আপনি কিছু উদাহরণ পাবেন /etc/init.d/*

case $1 in
  start)
    echo -n "Starting $DESC: "
    start-stop-daemon --start --chuid deploy --pidfile "$PID" --start --exec "$DAEMON" -- $DAEMON_OPTS
    echo "$NAME."
    ;;
…

কার্নেলের পরে সমস্ত init.d স্ক্রিপ্টগুলি কি ইতিমধ্যে সিস্টেমে সমস্ত ব্যবহারকারীদের জানেন?
আরশ

আপনি কি জিজ্ঞাসা করছেন তা আমি নিশ্চিত নই কার্নেলটি ব্যবহারকারীদের সত্যই "জানে" না: যতক্ষণ না এটি সম্পর্কিত একটি ব্যবহারকারী কেবল একটি সংখ্যা, এবং এটি ব্যবহারকারীর 0 হিসাবে চলমান প্রক্রিয়াগুলি ছাড়া অন্যান্য সংখ্যা যেগুলি করতে পারে না এমন অনেক কিছুই করতে পারে তা বাদ দিয়ে সংখ্যাটি কী তা বিবেচ্য নয় doesn't ।
গিলস

-1

উবুন্টুতে আপনি ঠিক ব্যবহার করতে পারেন

sudo -u deploy $DAEMON $DAEMON_OPTS


Su বা --chuid বিদ্যমান থাকলে sudo যুক্ত করবেন কেন? সুডো ইনস্টল না হলে কী হবে?
জেফ শ্যাচলার

2
@ জেফশালার সুডো উবুন্টুতে ইনস্টল করা হয়েছে
Коптев
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.