Làm thế nào để kích hoạt hoặc vô hiệu hóa dịch vụ?

Tôi đọc về cách bật và tắt dịch vụ trong windows và nó vẻ như là có khả năng khác nhau để quản lý chúng.

Phương pháp đầu tiên tôi tìm thấy là update-rc.d thêm dịch vụ mới để khởi động, nhằm mục đích trên /etc/init.d thư mục, và nội dung của nó.

Một người khác, tôi thấy là để sửa .conf các tập tin trong những /etc/init thư mục.

What ' s the đề nghị cách nào để tắt / / thêm dịch vụ và tại sao?

Bạn có thể xin vui lòng cho một ngắn chống đạn từng bước ví dụ về làm thế nào để thêm một vụ trong cài bật và tắt nó?

Có dịch vụ đó cho sử dụng GUI (giống như những startup ứng dụng) hoặc thiết bị đầu cuối.

Cho các thiết bị đầu Cuối bạn có nhiều lựa chọn. Đầu tiên, mở ra một thiết bị đầu cuối (Loại và một thiết bị đầu cuối và nước trong dash, ví dụ, và mở nó). Sau đó:

Tạm thời cho phép/dịch vụ vô hiệu hóa

Dừng lại và bắt đầu dịch vụ tạm (Không cho phép / vô hiệu hóa chúng cho tương lai khởi động), bạn có thể gõ service SERVICE_NAME [action]. Ví dụ::

  • sudo service apache2 stop Sẽ DỪNG lại dịch vụ Apache cho đến khi khởi Động hoặc cho đến khi bạn bắt đầu lại lần nữa.
  • sudo service apache2 start Sẽ Bắt ĐẦU dịch vụ Apache, giả sử đó là dừng lại trước.
  • service apache2 status Sẽ cho bạn biết tình TRẠNG của các dịch vụ, nếu nó là một trong hai kích hoạt/chạy của người tàn tật/KHÔNG chạy.
  • sudo service apache2 restart Sẽ KHỞI động dịch vụ. Này thông dụng nhất là khi bạn có thay đổi, một tập tin. Trong trường hợp này, nếu bạn thay đổi, hoặc là một cách lập cấu hình hoặc một cấu hình Apache. Có thể sẽ giúp bạn tiết kiệm phải dừng/bắt đầu với 2 dòng lệnh
  • service apache2 Trong trường hợp này, kể từ khi bạn đã không đề cập đến những HÀNH động để thực hiện các vụ, nó sẽ cho bạn tất cả các lựa chọn mà dịch vụ cụ thể. Này khía cạnh khác nhau tùy thuộc vào những dịch vụ, ví dụ như, với MySQL nó sẽ chỉ nói rằng nó là thiếu một số. Cho dịch vụ khác như vụ mạng nó sẽ đề cập đến nhỏ danh sách của tất cả các lựa chọn.

Lệnh

Bắt đầu với mọi 15.04, mới Nổi sẽ bị phản đối ủng hộ của Lệnh. Với Lệnh để quản lý những vụ chúng tôi có thể làm như sau (qua systemctl action SERVICE mô hình):

  • sudo systemctl start SERVICE Sử dụng nó để bắt đầu một dịch vụ. Không tồn tại sau khi khởi động lại
  • sudo systemctl stop SERVICE Sử dụng nó để ngăn chặn một vụ. Không tồn tại sau khi khởi động lại
  • sudo systemctl restart SERVICE Sử dụng nó để có thể có một vụ
  • sudo systemctl reload SERVICE Nếu các dịch vụ hỗ trợ nó, nó sẽ nạp lại các tập tin cấu liên quan đến nó mà không làm gián đoạn bất kỳ quá trình được sử dụng dịch vụ.
  • systemctl status SERVICE:, Cho thấy tình trạng của một dịch vụ. Cho dù một dịch vụ đang chạy.
  • sudo systemctl enable SERVICE Mà dịch vụ, trên khởi động lại tiếp theo hoặc ngày tiếp theo sự kiện bắt đầu. Nó vẫn tồn tại sau khi khởi động lại.
  • sudo systemctl disable SERVICE Biến các dịch vụ ra trên khởi động lại tiếp theo hoặc trên trạm dừng tiếp theo, sự kiện. Nó vẫn tồn tại sau khi khởi động lại.
  • systemctl is-enabled SERVICE Kiểm tra nếu một vụ hiện đang được cấu hình để bắt đầu hoặc không khởi động lại.
  • systemctl is-active SERVICE Kiểm tra nếu một vụ là hiện đang hoạt động.
  • systemctl show SERVICE Tất cả các thông tin về vụ.
  • sudo systemctl mask SERVICE: Vô hiệu hóa hoàn toàn một vụ liên kết nó đến /dev/null bạn không thể bắt đầu dịch vụ tay hoặc cho phép các dịch vụ.
  • sudo systemctl unmask SERVICE: Loại bỏ các liên kết đến /dev/null và khôi phục khả năng để kích hoạt và hoặc tay bắt đầu dịch vụ.

