Cho phép đăng nhập vào dịch vụ


13

Tôi đang cố gắng tìm ra cách để đăng nhập chuyển đổi.

Tôi biết tôi có thể chạy daemon ở phía trước:

transmission-daemon -f --logfile /your/path/to/transmission.log

Nhưng đây không phải là điều tôi muốn. Tôi muốn kích hoạt tùy chọn này ( logfile) trong ví dụ dịch vụ.

Cho đến nay tôi đã phát hiện ra rằng chạy sudo service transmission-daemonthực thi các tập tin nằm trong /etc/init.d/transmission-daemon. Tập tin này (như được hiển thị bên dưới) không thực sự làm tôi khôn ngoan hơn.

Cho đến nay tôi hiểu như sau:

--exec $DAEMON -- $OPTIONS thực thi daemon hiệu quả. Tập tin này (như được thấy trong biến trên đầu tập lệnh) được đặt trong /usr/bin/$NAME. $NAMEtransmission-daemon. Đây là một thực thi nằm ở đó.

Vì vậy, tôi nghĩ rằng bạn có thể vượt qua nó cùng với một số tùy chọn (ví dụ --logfile). Vì vậy, tôi đã thêm một khởi tạo của OPTIONSbiến nhưng điều này dường như không viết gì cả.

Tôi đã thử OPTIONS=" --logfile /smb/torrents/transmission.log"dòng để nó có thể nối chúng vào thực thi nhưng nó lại báo lỗi.

Một điều khác tôi đã thử là sử dụng tùy chọn mà không có bất kỳ trích dẫn nào.

OPTIONS= -e /smb/torrents/transmission.log

Điều này ném cho tôi cùng một lỗi:

: ~ $ sudo dịch vụ truyền-daemon khởi động lại /etc/init.d/transmission-daemon: 15: /etc/init.d/transmission-daemon: -e /smb/torrents/transmission.log: không tìm thấy

Làm như trên mà -không cho tôi thấy bất kỳ lỗi nào, nhưng cũng không ghi vào tệp nhật ký ..

Thêm --logfiletùy chọn sau khi thực hiện cũng gây --exec $DAEMON --logfile /path/file -- $OPTIONSra một lỗi khác:

* Restarting bittorrent daemon transmission-daemon
start-stop-daemon: unrecognized option '--logfile'

Logfile có đủ quyền, mặc dù:

-rwxrwxrwx  1 debian-transmission debian-transmission    0 Dec 30 11:14 transmission.log*

Vì vậy, câu hỏi của tôi là, làm thế nào để làm điều này chính xác?

#!/bin/sh -e
### BEGIN INIT INFO
# Provides:          transmission-daemon
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start or stop the transmission-daemon.
### END INIT INFO

NAME=transmission-daemon
DAEMON=/usr/bin/$NAME
USER=debian-transmission
STOP_TIMEOUT=30
OPTIONS=" --logfile /smb/torrents/transmission.log"

export PATH="${PATH:+$PATH:}/sbin"

[ -x $DAEMON ] || exit 0

[ -e /etc/default/$NAME ] && . /etc/default/$NAME

. /lib/lsb/init-functions

start_daemon () {
    if [ $ENABLE_DAEMON != 1 ]; then
        log_progress_msg "(disabled, see /etc/default/${NAME})"
    else    
        start-stop-daemon --start \
        --chuid $USER \
        $START_STOP_OPTIONS \
        --exec $DAEMON -- $OPTIONS
    fi
}

case "$1" in
    start)
        log_daemon_msg "Starting bittorrent daemon" "$NAME"
        start_daemon
        log_end_msg 0
        ;;
    stop)
        log_daemon_msg "Stopping bittorrent daemon" "$NAME"
        start-stop-daemon --stop --quiet \
            --exec $DAEMON --retry $STOP_TIMEOUT \
            --oknodo
        log_end_msg 0
        ;;
    reload)
        log_daemon_msg "Reloading bittorrent daemon" "$NAME"
        start-stop-daemon --stop --quiet \
            --exec $DAEMON \
            --oknodo --signal 1
        log_end_msg 0
        ;;
    restart|force-reload)
        log_daemon_msg "Restarting bittorrent daemon" "$NAME"
        start-stop-daemon --stop --quiet \
            --exec $DAEMON --retry $STOP_TIMEOUT \
            --oknodo
        start_daemon
        log_end_msg 0
        ;;
    status)
        status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
        ;;
    *)
        echo "Usage: /etc/init.d/$NAME {start|stop|reload|force-reload|restart|status}"
        exit 2
        ;;
esac

exit 0

Câu trả lời:


16

Tôi đã sửa nó trong khi đó. Có một tập tin /etc/default/được đặt tên transmission-daemonlà tốt (xem bên dưới). Tập tin này có một khởi tạo cho OPTIONStham số. Tôi chỉ cần thêm --logfile /path/to/logfilevà nó hoạt động tốt!

# defaults for transmission-daemon
# sourced by /etc/init.d/transmission-daemon

# Change to 0 to disable daemon
ENABLE_DAEMON=1

# This directory stores some runtime information, like torrent files
# and links to the config file, which itself can be found in
# /etc/transmission-daemon/settings.json
CONFIG_DIR="/var/lib/transmission-daemon/info"

# Default options for daemon, see transmission-daemon(1) for more options
OPTIONS="--config-dir $CONFIG_DIR --logfile /path/transmission.log"

# (optional) extra options to start-stop-daemon
#START_STOP_OPTIONS="--iosched idle --nicelevel 10"
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.