মনে হচ্ছে systemd গরম নতুন Init ব্লকে সিস্টেম, হিসাবে একই ভুঁইফোড় কয়েক বছর আগের কথা। প্রত্যেকের জন্য কি ভাল / কনস আছে? এছাড়াও, প্রতিটি অন্যান্য ডিআইডি সিস্টেমের সাথে কীভাবে তুলনা করে?
মনে হচ্ছে systemd গরম নতুন Init ব্লকে সিস্টেম, হিসাবে একই ভুঁইফোড় কয়েক বছর আগের কথা। প্রত্যেকের জন্য কি ভাল / কনস আছে? এছাড়াও, প্রতিটি অন্যান্য ডিআইডি সিস্টেমের সাথে কীভাবে তুলনা করে?
উত্তর:
এখানে বেশিরভাগ উত্তর পাঁচ বছরের পুরানো তাই কিছু আপডেটের সময় এসেছে।
উবুন্টু পূর্বনির্ধারিতভাবে আপস্টার্ট ব্যবহার করত তবে তারা গত বছর এটি সিস্টেমডের পক্ষে ছেড়ে দিয়েছে - দেখুন:
যে কারণে উবুন্টু উইকিতে আপস্টার্ট ব্যবহারকারীদের জন্য সিস্টেমড একটি দুর্দান্ত নিবন্ধ রয়েছে - upstart এবং systemd এর মধ্যে খুব বিস্তারিত তুলনা এবং upstart থেকে systemd এ রূপান্তর গাইড।
(মনে রাখবেন যে উবুন্টু উইকি অনুসারে আপনি উবুন্টুর বর্তমান সংস্করণগুলিতে ডিফল্টরূপে ইনস্টল upstart-sysv
ও চালনা চালিয়ে চালিত করতে পারেন sudo update-initramfs -u
তবে সিস্টেমেড প্রকল্পের ক্ষেত্র বিবেচনা করে আমি জানি না যে এটি বাস্তবে কীভাবে কাজ করে, অথবা সিস্টেমড হয় কি না আনইনস্টল করা সম্ভব।)
নীচের কমান্ডস এবং স্ক্রিপ্ট বিভাগের বেশিরভাগ তথ্য সেই নিবন্ধে ব্যবহৃত কয়েকটি উদাহরণ থেকে গৃহীত হয়েছে (যেটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন-শেয়ারএলক 3.0 লাইসেন্সের আওতায় স্ট্যাক এক্সচেঞ্জ ব্যবহারকারীর অবদানের মতো সহজেই লাইসেন্সযুক্ত )।
সাধারণ কমান্ড এবং সাধারণ স্ক্রিপ্টগুলির দ্রুত তুলনা এখানে দেওয়া হল, বিস্তারিত ব্যাখ্যার জন্য নীচের বিভাগগুলি দেখুন। এই উত্তরটি আপস্টার্ট-ভিত্তিক সিস্টেমগুলির পুরানো আচরণকে সিস্টেমড-ভিত্তিক সিস্টেমগুলির নতুন আচরণের সাথে তুলনা করছে, যেমন প্রশ্নে জিজ্ঞাসা করা হয়েছে, তবে নোট করুন যে "আপস্টার্ট" হিসাবে ট্যাগ করা কমান্ডগুলি আপস্টার্ট-নির্দিষ্ট নয় - এগুলি প্রায়শই আদেশ হয় যে প্রতিটি নন-সিস্টেমড লিনাক্স এবং ইউনিক্স সিস্টেমে সাধারণ।
su
machinectl shell
(নীচে "su কমান্ড প্রতিস্থাপন" বিভাগ দেখুন)
screen
systemd-run --user --scope screen
(নীচে "ব্যাকগ্রাউন্ড প্রক্রিয়াগুলির অপ্রত্যাশিত হত্যা" বিভাগটি দেখুন)
tmux
systemd-run --user --scope tmux
(নীচে "ব্যাকগ্রাউন্ড প্রক্রিয়াগুলির অপ্রত্যাশিত হত্যা" বিভাগটি দেখুন)
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 / লগ / আপস্টার্ট ডিরেক্টরিতে সাধারণ পাঠ্য ফাইল হয়, তাই আপনি এগুলি যথারীতি প্রক্রিয়া করতে পারেন:
cat /var/log/upstart/foo.log
tail -f /var/log/upstart/foo.log
সিস্টেমেড লগগুলিতে একটি অভ্যন্তরীণ বাইনারি ফর্ম্যাটে সংরক্ষণ করা হয় (পাঠ্য ফাইল হিসাবে নয়) সুতরাং journalctl
এগুলি অ্যাক্সেস করার জন্য আপনাকে কমান্ডটি ব্যবহার করতে হবে :
sudo journalctl -u foo
sudo journalctl -u foo -f
লিখিত upstart স্ক্রিপ্ট উদাহরণ /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
এতে লিখিত পদ্ধতিযুক্ত স্ক্রিপ্টের উদাহরণ /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 মধ্যে মিশে গিয়ে তৈরি করা হয়েছে:
কারণ, লেনার্ট পোয়েটারিংয়ের মতে, "সু আসলেই একটি ভাঙা ধারণা" ।
তিনি ব্যাখ্যা করেছেন যে "আপনি আগের মতো সু ও সুডো ব্যবহার করতে পারেন তবে এটি পুরোপুরি কার্যকর হবে বলে আশা করবেন না " ।
su
সদৃশ আচরণ অর্জনের সরকারী উপায় এখন:
machinectl shell
লেনার্ট পোয়েটারিং # 825 ইস্যু করার আলোচনায় এটি আরও ব্যাখ্যা করেছেন :
"ঠিক আছে, এ সম্পর্কে দীর্ঘ আলোচনা হয়েছে, তবে সমস্যাটি হ'ল সু যা করার কথা তা খুব অস্পষ্ট। , এবং এটির জন্য এটি ব্যবহার করা ভাল, তবে এটি সম্পূর্ণ লগইন নয় এবং এটির জন্য ভুল হওয়া উচিত নয়। - লেনার্ট কবিতা
আরো দেখুন:
আদেশগুলি:
প্রত্যাশার মতো আর কাজ করবে না । উদাহরণস্বরূপ, nohup
আপনি আপনার সেশন থেকে লগ আউট করার পরে প্রক্রিয়াটি চলতে থাকবে তা নিশ্চিত করার জন্য একটি পসিক্স কমান্ড। এটি আর সিস্টেমে কাজ করে না। এছাড়াও প্রোগ্রামগুলির মতো screen
এবং tmux
বিশেষ পদ্ধতিতে ডাকা প্রয়োজন বা অন্যথায় আপনি তাদের সাথে যে প্রক্রিয়াগুলি চালাচ্ছেন সেগুলি মারা যাবে (যখন এই প্রক্রিয়াগুলি না পেয়ে পাওয়া না যায় সাধারণত পর্দা বা tmux প্রথম স্থানে চলার মূল কারণ)।
এটি কোনও ভুল নয়, এটি একটি ইচ্ছাকৃত সিদ্ধান্ত, তাই ভবিষ্যতে এটি ঠিক হওয়ার সম্ভাবনা নেই is লেনার্ট পোয়েটারিং এই বিষয়টি সম্পর্কে বলেছেন :
আমার দৃষ্টিতে এটি ইউনিক্সের পক্ষে আসলেই বেশ বিস্ময়কর ছিল যে এটি ডিফল্টরূপে স্বেচ্ছাচারী ব্যবহারকারীর কোডটি লগআউটের পরে অনিয়ন্ত্রিত হয়ে থাকে। বহু ওএস লোকের মধ্যে এটি যুগের পর যুগ ধরে আলোচনা করা হয়েছে যে এটি সম্ভব হওয়া উচিত তবে অবশ্যই এটি ডিফল্ট হওয়া উচিত নয়, তবে ডিফল্ট থেকে কোনও বিকল্পে রূপান্তর করতে স্যুইচটি ফ্লিপ করার পক্ষে কেউ এতদিন সাহস করে নি। লগআউট করার পরে ব্যবহারকারীর সেশনগুলি পরিষ্কার না করা কেবল কুৎসিত এবং কিছুটা হ্যাকিশই নয় তবে এটি একটি সুরক্ষা সমস্যা। সিস্টেমড ২৩০ এখন অবশেষে স্যুইচটি উল্টিয়ে ফেলে এবং অবশেষে ডিফল্টরূপে ব্যবহারকারী লগ আউট করার পরে সমস্ত কিছু সঠিকভাবে পরিষ্কার করে দেয়।
আরও তথ্যের জন্য দেখুন:
এক উপায়ে সিস্টেমেড পিছনের দিকে কাজ করে - আপস্টার্ট কাজগুলি যত তাড়াতাড়ি সম্ভব শুরু হয় এবং সিস্টেমড কাজগুলি যখন তাদের করতে হবে তখনই শুরু হয়। দিনের শেষে একই কাজ দুটি সিস্টেম এবং একই সাথে একই ক্রমে শুরু করা যেতে পারে তবে আপনি এটিকে কথা বলার জন্য একটি বিপরীত দিক থেকে দেখে মনে করেন।
সিস্টেমড ফর আপস্টার্ট ব্যবহারকারীরা কীভাবে এটি ব্যাখ্যা করে তা এখানে:
প্রক্রিয়াগুলি (জব) শুরু করার জন্য আপস্টার্টের মডেল হ'ল 'লোভী ইভেন্ট-ভিত্তিক ", অর্থাত্ যে সমস্ত উপলভ্য চাকরি যার প্রারম্ভিক ইভেন্টগুলি ঘটে থাকে তা যত তাড়াতাড়ি সম্ভব শুরু করা হয়। বুট চলাকালীন, আপস্টার্ট কিছু প্রাথমিক ইভেন্টগুলিকে সংশ্লেষ করে যেমন স্টার্টআপ বা আরসিএস "গাছের মূল" হিসাবে, প্রাথমিক পরিষেবাগুলি সেগুলি থেকে শুরু হয় এবং পরবর্তী পরিষেবাগুলি পূর্ববর্তী চলমান অবস্থায় শুরু হয়। একটি নতুন কাজের সক্রিয় হওয়ার জন্য কেবল তার কনফিগারেশন ফাইলটি ইনস্টল করা প্রয়োজন etc
প্রসেস শুরু করার জন্য সিস্টেমডের মডেল (ইউনিট) হ'ল "অলস নির্ভরতা-ভিত্তিক", অর্থাত্ একটি ইউনিট কেবল তখনই শুরু হবে যখন এবং যখন অন্য কোনও সূচনা ইউনিট নির্ভর করে। বুটের সময়, সিস্টেমড একটি "রুট ইউনিট" শুরু করে (default.target, গ্রাবের মধ্যে ওভাররাইড করা যেতে পারে), যা ট্রানজিটিভভাবে প্রসারিত হয় এবং এর নির্ভরতা শুরু করে। সক্রিয় হওয়ার জন্য একটি নতুন ইউনিটের বুট সিকোয়েন্সের একটি ইউনিটের নির্ভরতা হিসাবে নিজেকে যুক্ত করতে হবে (সাধারণত মাল্টি-ইউজার.অরগেট) active
উইকিপিডিয়া অনুসারে এখন কিছু সাম্প্রতিক তথ্য:
( আপ টু ডেট তথ্যের জন্য উইকিপিডিয়া দেখুন )
অতীতে ডিবিয়ানের একটি কাঁটাচামচ সিস্টেমড এড়াতে প্রস্তাবিত হয়েছিল । Devuan গনুহ + + লিনাক্স তৈরী করা হয়েছে - ছাড়া systemd হল ডেবিয়ান এর একটি কাঁটাচামচ (ধন্যবাদ fpmurphy1 মন্তব্য এটা ইশারা জন্য)।
এই বিতর্ক সম্পর্কে আরও তথ্যের জন্য, দেখুন:
আপনারা অনেকেই ইতিমধ্যে জানেন, ইয়ান জ্যাকসনের প্রচারিত আরআর ডিবিয়ান ভোট দেবিয়ানের উত্তরাধিকার এবং এর ব্যবহারকারীদেরকে সিস্টেমড হিমস্রোত থেকে রক্ষা করতে কার্যকর ছিল না।
এই পরিস্থিতি ব্যবস্থার উপর নির্ভরশীলতাগুলির একটি লক হওয়ার সম্ভাবনা রয়েছে যা বিকাশের স্বাধীনতার হুমকিস্বরূপ এবং এটি ডেবিয়ান, এর উজান এবং এর প্রবাহকে মারাত্মক পরিণতি অর্জন করেছে।
সিটিটিই নির্ভরতা অদলবদল করে এবং সিস্টিনিট ওভার সিস্টেমেডের একটি সূক্ষ্ম ইনস্টল করার জন্য আমাদের সময় অর্জন করতে সক্ষম হয়েছিল, তবে এমনকি এই প্রক্রিয়াটি ক্লান্তিকর এবং নাটকে পরিপূর্ণ ছিল। শেষ পর্যন্ত এক সপ্তাহ আগে ইয়ান জ্যাকসন পদত্যাগ করেছেন। [...]
আমি তাত্ক্ষণিকভাবে কার্যকরভাবে প্রযুক্তিগত কমিটি থেকে পদত্যাগ করছি।
যদিও এটি গুরুত্বপূর্ণ যে আমার সাথে একমত হওয়া প্রকল্পের 30-40% এর মতামত টিসির প্রতিনিধিত্ব করা অব্যাহত রাখা উচিত, আমি নিজেও এই মুহুর্তে স্পষ্টতই খুব বিতর্কিত am প্রকল্পের পরিচালনা সম্পর্কে যে কথোপকথনটি ব্যক্তিগতকৃত হয়েছে তা হ্রাস করার চেষ্টা করার জন্য আমার একপাশে পদক্ষেপ নেওয়া উচিত। [...]
দেউয়ান ডিবিয়ানের জন্য ডিফল্ট থিম সিস্টেম হিসাবে ব্যবহারের সিদ্ধান্ত নিয়ে বিতর্ক থেকেই জন্মেছিল। Systemd হল অফিসিয়াল ডেবিয়ান অবস্থান দাবী যে পূর্ণ অন্যদের debunked আছে । আগ্রহী পাঠকগণ এই বিতর্কিত বিষয় নিয়ে সিস্টেমড বিতর্ক নিয়ে আলোচনা চালিয়ে যেতে পারেন । তবে আমরা আপনাকে আপনার মাথা শীতল রাখতে এবং আপনার ভয়েসকে নাগরিক রাখতে উত্সাহিত করি। দেবুয়ানে আমরা পিছন ফিরে চেয়ে তাদের ভুল প্রোগ্রামিংয়ে আরও আগ্রহী। [...]
সিস্টেমড বিতর্ককে উত্সর্গীকৃত কিছু ওয়েবসাইট এবং নিবন্ধ তৈরি করা হয়েছে:
নেই অনেক হ্যাকার সংবাদ আকর্ষণীয় আলোচনার:
অন্যান্য ডিস্ট্রো-তেও একই রকম প্রবণতা লক্ষ্য করা যায়:
upstart DOTADIW এর ইউনিক্স দর্শন অনুসরণ করে - "একটি কাজ করুন এবং এটি ভাল করুন।" এটি theতিহ্যবাহী থিম ডিমনটির প্রতিস্থাপন। এটি পরিষেবাগুলি শুরু করা এবং বন্ধ করা ব্যতীত অন্য কিছু করে না। অন্যান্য কাজগুলি অন্যান্য বিশেষায়িত সাবসিস্টেমগুলিতে অর্পণ করা হয়।
systemd এর চেয়ে অনেক বেশি কাজ করে। পরিষেবাগুলি শুরু করা এবং বন্ধ করার পাশাপাশি এটি পাসওয়ার্ড, লগইনস, টার্মিনালগুলি, বিদ্যুৎ পরিচালনা, কারখানার পুনরায় সেট করা, লগ প্রসেসিং, ফাইল সিস্টেম মাউন্ট পয়েন্টস, নেটওয়ার্কিং এবং আরও অনেক কিছু পরিচালিত করে - কয়েকটি বৈশিষ্ট্যের জন্য নিউজ ফাইলটি দেখুন ।
জিনোম.এসিয়া-তে লেনার্ট প্যাটারিংয়ের 2014 সালে সিস্টেমড কী অর্জন করেছে এবং কী উপস্থাপনা করেছে তার জন্য একটি পরিপ্রেক্ষিত অনুসারে এখানে সিস্টেমড, ইতিমধ্যে আচ্ছাদিত অঞ্চলগুলি এবং এখনও যেগুলি অগ্রগতিতে ছিল তার মূল লক্ষ্য এখানে রয়েছে:
আমাদের উদ্দেশ্য
- বিটগুলির একটি ব্যাগ থেকে লিনাক্সকে একটি প্রতিযোগিতামূলক সাধারণ উদ্দেশ্য অপারেটিং সিস্টেমে পরিণত করা।
- ইন্টারনেটের নেক্সট জেনারেশন ওএস তৈরি করা বিতরণগুলির মধ্যে অর্থহীন পার্থক্য
কোর ওএসে নতুনত্ব আনয়ন
ডেস্কটপ, সার্ভার, ধারক, এমবেডড, মোবাইল, ক্লাউড, ক্লাস্টার,। । । এই অঞ্চলগুলি আপনি যা ভাবেন তার থেকেও কাছাকাছি
- প্রশাসকের জটিলতা, তদারকি ছাড়াই নির্ভরযোগ্যতা হ্রাস করা
- অন্তর্মুখী সব
- অটো আবিষ্কার, প্লাগ এবং প্লে হ'ল কী
- সেগুলি যেখানে ভাঙা আছে সেগুলি আমরা ঠিক করি, কখনই সেগুলি টেপ করি না
আমরা ইতিমধ্যে কি আবরণ:
init সিস্টেম, জার্নাল লগিং, লগইন পরিচালনা, ডিভাইস পরিচালনা, অস্থায়ী এবং অস্থির ফাইল পরিচালনা, বাইনারি ফর্ম্যাট রেজিস্ট্রেশন, ব্যাকলাইট সেভ / পুনরুদ্ধার, আরএফকিল সেভ / রিস্টোর, বুটচার্ট, রিডহেড, এনক্রিপ্ট স্টোরেজ সেটআপ, ইএফআই / জিপিটি পার্টিশন আবিষ্কার, ভার্চুয়াল মেশিন / ধারক নিবন্ধকরণ, ন্যূনতম ধারক পরিচালনা, হোস্টনেম পরিচালনা, স্থানীয় ব্যবস্থাপনা, সময় ব্যবস্থাপনা, র্যান্ডম বীজ ব্যবস্থাপনা, সিস্কটিএল ভেরিয়েবল পরিচালনা, কনসোল পরিচালনা,, । ।
আমরা কী নিয়ে কাজ করছি:
- নেটওয়ার্ক ব্যবস্থাপনা
- systemd হল-networkd
- স্থানীয় ডিএনএস ক্যাশে, এমডিএনএস প্রতিক্রিয়াকারী, এলএলএমএনআর উত্তরদাতা, ডিএনএসএসইসি যাচাইকরণ
- কার্নেলের আইপিসি
- kdbus, sd-bus
- এনটিপির সাথে সময় সিঙ্ক্রোনাইজেশন
- systemd হল-timesyncd
- পাত্রে আরও সংহতকরণ
- পরিষেবার স্যান্ডবক্সিং ing
- অ্যাপসের স্যান্ডবক্সিং
- ওএস চিত্র বিন্যাস
- ধারক ইমেজ বিন্যাস
- অ্যাপের চিত্র ফর্ম্যাট
- স্বয়ংক্রিয় আবিষ্কারের সাথে জিপিটি
- রাজ্যহীন সিস্টেম, তাত্ক্ষণিক সিস্টেম, কারখানা রিসেট
- / usr হ'ল ওএস
- / ইত্যাদি হ'ল (alচ্ছিক) কনফিগারেশন
- / var হল (alচ্ছিক) অবস্থা state
- পারমাণবিক নোড সূচনা এবং আপডেট
- মেঘের সাথে একীকরণ
- নোড জুড়ে পরিষেবা পরিচালনা
- যাচাইযোগ্য ওএস চিত্রগুলি
- ফার্মওয়্যারের সমস্ত উপায়
- বুট লোড হচ্ছে
যেমন মন্তব্যগুলিতে এফএমপিউরফাই 1 উল্লেখ করেছে, "এটি চিহ্নিত করা উচিত যে সিস্টেমে সিস্টেম শুরুর চেয়ে বহু বছর ধরে তার কাজের ক্ষেত্রটি প্রসারিত করেছে।"
আমি এখানে বেশিরভাগ প্রাসঙ্গিক তথ্য অন্তর্ভুক্ত করার চেষ্টা করেছি। এখানে আমি আপস্টার্ট এবং সিস্টেমেডের সাধারণ বৈশিষ্ট্যগুলির সাথে তুলনা করছি যখন প্রশ্নটিতে জিজ্ঞাসিত ডিআইআই সিস্টেম হিসাবে ব্যবহৃত হয় এবং আমি কেবল সিস্টেমডের বৈশিষ্ট্যগুলি উল্লেখ করি যা একটি এনআর সিস্টেমের পরিধি ছাড়িয়ে যায় কারণ সেগুলি স্টার্টআপের সাথে তুলনা করা যায় না, তবে তাদের উপস্থিতি গুরুত্বপূর্ণ এই দুটি প্রকল্পের মধ্যে পার্থক্য বুঝতে। প্রাসঙ্গিক ডকুমেন্টেশন আরও তথ্যের জন্য পরীক্ষা করা উচিত।
আরও তথ্য এখানে পাওয়া যাবে:
LinOxide টিম একটি সৃষ্টি করেছেন systemd বনাম সিস আইনিট লিনাক্স Cheatsheet ।
service <foo> start/stop/restart/status
এখনও ঠিক কাজ করে work বেশিরভাগ ইউনিক্স সফ্টওয়্যারের মতো, সিস্টেমড সুপরিচিত ডিফল্টদের কমান্ড সামঞ্জস্যতা সরবরাহ করে।
Upstart এবং systemd উভয়ই সনাতন SysV init সিস্টেমের সীমাবদ্ধতা নিয়ে কিছু সমস্যা সমাধানের চেষ্টা করছে। উদাহরণস্বরূপ, কিছু পরিষেবাদি অন্য পরিষেবার পরে শুরু করা দরকার (উদাহরণস্বরূপ, নেটওয়ার্ক চলমান আগ পর্যন্ত আপনি এনএফএস ফাইল সিস্টেমগুলি মাউন্ট করতে পারবেন না), তবে সিসভিতে হ্যান্ডেল করার একমাত্র উপায় হ'ল আরসি # .ডি ডিরেক্টরিতে লিঙ্কগুলি সেট করা is যেমন একটি অন্যজনের আগে। এতে যোগ করুন, নির্ভরতা যুক্ত করা বা পরিবর্তিত হওয়ার পরে আপনার সমস্ত কিছু পুনরায় সংখ্যার প্রয়োজন হতে পারে। প্রয়োজনীয়তা সংজ্ঞায়িত করার জন্য আপস্টার্ট এবং সিস্টেমডের আরও বুদ্ধিমান সেটিংস রয়েছে। এছাড়াও, এই বিষয়টি নিয়ে সমস্যা আছে যে সবকিছুই কোনও না কোনও শেল স্ক্রিপ্ট, এবং সবাই সেরা থ্রি স্ক্রিপ্ট লেখেন না। এটি স্টার্টআপের গতিকেও প্রভাবিত করে।
সিস্টেমযুক্তের কয়েকটি সুবিধা আমি দেখতে পাচ্ছি:
আমার একটি অসুবিধা সম্পর্কে আমি জানি যেটি হ'ল সিস্টেমডের সকেট / এফএইচ পূর্বনির্মাণের সুবিধা গ্রহণ করার জন্য, অনেক ডিমনকে এফএইচটি সিস্টেম দ্বারা তাদের পাস করার জন্য প্যাচ করতে হবে।
দেখেছি systemd
উল্লেখ আর্চ সাধারণ এমএল আজ। সুতরাং এটি পড়ুন। এইচ অনলাইনটি বরাবরের মতো লিনাক্স প্রযুক্তির একটি দুর্দান্ত উত্স এবং আমি সেখানে সিএসভি ইনিশ এবং আপস্টার্ট বিকল্প হিসাবে সিস্টেমড গবেষণা শুরু করার জন্য আমার জায়গাটি পেয়েছি । তবে এইচ অনলাইন নিবন্ধ (এক্ষেত্রে) খুব দরকারী পড়া নয়, এর পিছনে আসল ব্যবহার হ'ল এটি দরকারী পাঠকদের লিঙ্ক দেয়।
আসল উত্তরটি সিস্টেমডের ঘোষণায় । যা SysV initd এর সাথে কী ভুল হয়েছে এবং নতুন সিস্টেমে কী করা দরকার তার কয়েকটি গুরুত্বপূর্ণ পয়েন্ট দেয়
কম শুরু করতে।
এবং সমান্তরাল আরও শুরু করতে।
এটি করার প্রধান পরিকল্পনাটি মনে হয় কেবল পরিষেবাগুলি যেমন প্রয়োজন তেমনই শুরু করা এবং সেই পরিষেবার জন্য একটি সকেট শুরু করা, যাতে ডেমোন সম্পূর্ণরূপে অনলাইন হওয়ার অনেক আগেই যে পরিষেবাটির প্রয়োজন হয় সে তৈরি সকেটের সাথে সংযোগ স্থাপন করতে পারে। স্পষ্টতই একটি সকেট অল্প পরিমাণে বাফার ডেটা ধরে রাখবে যার অর্থ ল্যাগ চলাকালীন কোনও ডেটা নষ্ট হবে না, ডেমন অনলাইন হওয়ার সাথে সাথে এটি পরিচালনা করা হবে।
পরিকল্পনার আর একটি অংশ মনে হচ্ছে ফাইল সিস্টেমগুলি সিরিয়ালিয়াল করা না করা, বরং পরিবর্তে চাহিদা অনুসারে মাউন্ট করা, সেইভাবে আপনি মাউন্ট করার জন্য আপনার /home/
ইত্যাদি ইত্যাদিতে (বিভ্রান্ত হবেন না /etc
), এবং / বা fsck
আপনি কখন হতে পারেন /
এবং /var/
ইত্যাদি হিসাবে ডেমোন শুরু করা ইতিমধ্যে মাউন্ট করা হয়েছে। এটি বলেছিল যে এটি শেষ পর্যন্ত অটোফ ব্যবহার করবে।
.desktop
স্ক্রিপ্টগুলির প্রতিস্থাপন হিসাবে স্টাইল ডিআইডি বর্ণনাকারী তৈরির লক্ষ্যও রয়েছে এটির । এই ধীর টন প্রতিরোধ করবে sh
প্রক্রিয়া এবং ভালো জিনিস থেকে প্রক্রিয়ার আরও বেশি কাটাচামচ sed
এবং grep
যে শেল স্ক্রিপ্ট-এ ব্যবহার করা হয়।
তারা আরও কিছু পরিষেবা না চাওয়া অবধি কিছু পরিষেবা শুরু না করার পরিকল্পনা করে এবং সম্ভবত তাদের আর প্রয়োজন না থাকলে এগুলি বন্ধ করে দেয়, ব্লুটুথ মডিউল এবং ডিমন কেবল তখনই প্রয়োজন হয় যখন আপনি একটি ব্লুটুথ ডিভাইস ব্যবহার করছেন। প্রদত্ত আরেকটি উদাহরণ হ'ল ssh ডিমন। এটি এমন এক ধরণের জিনিস যা ইনটেড সক্ষম। ব্যক্তিগতভাবে আমি নিশ্চিত নই যে আমি এটি পছন্দ করি, কারণ এটি যখন প্রয়োজন হবে তখন এটির কারণ হতে পারে এবং এসএসএসের ক্ষেত্রে আমি মনে করি এটির সম্ভাব্য সুরক্ষিত দুর্বলতা, যদি আমার জড়িতদের আপস করা না হয় তবে পুরো সিস্টেমটি হবে। তবে, আমাকে জানিয়ে দেওয়া হয়েছে যে এই সিস্টেমটি লঙ্ঘন করতে এটি ব্যবহার করা অনিবার্য এবং আমি চাইলে আমি প্রতি পরিষেবাতে এবং অন্য উপায়ে এই বৈশিষ্ট্যটি অক্ষম করতে পারি।
অন্য একটি বৈশিষ্ট্য স্পষ্টতই নিয়মিত নির্ধারিত বিরতিতে বা একটি নির্দিষ্ট সময়ে সময় ইভেন্টের উপর ভিত্তি করে শুরু করার ক্ষমতা হতে চলেছে। এটি এখন crond
এবং atd
কি করার অনুরূপ । যদিও আমাকে বলা হয়েছিল এটি ব্যবহারকারীর "ক্রোন" সমর্থন করবে না। ব্যক্তিগতভাবে এটি সবচেয়ে অর্থহীন জিনিস বলে মনে হচ্ছে। আমি মনে করি এটি বহু লোক পরিবেশে কাজ করে না এমন লোকেরা লিখেছেন / চিন্তিত হয়েছিল, আপনি যদি সিস্টেমের একমাত্র ব্যবহারকারী হন তবে ব্যবহারকারী হিসাবে ক্রোন ব্যবহারের খুব বেশি উদ্দেশ্য নেই running আমি প্রতিদিন মাল্টিউজার সিস্টেমগুলিতে কাজ করি এবং নিয়মটি সর্বদা ব্যবহারকারী হিসাবে স্ক্রিপ্টগুলি চালিত হয়। তবে তাদের কাছে আমার দূরদর্শিতা থাকতে পারে না এবং এটি কোনওভাবেই এটি তৈরি করবে যাতে আমি দৌড়াতে পারি না crond
বা atd
, সুতরাং এটি কারওর ক্ষতি করে না তবে আমার ধারণা বিকাশকারীরা।
সিস্টেমেডের বড় অসুবিধা হ'ল এর কিছুটা সদ্ব্যবহার করার জন্য কিছু ডেমোনকে সংশোধন করতে হবে। তারা এখন কাজ করবে, তবে তারা যদি সকেটের মডেলের জন্য বিশেষভাবে লেখা হয় তবে তারা আরও ভাল কাজ করবে।
এটি মনে হয় বেশিরভাগ অংশে সিস্টেমডের লোকেরা আপস্টার্ট নিয়ে সমস্যা হ'ল ইভেন্ট সিস্টেম এবং এটি তারা বিশ্বাস করে বা অপ্রয়োজনীয় হতে পারে না বলে বিশ্বাস করে। সম্ভবত তাদের কথায় এটি সবচেয়ে ভাল।
বা এটিকে আরও সহজভাবে বলতে গেলে: ব্যবহারকারীরা ডি-বাস শুরু করে এমনটিই কোনওভাবেই ইঙ্গিত দেয় না যে নেটওয়ার্কম্যানেজারটি খুব বেশি চালু করা উচিত (তবে এটি আপস্টার্ট কী করবে)। এটি অন্যদিকে ঠিক ঠিক: যখন ব্যবহারকারী নেটওয়ার্কম্যানেজারের জন্য জিজ্ঞাসা করেন, এটি অবশ্যই একটি ইঙ্গিত যে ডি-বাসটিও শুরু করা উচিত (যা অবশ্যই বেশিরভাগ ব্যবহারকারীদের প্রত্যাশা করবে, তাই না?)।
একটি ভাল init সিস্টেমের কেবলমাত্র যা প্রয়োজন হয় তা শুরু করা উচিত এবং এটি অন-ডিমান্ড। হয় অলস বা সমান্তরাল এবং আগাম। তবে এটি প্রয়োজনের চেয়ে বেশি শুরু করা উচিত নয়, বিশেষত এমন কোনও কিছু ইনস্টল করা হয় না যা পরিষেবাটি ব্যবহার করতে পারে।
যেমন আমি ইতিমধ্যে বলেছি এটি সিস্টেমড ঘোষণায় আরও ব্যাপকভাবে আলোচনা করা হয় ।
আপনার বেশিরভাগটি ভুলে যাওয়া একটি বিষয় হ'ল সিগ্রুপগুলিতে প্রক্রিয়াগুলির সংগঠন ।
সুতরাং যদি সিস্টেমড কোনও জিনিস শুরু করে, এটি এই জিনিসটিকে তার নিজস্ব ক্রুপে রাখবে এবং সেই ক্রোগলটি থেকে বাঁচার জন্য প্রক্রিয়াটির কোনও (অপ্রতিযুক্ত) অর্থ নেই। এর পরিণতি এখানে:
প্রথম ডিজাইনের খসড়াগুলি (এবং উপস্টার্ট সহ বিদ্যমান ডিআইডি সিস্টেমগুলির বিশদ সমালোচনা এবং সিস্টেমটি কীভাবে এটি সংশোধন করার প্রস্তাব দেয়) দিয়ে শুরু করে সিস্টেমডে খুব বিশদ বিবরণের জন্য, এর হোম পৃষ্ঠায় যান । সময়ের সাথে সাথে, এলডাব্লুএনতে প্রকাশিত স্টার্টআপ সম্পর্কে বেশ কয়েকটি নিবন্ধ প্রকাশিত হয়েছে । কেবলমাত্র পরামর্শ দিন যে সিস্টেমেড (বা পালসৌদিও) এর কোনও উল্লেখই আগ্নেয় শিখাগুলিকে ট্রিগার করে।
আইএমভিএইচও (এবং ফেডোরা ব্যবহারকারী হিসাবে) আমি এতে খুব খুশি। বর্তমান লিনাক্স সিস্টেমগুলির জটিলতা পরিচালনা করতে এই লাইনের কিছু দীর্ঘস্থায়ী ছিল। ফেডোরা কিছুক্ষণ আপস্টার্ট ব্যবহার করেছিল, তবে এটি সিসভিনিটের অভিনব প্রতিস্থাপনের পর্যায়ে থেকে যায় নি, বেশিরভাগ অপরিবর্তিত থ্রি স্ক্রিপ্ট চালায়। বুট কনফিগারেশন সরল করার এর প্রতিশ্রুতি আবারও ব্যয় হয়ম্যানুয়ালি আন্তঃনির্ভরতা স্থাপন করে এবং এটি কার্যকর হয় না। সিস্টেমড ফিগারগুলি নির্ভরশীলতা নিজেই আউট করে (বা কেবল নির্ভরতা বিবেচনা না করে স্টাফ শুরু করতে দেয়, তারা নিজেরাই সাজিয়ে দেয়)। আরেকটি বড় সুবিধা (কেউ বলে এটি একটি মারাত্মক অসুবিধা) এটি হ'ল এটি লিনাক্স-সম্পর্কিত বৈশিষ্ট্যগুলি ব্যবহার করে (উল্লেখযোগ্যভাবে সিগ্রুপগুলি একটি ডিমন এবং তার সমস্ত বংশধরকে বিচ্ছিন্ন করার অনুমতি দেয়, সুতরাং এটি নিরীক্ষণ করা, সংস্থান সীমাবদ্ধ করা বা তাদের হত্যা হিসাবে সহজে করা যায়) একটি গোষ্ঠী; আরও অনেকগুলি রয়েছে)।
জার্নালিং - সিস্টেমড আক্ষরিকভাবে উইনএক্সএক্সএস ফোল্ডারের মতো হয় যখন লগিংয়ের জিনিস আসে, এটি কপিগুলির অনুলিপি তৈরি করে যদি না আপনি ম্যানুয়ালি ফাইলের আকার মুছতে বা হ্রাস না করেন তবে এটি আপনার ড্রাইভে দূরে খেতে থাকবে eating আমি এটিকে বুট লোডার কুকি বলি।