Mới Nổi (Phản Đối Từ 15.04)

Nếu chúng ta muốn sử dụng chính thức mới Nổi cách (lưu Ý rằng, ngay lúc này, không phải tất cả dịch vụ đã chuyển đổi để mới Nổi), chúng ta có thể sử dụng các lệnh sau:

status SERVICE - Điều này sẽ cho chúng tôi biết nếu một dịch vụ chuyển đổi đang chạy hay không. Lưu ý rằng đây là một người ủng hộ start, stop, status và; restart. Nó cũng sẽ cho chúng tôi biết nếu một vụ chưa được chuyển đổi để mới nổi:

Một dịch vụ chuyển đổi thường sẽ ra tình trạng hiện tại (Bắt đầu, Chạy, Dừng lại...) và quá trình thẻ ID. Không chuyển thành dịch vụ sẽ cho một lỗi về một không rõ công việc.

Một số tắt chỉ có thể làm việc với những service lệnh trên, nhưng không phải với các lệnh dưới đây, trừ khi họ được 100% chuyển đổi để mới nổi dịch vụ:

  • sudo start mysql Bắt đầu
  • sudo stop mysql: Dừng lại
  • sudo restart mysql Khởi động
  • sudo status smbd: Tình trạng

Cho phép / Vô một vụ

Để chuyển qua một vụ bắt đầu hoặc dừng lại vĩnh viễn, bạn sẽ cần đến:

echo manual | sudo tee /etc/init/SERVICE.override

nơi đoạn thơ manual sẽ ngăn chặn Nổi từ tự động nạp vụ khởi động kế tiếp. Bất kỳ vụ với những .override kết thúc sẽ được ưu tiên hơn những dịch vụ ban đầu tập tin. Bạn sẽ chỉ có thể bắt đầu dịch vụ tay sau đó. Nếu bạn không muốn điều này sau đó, chỉ cần xóa .override.Ví dụ::

echo manual | sudo tee /etc/init/mysql.override

Sẽ đặt các vụ MySQL vào manual chế độ. Nếu bạn không muốn điều này, sau đó anh chỉ có thể làm

sudo rm /etc/init/mysql.override

và khởi Động lại cho các vụ tự khởi động lại. Tất nhiên để cho phép một vụ cách phổ biến nhất là cài đặt nó. Nếu bạn cài đặt Apache, Apache, cấu những người khác, họ sẽ tự động bắt đầu khi xong và sẽ bắt đầu mỗi lần khởi động máy tính. Vô hiệu hóa, như đã nói, sẽ làm cho việc sử dụng dịch vụ manual.

Hiện nay có thực sự ba cách khác nhau đối với phần mềm để được bắt đầu như một vụ trong windows, Doc, Mới nổilệnh. Một vụ là xác định ở đây như là một chương trình chạy bởi hệ thống trong nền là trái ngược với một bắt đầu và chạy trực tiếp của các người.

Doc

Cách truyền thống để bắt đầu dịch vụ công nhận là nơi một kịch bản trong /etc/init.d và sau đó, sử dụng những update-rc.d lệnh (hoặc ở red hat dựa phân phối, chkconfig) cho phép hoặc vô hiệu hóa nó.

Này lệnh sử dụng một số hơi phức tạp logic để tạo liên kết mềm trong /etc/rc#.d rằng , kiểm soát thứ tự của bắt đầu dịch vụ. Nếu bạn chạy ls /etc/rc2.d bạn có thể thấy để mà dịch vụ sẽ bị giết với một tên tập tin như thế K##xxxx và bắt đầu với tên tập tin S##xxxx. Những ## trong S##xxxx có nghĩa là "hãy bắt đầu hàng" cho dịch vụ xxxx. Ngược lại, ## trong K##xxxx có nghĩa là giết để cho dịch vụ xxxx.

