প্রথমত, systemd
কোনও traditionalতিহ্যবাহী ইউনিক্স নয় init
। সিস্টেমড আরও অনেক কিছু, তাই এই দুটির সাথে তুলনা করা কিছুটা অন্যায়।
প্রশ্নের উত্তর দেওয়ার জন্য, যা প্রয়োজনীয় বলে মনে হচ্ছে তা হ'ল কয়েকটি বাইনারি এবং নিম্নলিখিত কনফিগারেশন ফাইলগুলি:
/usr/lib/systemd/system/default.target
/usr/lib/systemd/system/basic.target
/usr/lib/systemd/system/sysinit.target
/usr/lib/systemd/system/getty.target
/usr/lib/systemd/system/getty@.service
/usr/lib/systemd/system/console-getty.service
জারি করার systemctl enable console-getty.service getty@tty2.service
পরে এই প্রতিলিঙ্কগুলি তৈরি হয়:
/etc/systemd/system/default.target.wants/getty@ত্তি2.service -> / lib / systemd / system / getty @ পরিষেবা
-
দ্রষ্টব্য : গতিশীলভাবে systemd
শুরু করার জন্য agetty
, অন Alt+ ডিমান্ডের সময় + F3এবং আরও কিছু জাতীয় বৈশিষ্ট্যগুলির বিশেষ বৈশিষ্ট্যগুলি ব্যবহার করার জন্য , এটি প্রদর্শিত হয় যে আপনার কমপক্ষে এই দুটি ফাইলও থাকতে হবে:
/etc/systemd/logind.conf
/lib/systemd/system/autovt@.service
যেখানে autovt@.service
একটি syMLink হয় getty@.service
।
কনফিগারেশন ফাইলের উপাদানসমূহ:
default.target
, getty.target
, sysinit.target
ফাইল ছাড়া খালি হতে পারে [Unit]
ট্যাগ এবং (সম্ভবত) Description=xxx
।
basic.target
নির্ভরতার তথ্যও রয়েছে:
[ইউনিট]
বিবরণ = বেসিক সিস্টেম
= Sysinit.target প্রয়োজন
চায় = সকেট.টারাগেট টাইমারস.টারাগেট পাথস.টারাগেট স্লাইস.আরগেট
পরে = sysinit.target sockets.target timers.target paths.target slices.target
আমি নিশ্চিত নই যে ফাইলগুলির প্রয়োজন আছে বা নেই সে হিসাবে লক্ষ্যমাত্রার উল্লেখ নেই exist তারা systemd.special(7)
ম্যান পৃষ্ঠাতে বর্ণিত হয় ।
console-getty.service
: (কনসোল এজেটির জন্য বিশেষ ক্ষেত্রে)
[ইউনিট]
বিবরণ = কনসোল গেটি
এর পরে = systemd- ব্যবহারকারীর সেশনস। সার্ভিস প্লাইমাউথ-প্রস্থান-অপেক্ষা করুন serv
= Getty.target আগে
[পরিষেবা]
এক্সিকিস্টার্ট = - / এসবিন / অ্যাজেটি - পারমাণবিক - কিপ-বাড কনসোল 115200,38400,9600 ER TERM
প্রকার = অলস
পুনর্সূচনা সবসময় =
RestartSec = 0
UtmpIdentifier = কনস
TTYPath = আপনার / dev / কনসোল
TTYReset = হ্যাঁ
TTYVHangup = হ্যাঁ
KillMode = প্রক্রিয়া
IgnoreSIGPIPE = না
SendSIGHUP = হ্যাঁ
[ইনস্টল করুন]
WantedBy = getty.target
getty@.service
: (কনসোল ব্যতীত সমস্ত গেট্টি পরিষেবার জন্য জেনেরিক কনফিগারেশন)
[ইউনিট]
বর্ণনা =% 1 এ গেটে
এর পরে = systemd- ব্যবহারকারীর সেশনস। সার্ভিস প্লাইমাউথ-প্রস্থান-অপেক্ষা করুন serv
= Getty.target আগে
IgnoreOnIsolate = হ্যাঁ
ConditionPathExists = আপনার / dev / tty0
[পরিষেবা]
এক্সিকিস্টার্ট = - / এসবিন / অ্যাজেটি --নোক্লিয়ার% I $ TERM
প্রকার = অলস
পুনর্সূচনা সবসময় =
RestartSec = 0
UtmpIdentifier =% আমি
TTYPath = আপনার / dev /% i
TTYReset = হ্যাঁ
TTYVHangup = হ্যাঁ
TTYVTDisallocate = না
KillMode = প্রক্রিয়া
IgnoreSIGPIPE = না
SendSIGHUP = হ্যাঁ
[ইনস্টল করুন]
WantedBy = getty.target
DefaultInstance = tty1
অবশেষে আপনার সম্ভবত এই কয়েকটি বিশেষ বাইনারি দরকার (কোনটি গুরুত্বপূর্ণ তা আমি চেষ্টা করি নি):
/ lib / systemd / systemd (/ sbin / init সাধারণত এটি দেখায়)
/ Lib / অনুপস্থিত systemd হল / systemd হল-logind
/ Lib / অনুপস্থিত systemd হল / systemd হল-Cgroups-এজেন্ট
/ Lib / অনুপস্থিত systemd হল / systemd হল-ব্যবহারকারী-সেশন
/ Lib / অনুপস্থিত systemd হল / systemd হল-vconsole সেটআপ
/ Lib / অনুপস্থিত systemd হল / systemd হল-আপডেট-utmp
/ Lib / অনুপস্থিত systemd হল / systemd হল-ঘুম
/ Lib / অনুপস্থিত systemd হল / systemd হল-sysctl
/ Lib / অনুপস্থিত systemd হল / systemd হল-initctl
/ Lib / অনুপস্থিত systemd হল / systemd হল-উত্তর পাসওয়ার্ড
/ Lib / অনুপস্থিত systemd হল / systemd হল-এসি শক্তি
/ Lib / অনুপস্থিত systemd হল / systemd হল-সক্রিয়
/ Lib / অনুপস্থিত systemd হল / systemd হল-ব্যাকলাইট
/ Lib / অনুপস্থিত systemd হল / systemd হল-binfmt
/ Lib / অনুপস্থিত systemd হল / systemd হল-bootchart
/ Lib / অনুপস্থিত systemd হল / systemd হল-বাস proxyd
/ Lib / অনুপস্থিত systemd হল / systemd হল-coredump
/ Lib / অনুপস্থিত systemd হল / systemd হল-cryptsetup
/ Lib / অনুপস্থিত systemd হল / systemd হল-fsck
/ Lib / অনুপস্থিত systemd হল / systemd হল-hostnamed
/ Lib / অনুপস্থিত systemd হল / systemd হল-journald
/ Lib / অনুপস্থিত systemd হল / systemd হল-জার্নাল-gatewayd
/ Lib / অনুপস্থিত systemd হল / systemd হল-জার্নাল-দূরবর্তী
/ Lib / অনুপস্থিত systemd হল / systemd হল-localed
/ Lib / অনুপস্থিত systemd হল / systemd হল-মেশিন
/ Lib / অনুপস্থিত systemd হল / systemd হল-মডিউল-লোড
/ Lib / অনুপস্থিত systemd হল / systemd হল-বহু-আসন-X
/ Lib / অনুপস্থিত systemd হল / systemd হল-networkd
/ Lib / অনুপস্থিত systemd হল / systemd হল-networkd-অপেক্ষার-অনলাইন
/ Lib / অনুপস্থিত systemd হল / systemd হল-quotacheck
/ Lib / অনুপস্থিত systemd হল / systemd হল-রেণ্ডম-বীজ
/ Lib / অনুপস্থিত systemd হল / systemd হল-readahead
/ Lib / অনুপস্থিত systemd হল / systemd হল-পুনরারোহণ-FS
/ Lib / অনুপস্থিত systemd হল / systemd হল-সমাধান
/ Lib / অনুপস্থিত systemd হল / systemd হল-rfkill
/ Lib / অনুপস্থিত systemd হল / systemd হল হরতাল
/ Lib / অনুপস্থিত systemd হল / systemd হল-shutdownd
/ Lib / অনুপস্থিত systemd হল / systemd হল-সকেট-proxyd
/ Lib / অনুপস্থিত systemd হল / systemd হল-timedated
/ Lib / অনুপস্থিত systemd হল / systemd হল-timesyncd
/ Lib / অনুপস্থিত systemd হল / systemd হল-udevd
/ Lib / অনুপস্থিত systemd হল / systemd হল-আপডেট পাচিত
সিস্টেমড শুরুর প্রক্রিয়াটির সংক্ষিপ্তসার হিসাবে, আমি মনে করি এটি এরকম কিছু কাজ করে:
- সিস্টেমযুক্ত লোকেশন
basic.target
(বা সমস্ত *.target
ফাইল?)
- নির্ভরতা উপর ভিত্তি করে মীমাংসা করা হয়
WantedBy=
, Wants=
, Before=
, After=
... মধ্যে নির্দেশনা [Install]
বিভাগে *.service
এবং *.target
কনফিগারেশন ফাইল।
*.service
যেগুলি শুরু করা উচিত (যা "বিশেষ" পরিষেবা নয়) এর [Service]
একটি ExecStart=
নির্দেশিকা সহ একটি বিভাগ রয়েছে যা কার্যকর করতে শুরু করার জন্য নির্দেশ করে।