Dịch vụ mới bắt đầu không bao giờ bắt đầu hoặc dừng hoàn toàn


11

Tôi đang cố gắng tạo một kịch bản khởi động đơn giản cho máy chủ teamspeak, nhưng không thể làm cho nó hoạt động được.

Khi tôi nói initctl bắt đầu, nó chỉ thực thi nhưng không bao giờ kết thúc hoặc thậm chí không phát ra bất kỳ thông báo nào. Điều tương tự đang xảy ra để dừng lại .

Để chắc chắn rằng tôi không làm gì sai, tôi đã sao chép tập lệnh cron và cố gắng chạy nó, nhưng nó cũng xảy ra như vậy.

tôi làm gì sai ở đây?

CẬP NHẬT:

đây là kịch bản của tôi cho TS3:

# myservice - myservice job file
description "my service description"
author "Me <myself@i.com>"

# Stanzas
#
# Stanzas control when and how a process is started and stopped
# See a list of stanzas here: http://upstart.ubuntu.com/wiki/Stanzas#respawn

# When to start the service
start on runlevel [2345]

# When to stop the service
stop on runlevel [016]

# Automatically restart process if crashed
respawn

# Essentially lets upstart know the process will detach itself to the background
expect fork

# Start the process
script
       emit going into TS3 dir
       chdir /home/danizmax/teamspeak3-server_linux-x86/
       emit starting TS3
       exec su -c "/home/danizmax/teamspeak3-server_linux-x86/ts3server_startscript.sh start" danizmax &
       emit done
end script

Tôi đã thử ngay cả với kịch bản đơn giản nhất và điều đó cũng không hoạt động:

description     "regular background program processing daemon"

start on runlevel [2345]
stop on runlevel [!2345]

expect fork
respawn

exec echo example
console output

Cảm ơn sự giúp đỡ của bạn.


Bạn có thể muốn hiển thị công việc mới bắt đầu mà bạn đang cố gắng để chúng tôi có thể gỡ lỗi? Thật khó để biết tại sao nó bị treo mà không nhìn thấy nó.
slangasek

Tôi đã sao chép tập lệnh cron và cố gắng chạy nó và nó cũng xảy ra như vậy, chỉ dừng lại và không bao giờ quay lại trình bao
danizmax

Chúng tôi vẫn cần xem kịch bản mới nổi của bạn. Không có nó, chúng tôi không thể làm gì. Vui lòng gửi nó, hoặc cung cấp cho chúng tôi một liên kết đến nó.
hggdh

Không nhìn thấy tập lệnh, tất cả những gì tôi có thể làm là đoán: Tập lệnh của bạn có quan tâm rằng nó chạy bằng root bằng cách khởi động không? Root của PATH thì khác. Nếu tập lệnh của bạn muốn sử dụng một ứng dụng không có trong PATH gốc, bạn phải chỉ định đường dẫn đầy đủ. Có một prog trong kịch bản của bạn không trở lại?
ví von

Câu trả lời:


1

có một số điều kỳ lạ trong công việc mới nổi của bạn khiến tôi phải gãi đầu.

1) phát ra không phải là một chương trình mà tôi biết, vì vậy trừ khi bạn đã thêm nó vào đường dẫn hệ thống, điều đó có thể gây ra lỗi. Ý bạn là 'tiếng vang'? Điều đó cũng có thể không hữu ích, vì nó sẽ đi đến bảng điều khiển hệ thống có thể không nhìn thấy được.

2) Giả sử 'phát ra' khổ thơ hoạt động, bạn nói 'mong đợi ngã ba' nhưng sau đó thực sự ngã ba lần . Một lần cho 'tập lệnh', và một lần nữa khi tập lệnh teamspeak tự tạo nền.

3) bạn "su" để chạy tập lệnh, nhưng start-stop-daemon thực sự đơn giản hơn đối với hầu hết các trường hợp:

Với 11.10, bạn không cần phải thực hiện chdirtheo kịch bản, không chắc là đã được thêm sau bất kỳ phiên bản mới nào bạn có. Kiểm tra man 5 inittừchdir

start on runlevel [2345]
stop on runlevel [^2345]

respawn

chdir /home/danizmax/teamspeak-server
expect fork

exec start-stop-daemon --start --user danizmax --group danizmax --exec /home/danizmax/teamspeak3-server_linux-x86/ts3server_startscript.sh -- start

Ngoài ra, lỗi có thể sẽ được báo cáo trong / var / log / syslog. Bạn có thể tăng mức độ lỗi một chút bằng cách chạy

initctl log-priority info

man initctl để biết thêm mức độ đăng nhập.


Không phải OP, nhưng anh ta đang sử dụng (danimaz) su để thực thi máy chủ với tư cách là người dùng của mình, không trở thành root.
Javier Rivera

Hah doh, đã bỏ lỡ thanh cuộn ở phía dưới .. được căn chỉnh hoàn hảo để ẩn tên người dùng. :-P
SpamapS
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.