Runit
| Autor | Gerrita Pape |
|---|---|
| Pierwsze wydanie | 10 lutego 2004[1] |
| Aktualna wersja stabilna | 2.1.2[2] |
| Język programowania | C, Shell |
| System operacyjny | Linux, FreeBSD, OpenBSD, NetBSD, macOs, Solaris |
| Rodzaj | init |
| Licencja | New BSD License |
| Strona internetowa | smarden.org/runit/ |
runit – program do zarządzania usługami dla systemów operacyjnych typu Unix, który inicjuje (uruchamia), nadzoruje i kończy procesy w całym systemie operacyjnym. Runit jest reimplementacją zestawu narzędzi do nadzorowania procesów daemontools[3], który działa na wielu systemach operacyjnych opartych na jądrze Linux, a także na systemach operacyjnych BSD i Solaris. Runit umożliwia równoległe uruchamianie usług systemowych, co może przyspieszyć czas uruchamiania systemu operacyjnego.[4]
Działając jako init, Runit jest bezpośrednim lub pośrednim przodkiem wszystkich innych procesów. Jest to pierwszy proces uruchamiany podczas uruchamiania systemu i trwa do momentu wyłączenia systemu. Jest często używany z innymi systemami inicjującymi jako oddzielny menedżer usług. W roli menedżera usług może być używany przez nieuprzywilejowanych użytkowników do organizowania usług osobistych, a także przez roota do zarządzania usługami, którymi w inny sposób nie zarządzałby aktualnie używany system init.

Runit koncentruje się na byciu małą, modułową i przenośną bazą kodu. W roli inicjującej Runit jest podzielony na trzy etapy: jednorazowa inicjalizacja, nadzór procesu oraz zatrzymanie lub ponowne uruchomienie. Chociaż pierwszy i trzeci etap muszą być dostosowane do konkretnego systemu operacyjnego, na którym działają, drugi etap można przenosić na wszystkie systemy operacyjne zgodne z POSIX.[4] Te 3 etapy można skonfigurować za pomocą 3 plików wykonywalnych (zwykle są to skrypty powłoki) o nazwach odpowiednio 1, 2 i 3.
Etap 2 zwykle wywołuje plik binarny o nazwie runsvdir, który jest procesem odpowiedzialnym za globalne zarządzanie demonami: dla każdego demona, który znajdzie w folderze przekazanym mu przez argument, następnie tworzy indywidualnego watchdoga, każdy z nich uruchamia demona (i program rejestrujący usługę ostatecznie z nim powiązaną) i uruchamia ją ponownie, jeśli nie odpowiada. W przypadku dodania lub usunięcia demona, zabija on watchdoga lub uruchamia nowego. Pliki wykonywalne o określonych nazwach służą do opisu różnych faz życia demona (uruchamianie, sprawdzanie, zakończenie), mogą przechwytywać sygnały wysyłane i uruchamiane przez określone skrypty, jeśli takie istnieją, a także tworzone są nazwane potoki w celu odsłonięcia interfejsów do kontrolowania demona.
Zarządzanie serwisami uruchomionymi przez runit umożliwia komenda sv.
Runit może być używany jako zamiennik[5] dla sysvinit lub jako nadzorca usługi (z sysvinit jako procesem nadrzędnym PID 1, który uruchamia procesy określone w pliku inittab lub innym systemie init).[6]
Runit jest domyślnym systemem inicjującym:
- antiX (oparty na Debianie, od wersji 19)
- Void Linux[7]
Runit jest „oficjalnie” dostępnym systemem init dla:
- Artix Linux[8]
- Devuan (oparty na Debianie, od wersji 3.1.0)[9]
- Gentoo Linux[10]
Przypisy
- ↑ runit-1.0.0 release. gmane.org. [dostęp 2024-09-29]. [zarchiwizowane z tego adresu (2013-12-13)]. (ang.).
- ↑ runit - installation [online], smarden.org [dostęp 2024-05-09].
- ↑ Steve Purcell: Init Scripts Considered Harmful. sanityinc.com, 2007-11-11. [dostęp 2024-05-09].
- ↑ a b Gerrit Pape: runit - benefits. [dostęp 2024-05-09].
- ↑ Gerrit Pape: replacing init. [dostęp 2024-05-09].
- ↑ Gerrit Pape: use with traditional init. [dostęp 2024-05-09].
- ↑ VoidLinux. [dostęp 2024-05-09].
- ↑ Artix Wiki Runit [online], Artix Wiki [dostęp 2024-05-09] (ang.).
- ↑ Init Freedom | Devuan GNU+Linux Free Operating System [online] [dostęp 2024-05-09] (ang.).
- ↑ Gentoo. [dostęp 2024-05-09].
Linki zewnętrzne
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.