මීට වසර කිහිපයකට පෙර අප්ස්ටාර්ට් මෙන් බ්ලොක්හි උණුසුම් නව ආරම්භක පද්ධතිය වන්නේ systemd බව පෙනේ . එක් එක් අයගේ වාසි / අවාසි මොනවාද? එසේම, එක් එක් අනෙක් ආරම්භක පද්ධති සමඟ සැසඳෙන්නේ කෙසේද?
මීට වසර කිහිපයකට පෙර අප්ස්ටාර්ට් මෙන් බ්ලොක්හි උණුසුම් නව ආරම්භක පද්ධතිය වන්නේ systemd බව පෙනේ . එක් එක් අයගේ වාසි / අවාසි මොනවාද? එසේම, එක් එක් අනෙක් ආරම්භක පද්ධති සමඟ සැසඳෙන්නේ කෙසේද?
Answers:
මෙහි බොහෝ පිළිතුරු අවුරුදු පහක් පැරණි බැවින් සමහර යාවත්කාලීන කිරීම් සඳහා කාලයයි.
උබුන්ටු පෙරනිමියෙන් උඩුමහල භාවිතා කළ නමුත් ඔවුන් එය පසුගිය වසරේදී systemd සඳහා අතහැර දැමීය - බලන්න:
ඒ නිසා උබුන්ටු විකියෙහි Upstart පරිශීලකයින් සඳහා Systemd යන ලස්සන ලිපියක් ඇත - උඩුමහල සහ systemd අතර ඉතා සවිස්තරාත්මක සංසන්දනයක් සහ උඩුමහලේ සිට systemd වෙත සංක්රාන්ති මාර්ගෝපදේශයකි.
( උබුන්ටු විකියට අනුව ඔබට උබුන්ටු හි වර්තමාන අනුවාදයන් පෙරනිමියෙන් ස්ථාපනය කර upstart-sysv
ධාවනය sudo update-initramfs -u
කිරීමෙන් ඉහළට ධාවනය කළ හැකි නමුත් systemd ව්යාපෘතියේ විෂය පථය සලකා බැලීමේදී එය ප්රායෝගිකව ක්රියාත්මක වන්නේ කෙසේදැයි මම නොදනිමි, නැතහොත් systemd ද යන්න අස්ථාපනය කළ හැකිය.)
පහත දැක්වෙන විධාන සහ ස්ක්රිප්ට් අංශවල ඇති තොරතුරු බොහොමයක් අනුවර්තනය වී ඇත්තේ එම ලිපියේ භාවිතා කර ඇති උදාහරණ කිහිපයකිනි (එය නිර්මාණාත්මක කොමන්ස් ආරෝපණය-ෂෙයාර්අයික් 3.0 බලපත්රය යටතේ ස්ටැක් එක්ස්චේන්ජ් පරිශීලක දායකත්වය මෙන් පහසුවෙන් බලපත්ර ලබා ඇත ).
පොදු විධාන සහ සරල ස්ක්රිප්ට් ඉක්මන් සංසන්දනයක් මෙන්න, සවිස්තරාත්මක පැහැදිලි කිරීම සඳහා පහත කොටස් බලන්න. මෙම පිළිතුර, අප්ස්ටාර්ට් මත පදනම් වූ පද්ධතිවල පැරණි හැසිරීම, පද්ධතියේ පදනම් වූ පද්ධතිවල නව හැසිරීම සමඟ සංසන්දනය කරයි, නමුත් ප්රශ්නයේ දී ඇසූ පරිදි, “අප්ස්ටාර්ට්” ලෙස ටැග් කර ඇති විධානයන් අනිවාර්යයෙන්ම අප්ස්ටාර්ට්-විශේෂිත නොවන බව සලකන්න - ඒවා බොහෝ විට විධාන වේ පද්ධති නොවන සෑම ලිනක්ස් සහ යුනික්ස් පද්ධතියකටම පොදු වේ.
su
machinectl shell
(පහත "su විධාන ප්රතිස්ථාපනය" කොටස බලන්න)
screen
systemd-run --user --scope screen
(පහත “පසුබිම් ක්රියාවලීන් අනපේක්ෂිත ලෙස killing ාතනය කිරීම” කොටස බලන්න)
tmux
systemd-run --user --scope tmux
(පහත “පසුබිම් ක්රියාවලීන් අනපේක්ෂිත ලෙස killing ාතනය කිරීම” කොටස බලන්න)
start foo
systemctl start foo
stop foo
systemctl stop foo
restart foo
systemctl restart foo
initctl list
systemctl status
init-checkconf /etc/init/foo.conf
systemd-analyze verify /lib/systemd/system/foo.service
initctl list-env
systemctl show-environment
initctl set-env foo=bar
systemctl set-environment foo=bar
initctl unset-env foo
systemctl unset-environment foo
උඩුමහලේදී, ලොග් යනු / var / log / upstart නාමාවලියෙහි ඇති සාමාන්ය පෙළ ගොනු වේ, එබැවින් ඔබට ඒවා සුපුරුදු පරිදි සැකසිය හැකිය:
cat /var/log/upstart/foo.log
tail -f /var/log/upstart/foo.log
Systemd ල logs ු-සටහන් අභ්යන්තර ද්විමය ආකෘතියක ගබඩා කර ඇත (පෙළ ලිපිගොනු ලෙස නොවේ) එබැවින් ඔබට journalctl
ඒවාට ප්රවේශ වීමට විධානය භාවිතා කළ යුතුය:
sudo journalctl -u foo
sudo journalctl -u foo -f
උදාහරණයක් මත් වර්ජකයන්ගේ තිර රචනය ලියා /etc/init/foo.conf
:
description "Job that runs the foo daemon"
start on runlevel [2345]
stop on runlevel [016]
env statedir=/var/cache/foo
pre-start exec mkdir -p $statedir
exec /usr/bin/foo-daemon --arg1 "hello world" --statedir $statedir
උදාහරණයක් තිර රචනය systemd ලියා /lib/systemd/system/foo.service
:
[Unit]
Description=Job that runs the foo daemon
Documentation=man:foo(1)
[Service]
Type=forking
Environment=statedir=/var/cache/foo
ExecStartPre=/usr/bin/mkdir -p ${statedir}
ExecStart=/usr/bin/foo-daemon --arg1 "hello world" --statedir ${statedir}
[Install]
WantedBy=multi-user.target
ඒ su
විධානය වෙනුවට අදින්න ඉල්ලීම # 1022 දී systemd බවට ඒකාබද්ධ කරන ලදී:
මන්ද, ලෙනාට් පොයිටරින්ට අනුව, “සු යනු සැබවින්ම බිඳුණු සංකල්පයකි” .
ඔහු පැහැදිලි කරයි "ඔබ පෙර මෙන් සිහල උරුමය සහ sudo භාවිතා කළ හැකිය, නමුත් එය සම්පූර්ණ වැඩ කටයුතු කරනු ඇත බව අපේක්ෂා කරන්නේ නැත " .
su
සමාන හැසිරීමක් ලබා ගැනීම සඳහා නිල ක්රමය දැන්:
machinectl shell
# 825 නිකුත් කිරීම සඳහා වූ සාකච්ඡාවේදී ලෙනාට් පොටරින් විසින් එය තවදුරටත් පැහැදිලි කර ඇත :
"හොඳයි, මේ පිළිබඳව දීර් discussions වශයෙන් සාකච්ඡා කර ඇත, නමුත් ගැටලුව වන්නේ සු විසින් කළ යුතු දේ ඉතා අපැහැදිලි වීමයි. [...] දිගු කතාව කෙටිකතාව: su යනු සැබවින්ම බිඳුණු සංකල්පයකි. එය ඔබට යම් ආකාරයක කවචයක් ලබා දෙනු ඇත , ඒ සඳහා එය භාවිතා කිරීම හොඳයි, නමුත් එය සම්පූර්ණ පිවිසුමක් නොවන අතර එකක් වැරදියට නොසිතිය යුතුය. ” - ලෙනාට් පොයිටරින්
මෙයද බලන්න:
වැනි විධානයන්:
බලාපොරොත්තු වූ පරිදි තවදුරටත් ක්රියාත්මක නොවේ . උදාහරණයක් ලෙස, nohup
ඔබ ඔබේ සැසිවාරයෙන් ඉවත් වූ පසු ක්රියාවලිය දිගටම ක්රියාත්මක වන බවට වග බලා ගැනීම සඳහා POSIX විධානයකි. එය තවදුරටත් systemd මත ක්රියා නොකරයි . ද වැනි වැඩසටහන් screen
හා tmux
විශේෂ ආකාරයකින් උපයෝගී කර ගැනීමට හෝ වෙනත් අවශ්ය ඔබ ඔවුන් සමඟ ක්රියාත්මක වන ක්රියාවලීන් ඝාතනය වනු ඇත (මියගිය ක්රියාවලිය ලැබෙන්නේ නැහැ අතර සාමාන්යයෙන් ප්රථම ස්ථානය තිරය හෝ tmux ධාවන ප්රධාන හේතුව වේ).
මෙය වැරැද්දක් නොවේ, එය හිතාමතා ගත් තීරණයක් බැවින් අනාගතයේ දී එය නිවැරදි වීමට ඉඩක් නැත. මෙම ප්රශ්නය ගැන ලෙනාට් පොටරිං පවසා ඇත්තේ මෙයයි:
මගේ මතය අනුව එය යුනික්ස් හි ඇත්තෙන්ම අමුතු දෙයක් වූ අතර එය පෙරනිමියෙන් අත්තනෝමතික පරිශීලක කේතයක් ලොග්අවුට් කිරීමෙන් පසු සීමා රහිතව රැඳී සිටීමට ඉඩ දෙයි. බොහෝ මෙහෙයුම් පද්ධති අතර දැන් අවුරුදු ගණනාවක් තිස්සේ සාකච්ඡා කර ඇති අතර, මෙය සිදුවිය හැකි නමුත් නිසැකවම පෙරනිමිය නොවිය යුතුය, නමුත් පෙරනිමියෙන් විකල්පයක් බවට හැරවීම සඳහා ස්විචය පෙරළීමට කිසිවෙකු මෙතෙක් නිර්භීත නොවීය. පිටවීමෙන් පසු පරිශීලක සැසි පිරිසිදු නොකිරීම කැත සහ තරමක් අනවසර පමණක් නොව ආරක්ෂක ගැටළුවක් ද වේ. systemd 230 දැන් අවසානයේ ස්විචය පෙරළා ඇති අතර අවසානයේදී පරිශීලකයා ඉවත් වන විට පෙරනිමියෙන් සියල්ල නිවැරදිව පිරිසිදු කරයි.
වැඩි විස්තර සඳහා බලන්න:
එක් ආකාරයකින් systemd පසුපසට ක්රියා කරයි - උඩුමහලේ රැකියා හැකි ඉක්මනින් ආරම්භ වන අතර පද්ධතිමය රැකියා ඔවුන්ට අවශ්ය වූ විට ආරම්භ වේ. දවස අවසානයේදී එකම රැකියා දෙකම පද්ධති හා එකම අනුපිළිවෙලින් ආරම්භ කළ හැකිය, නමුත් ඔබ ඒ ගැන සිතන්නේ ප්රතිවිරුද්ධ දිශාවකින් බැලූ බැල්මටය.
Upstart පරිශීලකයින් සඳහා Systemd එය පැහැදිලි කරන ආකාරය මෙන්න :
ආරම්භක ක්රියාවලි (රැකියා) සඳහා අප්ස්ටාර්ට් හි ආකෘතිය “කෑදර සිදුවීම් මත පදනම් වූ” ය, එනම් ආරම්භක සිදුවීම් සිදුවන සියලුම රැකියා හැකි ඉක්මනින් ආරම්භ වේ. ආරම්භයේදී, ආරම්භක හෝ rcS වැනි ආරම්භක සිදුවීම් "ගස් මූල" ලෙස සංස්ලේෂණය කරයි, මුල් සේවාවන් ඒවායින් ආරම්භ වන අතර පසුව ක්රියාත්මක වන්නේ කලින් ක්රියාත්මක වන විටය. නව කාර්යයක් හුදෙක් එහි වින්යාස ගොනුව සක්රිය වීමට / etc / init / වෙත ස්ථාපනය කළ යුතුය.
ආරම්භක ක්රියාවලි (ඒකක) සඳහා systemd හි ආකෘතිය “කම්මැලි යැපීම මත පදනම් වූ” ය, එනම් ඒකකයක් ආරම්භ වන්නේ වෙනත් ආරම්භක ඒකකයක් එය මත රඳා පවතී නම් පමණි. ඇරඹුම් අතරතුර, systemd විසින් "root ඒකකය" ආරම්භ කරයි (default.target, grub වලින් අභිබවා යා හැක), එවිට එය අක්රීයව පුළුල් වන අතර එහි පරායත්තතාවයන් ආරම්භ කරයි. නව ඒකකයක් සක්රිය වීමට ඇරඹුම් අනුක්රමයේ (සාමාන්යයෙන් බහු- user.target) ඒකකයක යැපීමක් ලෙස එකතු කළ යුතුය.
විකිපීඩියාවට අනුව මෑත කාලීන දත්ත කිහිපයක්:
( යාවත්කාලීන තොරතුරු සඳහා විකිපීඩියාව බලන්න )
පද්ධතිමය වළක්වා ගැනීම සඳහා අතීතයේ දී ඩේබියන් දෙබලක යෝජනා කර ඇත . මෙම Devuan GNU + ලිනක්ස් නිර්මිතය - systemd තොරව ඩේබියන් දී දෙබල් (ස්තුති fpmurphy1 අදහස් එය පෙන්වා දෙමින් සඳහා).
මෙම මතභේදය පිළිබඳ වැඩි විස්තර සඳහා, බලන්න:
ඔබ බොහෝ දෙනෙක් දැනටමත් දන්නා පරිදි, ඉයන් ජැක්සන් විසින් ප්රවර්ධනය කරන ලද ආරම්භක ජීආර් ඩේබියන් ඡන්දය ඩෙබියන්ගේ උරුමය සහ එහි භාවිතා කරන්නන් පද්ධතිමය හිම කුණාටුවෙන් ආරක්ෂා කිරීමට ප්රයෝජනවත් නොවීය.
මෙම තත්වය සංවර්ධනයේ නිදහසට තර්ජනයක් වන පද්ධතිමය පරායත්තතාවයන් අගුලු දැමීමට අපේක්ෂා කරන අතර ඩෙබියන්, එහි උඩු යටිකුරු කිරීම සහ එහි පහළට බරපතල ප්රතිවිපාක ඇති කරයි.
සිස්විනිට් හරහා පද්ධතිමය සියුම් ස්ථාපනයකින් අපට යැපීමක් මාරු කර ගැනීමට කාලය ලබා ගැනීමට සීටීටීඊයට හැකි විය, නමුත් මෙම ක්රියාවලිය පවා වෙහෙසකර හා නාට්යයෙන් පිරී තිබුණි. අවසානයේ සතියකට පෙර ඉයන් ජැක්සන් ඉල්ලා අස්විය. [...]
මම වහාම ක්රියාත්මක වන පරිදි තාක්ෂණික කමිටුවෙන් ඉල්ලා අස්වෙනවා.
මා සමඟ එකඟ වන ව්යාපෘතියේ 30-40% ක අදහස් අඛණ්ඩව TC හි නිරූපණය කිරීම වැදගත් වන අතර, මම පැහැදිලිවම මේ අවස්ථාවේ දී එසේ කිරීමට තරම් මතභේදාත්මක චරිතයකි. ව්යාපෘතියේ පාලනය පිළිබඳ සංවාද පුද්ගලීකරණය කර ඇති ප්රමාණය අඩු කිරීමට උත්සාහ කිරීම සඳහා මම පසෙකට යා යුතුය. [...]
ඩෙබියන් උපත ලැබුවේ ඩෙබියන් සඳහා සුපුරුදු ආරම්භක පද්ධතිය ලෙස භාවිතා කිරීමට ගත් තීරණය පිළිබඳ මතභේදයකිනි. මෙම systemd මත ඩේබියන් නිල ස්ථාවරය බව ප්රකාශ කිරීම සම්පූර්ණ අන් අය අධි ආම්ලිකතාවය . Systemd මතභේදයට උනන්දුවක් දක්වන පා readers කයන්ට මෙම උණුසුම් මාතෘකාව දිගටම සාකච්ඡා කළ හැකිය . කෙසේ වෙතත්, ඔබේ හිස සිසිල්ව තබා ගැනීමට සහ ඔබේ කටහ civil සිවිල් ලෙස තබා ගැනීමට අපි ඔබව දිරිමත් කරමු. දේවාන් හි දී අපි ආපසු හැරී බැලීමට වඩා ඒවා වැරදි ලෙස වැඩසටහන්ගත කිරීමට කැමැත්තෙමු. [...]
පද්ධතිමය මතභේදයට කැප වූ සමහර වෙබ් අඩවි සහ ලිපි නිර්මාණය කර ඇත:
නැත ගොඩක් හැකර් පුවත් මත රසවත් සාකච්ඡාවක්:
වෙනත් ඩිස්ට්රෝවල ද ඒ හා සමාන ප්රවණතා නිරීක්ෂණය කළ හැකිය:
upstart DOTADIW හි යුනික්ස් දර්ශනය අනුගමනය කරයි - "එක් දෙයක් කර එය හොඳින් කරන්න." එය සාම්ප්රදායික init ඩීමන් වෙනුවට ආදේශ කිරීමකි. සේවා ආරම්භ කිරීම සහ නැවැත්වීම හැර වෙනත් කිසිවක් එය නොකරයි. අනෙකුත් කාර්යයන් වෙනත් විශේෂිත උප පද්ධති වෙත පවරනු ලැබේ.
systemd ඊට වඩා බොහෝ දේ කරයි. සේවාවන් ආරම්භ කිරීම හා නැවැත්වීමට අමතරව මුරපද, පිවිසුම්, පර්යන්ත, බල කළමනාකරණය, කර්මාන්තශාලා යළි පිහිටුවීම, ලොග් සැකසීම, ගොනු පද්ධති සවිකිරීමේ ස්ථාන, ජාලකරණය සහ තවත් බොහෝ දේ කළමනාකරණය කරයි - සමහර විශේෂාංග සඳහා නිව්ස් ගොනුව බලන්න .
අනුව systemd ඇති කර ඇති කුමක්ද සඳහා ඉදිරිදර්ශනයක් හා ඉදිරියේ ඇත්තේ කුමක් GNOME.asia දී 2014 දී Lennart Poettering විසින් ඉදිරිපත්, මෙහි systemd ප්රධාන අරමුණු, මේ වන විටත් ආවරණය හා ප්රගතිය කෙරෙහි තවමත් බව එම බව ප්රදේශ:
අපේ අරමුණු
- බිටු මල්ලක සිට ලිනක්ස් තරඟකාරී පොදු අරමුණු මෙහෙයුම් පද්ධතියක් බවට පත් කිරීම.
- අන්තර්ජාලයේ ඊළඟ පරම්පරාවේ මෙහෙයුම් පද්ධතිය ගොඩනැගීම බෙදාහැරීම් අතර අර්ථ විරහිත වෙනස්කම් ඒකාබද්ධ කිරීම
නවෝත්පාදනය නැවත මූලික මෙහෙයුම් පද්ධතියට ගෙන ඒම
ඩෙස්ක්ටොප්, සර්වර්, බහාලුම්, කාවැද්දූ, ජංගම, වලාකුළු, පොකුරු ,. . . මෙම ප්රදේශ ඔබ සිතනවාට වඩා සමීප වේ
- පරිපාලක සංකීර්ණතාව අඩු කිරීම, අධීක්ෂණයකින් තොරව විශ්වසනීයත්වය
- සෑම දෙයක්ම ස්වයං වින්දනය කළ හැකිය
- ස්වයංක්රීය සොයාගැනීම, ප්ලග් සහ සෙල්ලම් කිරීම ප්රධාන ය
- ඒවා කැඩී ඇති තැන අපි සවි කරමු, ඒවා කිසි විටෙකත් පටවන්න එපා
අප දැනටමත් ආවරණය කරන දේ:
init පද්ධතිය, ජර්නල් ලොග් වීම, පිවිසුම් කළමනාකරණය, උපාංග කළමනාකරණය, තාවකාලික හා වාෂ්පශීලී ගොනු කළමනාකරණය, ද්විමය හැඩතල ලියාපදිංචි කිරීම, පසුතල සුරැකීම / ප්රතිස්ථාපනය කිරීම, rfkill සුරැකීම / ප්රතිස්ථාපනය කිරීම, බූට්චාර්ට්, රීඩ්හෙඩ්, සංකේතාත්මක ගබඩා සැකසුම, EFI / GPT කොටස් සොයාගැනීම, අථත්ය යන්ත්ර / බහාලුම් ලියාපදිංචිය, අවම බහාලුම් කළමනාකරණය, ධාරක නාම කළමනාකරණය, ස්ථාන කළමනාකරණය, කාල කළමනාකරණය, අහඹු බීජ කළමනාකරණය, sysctl විචල්ය කළමනාකරණය, කොන්සෝල කළමනාකරණය ,. . .
අප කරමින් සිටින්නේ කුමක්ද:
- ජාල කළමනාකරණය
- systemd-networkd
- දේශීය DNS හැඹිලිය, mDNS ප්රතිචාරකයා, LLMNR ප්රතිචාරකයා, DNSSEC සත්යාපනය
- කර්නලයේ IPC
- kdbus, sd-bus
- NTP සමඟ කාල සමමුහුර්තකරණය
- systemd-timesyncd
- බහාලුම් සමඟ වැඩි ඒකාබද්ධ කිරීම
- සේවාවන්හි වැලිපිල්ල
- යෙදුම්වල වැලිපිල්ල
- OS රූප ආකෘතිය
- බහාලුම් රූප ආකෘතිය
- යෙදුම් රූප ආකෘතිය
- ස්වයංක්රීය සොයාගැනීම් සහිත ජීපීටී
- අස්ථායි පද්ධති, ක්ෂණික පද්ධති, කර්මාන්තශාලා යළි පිහිටුවීම
- / usr යනු මෙහෙයුම් පද්ධතියයි
- / etc (විකල්ප) වින්යාසය
- / var යනු (අත්යවශ්ය) තත්වයයි
- පරමාණුක නෝඩ් ආරම්භ කිරීම සහ යාවත්කාලීන කිරීම්
- වලාකුළ සමඟ ඒකාබද්ධ වීම
- නෝඩ් හරහා සේවා කළමනාකරණය
- සත්යාපනය කළ හැකි OS රූප
- ස්ථිරාංග වෙත යන සියල්ලම
- ඇරඹුම් පූරණය
ලෙස fpmurphy1 අදහස් සඳහන් කල පරිදි, "එය systemd දුර පද්ධතිය ආරම්භක සරලව බව ඔබ්බට වසර ගණනාවක් පුරා වැඩ එහි විෂය පථය පුළුල් වී ඇති බව ඔහු පෙන්වා දෙයි කළ යුතුය."
අදාළ තොරතුරු බොහොමයක් මෙහි ඇතුළත් කිරීමට මම උත්සාහ කළෙමි. මෙහි දී මම ඇසූ පරිදි ආරම්භක පද්ධති ලෙස භාවිතා කරන විට Upstart සහ systemd හි පොදු ලක්ෂණ සංසන්දනය කරමි. ආරම්භක පද්ධතියේ විෂය පථයෙන් ඔබ්බට ගිය systemd හි ලක්ෂණ පමණක් ආරම්භක සමඟ සැසඳිය නොහැකි නමුත් ඒවායේ පැවැත්ම වැදගත් වේ. එම ව්යාපෘති දෙක අතර වෙනස තේරුම් ගැනීමට. වැඩි විස්තර සඳහා අදාළ ලියකියවිලි පරීක්ෂා කළ යුතුය.
වැඩි විස්තර මෙතැනින් සොයාගත හැකිය:
මෙම LinOxide කණ්ඩායම නිර්මානය කර ඇති SysV init ලිනක්ස් සංක්ෂේපසහාය එදිරිව Systemd .
service <foo> start/stop/restart/status
තවමත් හොඳින් වැඩ කරයි. බොහෝ යුනික්ස් මෘදුකාංග මෙන්, systemd ද සුපුරුදු පෙරනිමි සඳහා විධාන අනුකූලතාව සපයයි.
සාම්ප්රදායික SysV init පද්ධතියේ සීමාවන් සමඟ ඇති සමහර ගැටලු විසඳීමට උත්සාහ කිරීම upstart සහ systemd යන දෙකම වේ. උදාහරණයක් ලෙස, සමහර සේවාවන් වෙනත් සේවාවන්ගෙන් පසුව ආරම්භ කළ යුතුය (නිදසුනක් ලෙස, ජාලය ක්රියාත්මක වන තෙක් ඔබට NFS ගොනු පද්ධති සවි කළ නොහැක), නමුත් SysV හි එය හැසිරවිය හැකි එකම ක්රමය වන්නේ rc # .d බහලුමේ ඇති සම්බන්ධතා සැකසීමයි. ඒවා එකින් එක ඉදිරියෙන් තිබේ. එයට එකතු කරන්න, පරායත්තතා එකතු වූ විට හෝ වෙනස් කළ විට ඔබට පසුව සියල්ල නැවත අංකනය කිරීමට අවශ්ය විය හැකිය. අවශ්යතා නිර්වචනය කිරීම සඳහා Upstart සහ Systemd වඩා බුද්ධිමත් සැකසුම් ඇත. එසේම, සෑම දෙයක්ම කිසියම් ආකාරයක ෂෙල් පිටපතක් වන අතර සෑම කෙනෙකුම හොඳම ආරම්භක පිටපත් ලියන්නේ නැත. එය ආරම්භක වේගයට ද බලපායි.
Systemd හි සමහර වාසි මට දැකිය හැකිය:
මා දන්නා එක් අවාසියක් නම්, systemd හි සොකට් / එෆ්එච් පූර්ව වෙන්කිරීමේ වාසිය ලබා ගැනීම සඳහා, බොහෝ ඩීමන් පද්ධති පද්ධතියට එෆ්එච් ලබා දීමට නම් ඒවා ඇලවිය යුතුය.
කියත් systemd
මත සඳහන් ආරුක්කුව සාමාන්ය ML අද. එබැවින් එය කියවන්න. එච් ඔන්ලයින් වෙන කවරදාටත් වඩා ලිනක්ස් තාක්ෂණය සඳහා හොඳ ප්රභවයක් වන අතර සිස්ටම් ආරම්භය සහ අප්ස්ටාර්ට් විකල්පය ලෙස සිස්ටම්ඩ් පිළිබඳ පර්යේෂණ ආරම්භ කිරීමට මගේ ස්ථානය සොයාගත්තෙමි . කෙසේ වෙතත් එච් ඔන්ලයින් ලිපිය (මේ අවස්ථාවේ දී) එතරම් ප්රයෝජනවත් කියවීමක් නොවේ, එය පිටුපස ඇති සැබෑ භාවිතය එය ප්රයෝජනවත් කියවීම් වලට සබැඳි ලබා දීමයි.
ඇත්ත පිළිතුර වන්නේ systemd නිවේදනයයි . එමඟින් SysV initd හි ඇති වැරැද්ද කුමක්ද සහ නව පද්ධති විසින් කළ යුතු දේ පිළිබඳ තීරණාත්මක කරුණු කිහිපයක් ලබා දෙයි
අඩුවෙන් ආරම්භ කිරීමට.
තවත් සමාන්තරව ආරම්භ කිරීමට.
මෙය සිදු කිරීම සඳහා එහි ප්රධාන සැලැස්ම වනුයේ ඔවුන්ට අවශ්ය පරිදි සේවාවන් ආරම්භ කිරීම සහ එම සේවාව සඳහා සොකට් එකක් ආරම්භ කිරීම ය, එමඟින් අවශ්ය සේවාව ඩීමන් සම්පුර්ණයෙන්ම මාර්ගගත වීමට බොහෝ කලකට පෙර නිර්මාණය කළ සොකට්ටුවට සම්බන්ධ කළ හැකිය. පෙනෙන විදිහට සොකට් එකක් මඟින් ස්වාරක්ෂක දත්ත කුඩා ප්රමාණයක් රඳවා ගනු ඇති අතර එයින් අදහස් වන්නේ ප්රමාදය තුළ කිසිදු දත්තයක් අහිමි නොවන බවයි, ඩීමන් මාර්ගගතව ඇති විගසම එය හසුරුවනු ඇත.
සැලැස්මේ තවත් කොටසක් වන්නේ ගොනු පද්ධති අනුක්රමික නොකිරීමයි, නමුත් ඒ වෙනුවට ඉල්ලුම ඇති අයද සවි කරන්න, ඒ ආකාරයෙන් ඔබ බලා නොසිටින ලෙස /home/
යනාදිය (ව්යාකූල නොවිය යුතුය /etc
) සවි කිරීමට සහ / හෝ fsck
ඔබට හැකි විට ආරම්භක ඩීමන් /
සහ /var/
යනාදිය දැනටමත් සවි කර ඇත. එය මේ සඳහා ස්වයංක්රීයව භාවිතා කිරීමට යන බව කියා සිටියේය.
.desktop
ස්ක්රිප්ට් වෙනුවට ආදේශකයක් ලෙස ස්ටයිල් ඉන්ට් ඩිස්ක්රිප්ටර් නිර්මාණය කිරීමේ ඉලක්කය ද එහි ඇත . මෙම මන්දගාමී ටොන් වැළැක්වීම ඇත sh
වැනි දේවල් වලින් ක්රියාවලිය හා ක්රියාවලීන් වඩාත් හැඳි sed
සහ grep
බොහෝ විට ෂෙල් අක්ෂර භාවිතා කරන බව.
සමහර සේවාවන් ඉල්ලා සිටින තුරු ඒවා ආරම්භ නොකිරීමටද ඔවුන් සැලසුම් කර ඇති අතර, ඒවා තවදුරටත් අවශ්ය නොවන්නේ නම් ඒවා වසා දමන්න, බ්ලූටූත් මොඩියුලය සහ ඩීමන් අවශ්ය වන්නේ ඔබ උදාහරණයක් ලෙස බ්ලූටූත් උපාංගයක් භාවිතා කරන විට පමණි. ලබා දී ඇති තවත් උදාහරණයක් වන්නේ ssh ඩීමන් ය. Inetd ට හැකියාව ඇති කාරණය මෙයයි. පුද්ගලිකව මට මෙය අවශ්ය යැයි විශ්වාස නැත, මන්දයත් මට ඒවා අවශ්ය වූ විට ප්රමාද වීම අදහස් විය හැකි අතර, ssh සම්බන්ධයෙන් නම්, එයින් අදහස් වන්නේ ආරක්ෂක අවදානමක් ඇතිවිය හැකි බවයි, මගේ ආරම්භය සම්මුතියකට ලක් වුවහොත් මුළු පද්ධතියම වනු ඇත. කෙසේ වෙතත්, මෙම පද්ධතිය උල්ලං to නය කිරීම සඳහා මෙය භාවිතා කිරීම කළ නොහැකි බවත්, මට අවශ්ය නම් එක් සේවාවක් සඳහා සහ වෙනත් ආකාරවලින් මෙම අංගය අක්රිය කළ හැකි බවත් මට දන්වා සිටිමි.
තවත් අංගයක් වනුයේ නිතිපතා නියමිත කාල පරතරයකින් හෝ නිශ්චිත වේලාවක කාල සිදුවීම් මත පදනම්ව ආරම්භ කිරීමේ හැකියාවයි. ඒ කුමක් සඳහා සමාන වේ crond
හා atd
දැන් කරන්න. මට පැවසුවද එය පරිශීලකයාට "ක්රෝන්" සහාය නොදක්වයි. පුද්ගලිකව මෙය වඩාත්ම අර්ථ විරහිත දෙයක් ලෙස පෙනේ. මෙය බහුකාර්ය පරිසරයක වැඩ නොකරන පුද්ගලයින් විසින් ලියන ලද්දක් / සිතුවිල්ලක් යැයි මම සිතමි, ඔබ පද්ධතියේ එකම පරිශීලකයා නම්, පරිශීලක ක්රෝන් සඳහා වැඩි අරමුණක් නැත, මූල ලෙස ක්රියාත්මක නොවීම හැර. මම දිනපතා බහුකාර්ය පද්ධති මත වැඩ කරන අතර රීතිය සෑම විටම පරිශීලක ස්ක්රිප්ට් භාවිතා කරයි. නමුත් සමහර විට ඔවුන් කරන දුරදක්නා මා සතුව නොමැති අතර, එය කිසිසේත් මට දුවන්නට නොහැකි වන පරිදි crond
හෝ atd
එය සිදු නොකරනු ඇත, එබැවින් එය කිසිවෙකුට හානියක් නොවන අතර මා සිතන සංවර්ධකයින්.
Systemd හි ඇති විශාල අවාසිය නම්, සමහර ඩීමන් වලින් උපරිම ප්රයෝජන ලබා ගැනීම සඳහා එය වෙනස් කිරීමට සිදුවීමයි. ඔවුන් දැන් වැඩ කරනු ඇත, නමුත් ඒවා විශේෂයෙන් එහි සොකට් ආකෘතිය සඳහා ලියා ඇත්නම් ඒවා වඩා හොඳින් ක්රියා කරයි.
බොහෝ දුරට පද්ධතියේ ජනතාවගේ ගැටලුව වන්නේ උඩුමහලේ ඇති සිදුවීම් පද්ධතිය වන අතර එය අර්ථවත් නොවන බව හෝ අනවශ්ය යැයි ඔවුන් විශ්වාස කරන බව පෙනේ. සමහරවිට ඔවුන්ගේ වචනවලින් එය වඩාත් සුදුසු වේ.
නැතහොත් සරලව කිවහොත්: පරිශීලකයා දැන් ඩී-බස් ආරම්භ කිරීම කිසිසේත් ම නෙට්වර්ක් මැනේජර් ආරම්භ කළ යුතු බවට ඇඟවීමක් නොවේ (නමුත් මෙය අප්ස්ටාර්ට් විසින් කරනු ඇත). එය අනෙක් පැත්තෙන් හරි ය: පරිශීලකයා නෙට්වර්ක් මැනේජර් ඉල්ලා සිටින විට, එය නියත වශයෙන්ම ඩී-බස් ආරම්භ කළ යුතු බවට ඇඟවීමකි (මෙය බොහෝ පරිශීලකයින් අපේක්ෂා කරන දෙයයි, හරිද?).
හොඳ ආරම්භක පද්ධතියක් ආරම්භ කළ යුත්තේ අවශ්ය දේ පමණක් වන අතර ඉල්ලුමට අනුව ය. කම්මැලි හෝ සමාන්තරගත හා කල්තියා. කෙසේ වෙතත් එය අවශ්ය ප්රමාණයට වඩා ආරම්භ නොකළ යුතුය, විශේෂයෙන් එම සේවාව භාවිතා කළ හැකි සෑම දෙයක්ම ස්ථාපනය කර නැත.
මා දැනටමත් පවසා ඇති පරිදි මෙය systemd නිවේදනයෙහි වඩාත් විස්තරාත්මකව සාකච්ඡා කෙරේ .
ඔබ බොහෝ දෙනාට අමතක වී ඇති එක් දෙයක් නම් cgroups හි ක්රියාවලි සංවිධානය කිරීමයි .
Systemd විසින් යමක් ආරම්භ කළහොත්, එය මෙම කාරණය තමන්ගේම සමූහයකට දමනු ඇති අතර එම ක්රියාවලියට එම cgroup වෙතින් ගැලවීම සඳහා (පෙර නොවූ) අර්ථයක් නොමැත. එහි ප්රතිවිපාක මෙන්න:
Systemd පිළිබඳ සවිස්තරාත්මක බැල්මක් සඳහා, පළමු සැලසුම් කෙටුම්පත් වලින් පටන් ගෙන (සහ උඩු මහල ඇතුළුව දැනට පවතින ආරම්භක පද්ධති පිළිබඳ සවිස්තරාත්මක විවේචනයක් සහ ඒවා නිවැරදි කිරීමට systemd යෝජනා කරන්නේ කෙසේද), එහි මුල් පිටුවට යන්න . කාලයාගේ ඇවෑමෙන්, ආරම්භය පිළිබඳ ලිපි කිහිපයක් LWN හි පළ වී තිබේ. Systemd (හෝ pulseaudio) පිළිබඳ කිසියම් සඳහනක් එහි දී දැවෙන ගිනිදැල් අවුලුවන බවට උපදෙස් දෙන්න.
IMVHO (සහ ෆෙඩෝරා පරිශීලකයෙකු ලෙස) මම ඒ ගැන ඉතා සතුටු වෙමි . වර්තමාන ලිනක්ස් පද්ධතිවල සංකීර්ණත්වය හැසිරවීමට මෙම රේඛාවේ යමක් දිගු කලක් ගතවී ඇත. ෆෙඩෝරා ටික කලක් උඩුමහලේ භාවිතා කළ නමුත් එය කිසි විටෙකත් සිස්වින්ට් වෙනුවට විසිතුරු ආදේශකයක් ලෙස වේදිකාවෙන් බැහැර වූයේ නැත. ඇරඹුම් වින්යාසය සරල කිරීම පිළිබඳ එහි පොරොන්දුව ලැබෙන්නේ පිරිවැයෙනි නැවතඅන්යෝන්ය පරායත්තයන් අතින් සැකසීම, එය ක්රියා නොකරයි. පද්ධතිමය සංඛ්යා රඳා පැවැත්ම තනිවම (හෝ පරායත්තතාවයන් නොසලකා දේවල් ආරම්භ කිරීමට ඉඩ දෙයි, ඒවා නිරාකරණය වේ). තවත් විශාල වාසියක් (සමහරු පවසන්නේ එය දැඩි අවාසියක් බවයි) එය ලිනක්ස් විශේෂිත ලක්ෂණ හිල්ටයට ගසාකෑමයි (විශේෂයෙන් cgroups විසින් ඩීමන් සහ එහි සියලු පරම්පරාවන් හුදකලා කිරීමට ඉඩ සලසයි, එබැවින් ඒවා නිරීක්ෂණය කිරීම, සම්පත් සීමා කිරීම හෝ මරා දැමීම පහසුය. කණ්ඩායමක්; තවත් බොහෝ අය සිටිති).
ජර්නල් කිරීම - සිස්ටම් යනු වින්එස්එක්ස් ෆෝල්ඩරයට සමාන වන අතර එය ලොග් වන විට එය පිටපත් පිටපත් නිර්මාණය කරයි. මම එය හඳුන්වන්නේ ඇරඹුම් කාරක කුකීස් ලෙසයි.