Một vấn đề lớn với Doc đó là khi khởi động hệ thống, tất cả mọi thứ phải được thực hiện trong nối, có một điều khác, làm cho hệ thống khởi động lần thực sự chậm. Nỗ lực được thực hiện để parallelize này, nhưng họ đã bừa bãi và khó để tận dụng. Đây chính là lý do mà Mới nổi được tạo ra.

Mới nổi

Mới nổi sử dụng định nghĩa công việc trong các tập tin /etc/init để xác định trên những sự kiện một vụ nên được bắt đầu. Vì vậy, khi hệ thống khởi động, quy trình mới nổi sự kiện khác nhau, và sau đó có thể bắt đầu nhiều dịch vụ tại song song. Điều này cho phép chúng hoàn toàn sử dụng những tài nguyên của các hệ thống, ví dụ, bởi bắt đầu một đĩa-ràng buộc vụ trong khi một ĐIỀU ràng buộc vụ chạy, hay là chờ động địa chỉ IP được giao.

Bạn có thể xem tất cả các mới nổi việc tập tin bằng cách chạy ls /etc/init/*.conf

Hãy để tôi chỉ dừng lại đây và nói rằng, nếu bạn không biết những gì một dịch vụ hay cái gì đó không, KHÔNG vô hiệu hóa nó!

Không phải tất cả dịch vụ đã được chuyển đến nổi. Trong khi làm việc trên máy chủ đội tại Kinh điển cho những tháng vừa qua, tôi đã từng làm việc trên một số chuyển đổi công việc, các tập tin và đẹp nhất mà nó cho phép người ta thoát khỏi tất cả các kịch bản "ma" và chỉ cần đặt trong một vài lệnh ở đây và ở đó để xác định chính xác làm thế nào để bắt đầu phục vụ, và không có gì hơn. Nhưng bây giờ, chỉ một số ít các truyền thống mạng dịch vụ như thế mựcsamba đã được chuyển đổi.

Là một dịch vụ mới nổi-dựa?

Để tìm ra nếu một dịch vụ mới nổi dựa trên, bạn có thể chạy tình trạng lệnh:

status servicename

Nếu nó là một mới nổi công việc, nó sẽ cho thấy điều này:

$ status statdstatd start/running, process 942

Nhưng nếu nó không phải, anh sẽ thấy một cái gì đó nhiều như này:

$ status apache2status: Unknown job: apache2

Trong trường hợp này, apache2 chưa được chuyển đến mới nổi. Vì vậy, đến vô hiệu hóa apache2 bạn chỉ cần chạy

sudo update-rc.d apache2 disablesudo service apache2 stop

Vô hiệu hóa dịch vụ (việc làm) trong nổi

Mới nổi việc nghĩa không có một update-rc.d lệnh. Đến vô hiệu hóa các công việc, các bạn cần phải sửa tin trực tiếp đến vô hiệu hóa nó. Có hai cách để làm điều này.

Nếu bạn muốn để vẫn có thể bắt đầu nó bằng tay, sau đó bạn cần để thảo luận ra start on điều kiện. Nói bạn muốn cài samba nhưng không có nó bắt đầu tự động. Đây là việc làm tập tin (trong khéo léo):

description "SMB/CIFS File Server"author      "Steve Langasek <steve.langasek@ubuntu.com>"start on local-filesystemsstop on runlevel [!2345]respawnpre-start script    RUN_MODE="daemons"    [ -r /etc/default/samba ] && . /etc/default/samba    [ "$RUN_MODE" = inetd ] && { stop; exit 0; }    install -o root -g root -m 755 -d /var/run/sambaend scriptexec smbd -F

Đến vô hiệu hóa samba bạn chỉ có thể đặt một # ở phía trước của "start on local-filesystems". Lưu ý rằng trong khi đó, nó sẽ không bắt đầu trở lại khởi động, bạn vẫn còn cần phải dừng lại nó lần này với

sudo service smbd stop

Nếu, tuy nhiên bạn không bao giờ muốn samba để bắt đầu, tôi muốn đề nghị thực sự loại bỏ các gói. Tuy nhiên, nếu bạn muốn nó được cài đặt, nhưng không startable, bạn cũng có thể làm:

mv /etc/init/smbd.conf /etc/init/smbd.conf.disabled

Vô hiệu hóa một dịch vụ sử dụng bắt đầu/dừng lại đoạn (như của 11.04)

Bắt đầu với phiên bản mới nổi này sẽ được trong 11.04, đó là một từ khóa mới là vô hiệu hóa start onstop on đoạn: manual. Vì vậy, một cách vô hiệu hóa các dịch vụ như của 11.04 là để làm:

echo 'manual' | sudo tee /etc/init/mysql.override# command from root shellecho manual >> /etc/init/mysql.override

Bạn có thể tạo ra một override tập tin vô hiệu hóa một dịch vụ mà không cần chỉnh sửa định nghĩa công việc ở tất cả, bằng cách chỉ đưa manual từ khóa trong đó.

doc-máy xi

Cố gắng sử dụng doc-máy xi

sudo apt-get install sysv-rc-conf

và để bắt đầu quản lý những vụ thực hiện

sudo sysv-rc-conf

Đó sẽ mang đến tương tác cửa sổ như thế này

Bạn có thể tiếp tục di chuyển qua trang sử dụng Ctrl+n cho tiếp trang và Ctrl+p cho trang trước. Bạn có thể bật và tắt bằng cách chọn dịch vụ SPACE trên mong muốn runlevel.

Việc Làm Quản Trị

Khác thay thế sẽ được Việc Làm Quản Trị bằng cách cài đặt qua

sudo apt-get install jobs-admin

Mà cũng có thể cung cấp GUI như thế này

Cho thấy nhiều việc làm , bạn có để đánh dấu những Chương Trình Bảo Vệ Công Việc từ của nó đơn.

chkconfig

Và thứ ba sẽ là lựa chọn chkconfig,

sudo apt-get install chkconfig

Nó có thể được sử dụng qua CLI chkconfig thấy danh sách Trên/công việc.Chúng tôi cũng có thể xem hệ thống sử dụng dịch vụ chkconfig –list

Dịch vụ có thể được bật sử dụng

chkconfig <service> on

Dịch vụ có thể tắt bằng cách sử dụng

chkconfig <service> off

Và chúng tôi thậm chí có thể thêm dịch vụ của chúng ta, sử dụng đúng khởi kịch bản với đúng tiêu đề.

chkconfig --add <service>

cập nhật tâm.d

Và một lựa chọn khác có thể được gọi đây cập nhật tâm.d giải thích một thời gian ngắn ở đây.

Lưu ý rằng cho trình máy Chủ 12.04, update-rc.d được sử dụng thay vì chkconfig.

Cho những người trong chúng ta chạy Ubuntu hơn ssh, tôi nghĩ đẹp nhất là lựa chọn rcconf - một văn bản, dựa trên chương trình:

sudo apt-get install rcconfsudo rcconf

Di chuyển với tab và mũi tên, nhấn phím cách để kích hoạt/vô hiệu hóa. Thay đổi được liên tục trên khởi động lại.

Hình mượn từ này các đó cũng cho thấy sysv-rc-conf - một tương tự như công cụ mà cũng có thể cho phép bạn đặt chạy. (Đối với những người xảy ra để chăm sóc đủ về runlevel muốn thay đổi chúng :)

Rất tiếc, rcconf không làm việc với mới nổi (dịch vụ được liệt kê trong /etc/init/*), giống với các truyền thống chế (ls -l /etc/init.d/* - những cái mà không phải là biểu tượng đường dẫn).

May mắn thay, nhiều người trong số các vụ đó có liên quan khi ssh hey ở một máy chủ (Apache, Mèo, mdadm, boinc-khách hàng...) đã không được di chuyển để mới nổi sơ.

Tôi phát hiện ra rằng để ngụy trang đó là điều này GUI công cụ, một cái gì đó như BUM nhưng tương thích với mới Nổi: Việc làm Quản trị

sudo apt-get install jobs-admin

Chỉnh sửa hiện có mới nổi cấu hình thấy (như trên) không phải là một ý tưởng tốt. Một cập nhật gói có thể cung cấp một bản cập nhật cấu hình, và anh sẽ phải lặp lại của bạn thay đổi hơn.

Bằng cách nhìn vào man 5 init ai sẽ tìm thấy một phù hợp hơn nhiều giải pháp: ghi đè lên bằng cách sử dụng một cấu hình. Ví dụ ngắn: Nói rằng chúng ta có một vụ gọi là "bài phê bình về", như vậy đó sẽ là một tập tin được gọi là /etc/init/foobar.conf với nó cấu hình mới nổi. Bây giờ anh không muốn bỏ tập tin đó, cũng không thay đổi nó, nhưng không phải bạn muốn dịch vụ này để chạy? Vì vậy, đặt đè tập tin tiếp theo đến nó: /etc/init/foobar.override có (tùy các tiêu đề với những mô tả và) thay vào đó, start on / stop on dòng bạn đặt một đường với một chữ: manual. Bằng cách này, anh nói với mới nổi về cơ bản để sử dụng những foobar.conf nhưng ghi đè lên các khởi nghĩa để chỉ bắt đầu dịch vụ đó khi tay thi hành (thông qua service foobar start trong ví dụ của chúng tôi).

Đó cũng là những Khởi Động Quản Lý.

Để cài đặt: sudo apt-get install bum

Tiếp tục thông tin: http://www.marzocca.net/linux/bum.html

Phương pháp đơn giản cho tôi khi tôi sử dụng CLI chỉ là update-rc.d.

Để kích hoạt hoặc disble tự động bắt đầu khởi động lại etc :

sudo update-rc.d <daemon|service> <enable|disable>

Ví dụ:

update-rc.d spamassassin enable

Dừng lại hoặc bắt đầu một linh thú hoặc kiểm tra tình trạng của mình:

sudo service <daemon|service> <start|stop|restart|reload|force-reload|status>

Ví dụ:

sudo service spamassassin status  spamassassin.service - Perl-based spam filter using text analysis   Loaded: loaded (/lib/systemd/system/spamassassin.service; disabled; vendor preset: enabled)   Active: active (running) since Thu 2020-05-21 13:04:10 SAST; 4s ago  Process: 1928 ExecStart=/usr/sbin/spamd -d --pidfile=/var/run/spamd.pid $OPTIONS (code=exited, status=0/SUCCES Main PID: 1949 (spamd)    Tasks: 3 (limit: 2361)   CGroup: /system.slice/spamassassin.service           ├─1949 /usr/bin/perl -T -w /usr/sbin/spamd -d --pidfile=/var/run/spamd.pid --create-prefs --max-child           ├─1951 spamd child           └─1952 spamd child`  etc  etc

update-rc.d có thể làm nhiều hơn một chút so với cơ bản hiển thị trên:

usage: update-rc.d [-f] <basename> remove       update-rc.d [-f] <basename> defaults       update-rc.d [-f] <basename> defaults-disabled       update-rc.d <basename> disable|enable [S|2|3|4|5]        -f: force

Như mọi khi, bạn van tham khảo manpage.

Tôi sử dụng Stacer:

Stacer là một hệ thống mã mở máy màn hình ứng dụng đó giúp người để quản lý toàn bộ hệ thống với các khía cạnh khác nhau của nó tất cả trong một hệ thống tiện ích.

Nó cho thấy dịch vụ và quá trình cũng. Toàn DIỆN hệ thống hộp công cụ.

Lưu ý rằng các câu trả lời cho trình 14.04 vẫn còn mất tích ở đây.

@MarcelloNuccio: Bắt đầu với mọi 15.04, mới Nổi đã bị phản đối ủng hộ của Lệnh.

Cho mạng hãy xem: How to restart the networking service? - Ask Ubuntu

Này sẽ rất hữu ích cho những người mắc kẹt trên Fedora 12 và đã hạ cánh ở đây. Trong trường hợp linkrot chkconfig là những gì bạn đang tìm kiếm.

Tự động bắt đầu chương trình được cấu hình tự khởi động biểu hiện hoặc *.dịch vụ tập tin trong một số địa điểm, cũng như trong khởi.d hoặc hủy đăng ký người. Xem: upstart - How to start application after login on CentOS? - Unix & Linux Stack Exchange