GNU Shepherd 0.9 init системийн хувилбар

Сүүлийн чухал хувилбар гарснаас хойш хоёр жилийн дараа GNU Shepherd 0.9 (хуучнаар dmd) үйлчилгээний менежер хэвлэгдэн гарсан бөгөөд үүнийг GNU Guix системийн түгээлтийн хөгжүүлэгчид хамаарлыг дэмждэг SysV-init эхлүүлэх системийн өөр хувилбар болгон хөгжүүлж байна. . Хоньчны хяналтын демон болон хэрэгслүүд нь Guile хэлээр бичигдсэн (Схем хэлний хэрэгжилтийн нэг) бөгөөд энэ нь үйлчилгээг эхлүүлэх тохиргоо болон параметрүүдийг тодорхойлоход хэрэглэгддэг. Shepherd нь GuixSD GNU/Linux түгээлтэд аль хэдийн ашиглагдаж байгаа бөгөөд GNU/Hurd-д ашиглахад зориулагдсан боловч Guile хэлийг ашиглах боломжтой ямар ч POSIX-тэй нийцтэй үйлдлийн систем дээр ажиллах боломжтой.

Shepherd нь үйлчилгээнүүдийн хоорондын хамаарлыг харгалзан үзэх, сонгосон үйлчилгээнээс хамаарах үйлчилгээг динамикаар тодорхойлж, эхлүүлэх замаар үйлчилгээг эхлүүлэх, зогсоох ажлыг гүйцэтгэдэг. Мөн Shepherd үйлчилгээ хоорондын зөрчилдөөнийг илрүүлж, зэрэг ажиллуулахаас сэргийлдэг. Төслийг үндсэн эхлүүлэх систем (PID 1-тэй эхлүүлэх), тусдаа хэлбэрээр ашиглах боломжтой бөгөөд тус тусад нь хэрэглэгчийн арын процессыг удирдах боломжтой (жишээлбэл, tor, privoxy, mcron гэх мэт) эрхтэйгээр гүйцэтгэх боломжтой. эдгээр хэрэглэгчдийн.

Гол инноваци:

  • Түр зуурын үйлчилгээний (түр зуурын) үзэл баримтлал хэрэгжиж, үйл явц зогссон эсвэл "зогсоох" аргыг дуудсаны улмаас дууссаны дараа автоматаар идэвхгүй болсон бөгөөд энэ нь унтарсны дараа дахин эхлүүлэх боломжгүй нэгтгэсэн үйлчилгээнд шаардлагатай байж болно.
  • Inetd-тэй төстэй үйлчилгээг бий болгохын тулд "make-inetd-constructor" процедурыг нэмсэн.
  • Сүлжээний үйл ажиллагааны явцад идэвхждэг үйлчилгээг бий болгохын тулд (системийн залгуурыг идэвхжүүлэх хэв маягаар) "systemd-бүтээгч хийх" процедурыг нэмсэн.
  • Үйлчилгээг арын дэвсгэр дээр эхлүүлэх журам нэмэгдсэн - "арын дэвсгэр дээр эхлүүлэх".
  • "make-forkexec-constructor" горимд ": supplementary-groups", "#:create-session" болон "#:resource-limits" параметрүүдийг нэмсэн.
  • PID файлуудыг хүлээж байхдаа блоклохгүйгээр ажиллагааг идэвхжүүлсэн.
  • “#: log-file” параметргүй үйлчилгээний хувьд syslog руу гаралт, харин #: log-file параметртэй үйлчилгээний хувьд бүртгэлийг тусдаа файлд бичиж, бичлэг хийх цагийг зааж өгдөг. Эрх мэдэлгүй хоньчны үйл явцын бүртгэлийг $XDG_DATA_DIR лавлахад хадгална.
  • Guile 2.0-тэй барилгын дэмжлэгийг зогсоосон. Guile 3.0.5-3.0.7 хувилбаруудыг ашиглах үед гарсан асуудлууд шийдэгдсэн.
  • Fibers library 1.1.0 буюу түүнээс дээш хувилбар ажиллахад одоо шаардлагатай.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх