Upstart এবং systemd এর উপকারিতা / বিধিগুলি কী কী?


183

মনে হচ্ছে systemd গরম নতুন Init ব্লকে সিস্টেম, হিসাবে একই ভুঁইফোড় কয়েক বছর আগের কথা। প্রত্যেকের জন্য কি ভাল / কনস আছে? এছাড়াও, প্রতিটি অন্যান্য ডিআইডি সিস্টেমের সাথে কীভাবে তুলনা করে?


4
@ কিথ আইরিক ওপেনসিআর সহজভাবে এসআইএসভি ব্যবহার করে, সুবিধাটি স্টার্টআপ স্ক্রিপ্টগুলির একটি ভাল নকশাকৃত সংগ্রহ যা সাধারণ উপাদানগুলি ব্যবহার করে এবং বহনযোগ্য (কোনও শেল ব্যবহার করে) এটি একটি ভাল পরিচ্ছন্নতা, তবে সত্যই কোনও নতুন উদ্যোগ নয়
xenoterracide

@ এক্সেনো এটি করে তবে আপনি সত্যি বলতে পারবেন না। কোনও rcX.d বা [কেএস] সিমলিংক নেই। প্রকৃতপক্ষে sysv init নিজেই বেশ নমনীয়, এবং রানলেভেলগুলি স্বাভাবিকভাবে ব্যবহৃত হয় না।
কিথ

যদিও এই ব্লগের লেখক সিস্টেমডের বিরুদ্ধে, তবে আমি এটি পড়ার পরামর্শ দিই। এটি সিস্টেমড এবং বিএসডি ইনিশ এর উপকারিতা এবং বিপরীতে যায়। textplain.net/blog/2015/...
Peschke

1
দয়া করে 2016 আপডেট মধ্য দিয়ে যেতে unix.stackexchange.com/a/287282/49091 খুব।
ইগৌরব

সিস্টেমডের যে কোনও উদ্দিষ্ট সুবিধাগুলি এটি বাস্তবায়নের জন্য বিশ্বকে ইতিমধ্যে ব্যয় করা 100 বছরে অফসেট করবে না। এই জঞ্জাল মোকাবেলার জন্য ইউনিক্স প্রশাসনের দ্বারা প্রতি মিনিট বা ঘন্টা বা দিন ব্যয় করতে ইতিমধ্যে কয়েক বিলিয়ন পর্যন্ত যোগ করতে হবে এবং কয়েক ঘন্টা বাজি এবং হুইসেল ছাড়া সত্যিকারের উপকারের জন্য?
ওয়াসল্যাপ

উত্তর:


90

2016 আপডেট

এখানে বেশিরভাগ উত্তর পাঁচ বছরের পুরানো তাই কিছু আপডেটের সময় এসেছে।

উবুন্টু পূর্বনির্ধারিতভাবে আপস্টার্ট ব্যবহার করত তবে তারা গত বছর এটি সিস্টেমডের পক্ষে ছেড়ে দিয়েছে - দেখুন:

যে কারণে উবুন্টু উইকিতে আপস্টার্ট ব্যবহারকারীদের জন্য সিস্টেমড একটি দুর্দান্ত নিবন্ধ রয়েছে - upstart এবং systemd এর মধ্যে খুব বিস্তারিত তুলনা এবং upstart থেকে systemd এ রূপান্তর গাইড।

(মনে রাখবেন যে উবুন্টু উইকি অনুসারে আপনি উবুন্টুর বর্তমান সংস্করণগুলিতে ডিফল্টরূপে ইনস্টল upstart-sysvও চালনা চালিয়ে চালিত করতে পারেন sudo update-initramfs -uতবে সিস্টেমেড প্রকল্পের ক্ষেত্র বিবেচনা করে আমি জানি না যে এটি বাস্তবে কীভাবে কাজ করে, অথবা সিস্টেমড হয় কি না আনইনস্টল করা সম্ভব।)

নীচের কমান্ডস এবং স্ক্রিপ্ট বিভাগের বেশিরভাগ তথ্য সেই নিবন্ধে ব্যবহৃত কয়েকটি উদাহরণ থেকে গৃহীত হয়েছে (যেটি ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন-শেয়ারএলক 3.0 লাইসেন্সের আওতায় স্ট্যাক এক্সচেঞ্জ ব্যবহারকারীর অবদানের মতো সহজেই লাইসেন্সযুক্ত )।

সাধারণ কমান্ড এবং সাধারণ স্ক্রিপ্টগুলির দ্রুত তুলনা এখানে দেওয়া হল, বিস্তারিত ব্যাখ্যার জন্য নীচের বিভাগগুলি দেখুন। এই উত্তরটি আপস্টার্ট-ভিত্তিক সিস্টেমগুলির পুরানো আচরণকে সিস্টেমড-ভিত্তিক সিস্টেমগুলির নতুন আচরণের সাথে তুলনা করছে, যেমন প্রশ্নে জিজ্ঞাসা করা হয়েছে, তবে নোট করুন যে "আপস্টার্ট" হিসাবে ট্যাগ করা কমান্ডগুলি আপস্টার্ট-নির্দিষ্ট নয় - এগুলি প্রায়শই আদেশ হয় যে প্রতিটি নন-সিস্টেমড লিনাক্স এবং ইউনিক্স সিস্টেমে সাধারণ।

কমান্ড

চলমান সু:

  • ভুঁইফোড়: su
  • systemd হল: machinectl shell

(নীচে "su কমান্ড প্রতিস্থাপন" বিভাগ দেখুন)

চলমান স্ক্রিন:

  • ভুঁইফোড়: screen
  • systemd হল: systemd-run --user --scope screen

(নীচে "ব্যাকগ্রাউন্ড প্রক্রিয়াগুলির অপ্রত্যাশিত হত্যা" বিভাগটি দেখুন)

চলমান tmux:

  • ভুঁইফোড়: tmux
  • systemd হল: systemd-run --user --scope tmux

(নীচে "ব্যাকগ্রাউন্ড প্রক্রিয়াগুলির অপ্রত্যাশিত হত্যা" বিভাগটি দেখুন)

চাকরি শুরু হচ্ছে:

  • ভুঁইফোড়: start foo
  • systemd হল: systemctl start foo

চাকরি বন্ধ করা:

  • ভুঁইফোড়: stop foo
  • systemd হল: systemctl stop foo

জব ফু পুনরায় চালু হচ্ছে:

  • ভুঁইফোড়: restart foo
  • systemd হল: systemctl restart foo

কাজের তালিকা:

  • ভুঁইফোড়: initctl list
  • systemd হল: systemctl status

জব ফু এর কনফিগারেশন চেক করা হচ্ছে:

  • ভুঁইফোড়: init-checkconf /etc/init/foo.conf
  • systemd হল: systemd-analyze verify /lib/systemd/system/foo.service

কাজের পরিবেশের ভেরিয়েবল তালিকাভুক্ত:

  • ভুঁইফোড়: initctl list-env
  • systemd হল: systemctl show-environment

কাজের পরিবেশের পরিবর্তনশীল সেট করা:

  • ভুঁইফোড়: initctl set-env foo=bar
  • systemd হল: systemctl set-environment foo=bar

কাজের পরিবেশের পরিবর্তনশীল অপসারণ:

  • ভুঁইফোড়: initctl unset-env foo
  • systemd হল: 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 কমান্ড প্রতিস্থাপন

একটি suকমান্ড প্রতিস্থাপন মধ্যে টান অনুরোধ # 1022 systemd মধ্যে মিশে গিয়ে তৈরি করা হয়েছে:

কারণ, লেনার্ট পোয়েটারিংয়ের মতে, "সু আসলেই একটি ভাঙা ধারণা"

তিনি ব্যাখ্যা করেছেন যে "আপনি আগের মতো সু ও সুডো ব্যবহার করতে পারেন তবে এটি পুরোপুরি কার্যকর হবে বলে আশা করবেন না "

suসদৃশ আচরণ অর্জনের সরকারী উপায় এখন:

machinectl shell

লেনার্ট পোয়েটারিং # 825 ইস্যু করার আলোচনায় এটি আরও ব্যাখ্যা করেছেন :

"ঠিক আছে, এ সম্পর্কে দীর্ঘ আলোচনা হয়েছে, তবে সমস্যাটি হ'ল সু যা করার কথা তা খুব অস্পষ্ট। , এবং এটির জন্য এটি ব্যবহার করা ভাল, তবে এটি সম্পূর্ণ লগইন নয় এবং এটির জন্য ভুল হওয়া উচিত নয়। - লেনার্ট কবিতা

আরো দেখুন:

পটভূমি প্রক্রিয়াগুলির অপ্রত্যাশিতভাবে হত্যা killing

আদেশগুলি:

প্রত্যাশার মতো আর কাজ করবে না । উদাহরণস্বরূপ, nohupআপনি আপনার সেশন থেকে লগ আউট করার পরে প্রক্রিয়াটি চলতে থাকবে তা নিশ্চিত করার জন্য একটি পসিক্স কমান্ড। এটি আর সিস্টেমে কাজ করে না। এছাড়াও প্রোগ্রামগুলির মতো screenএবং tmuxবিশেষ পদ্ধতিতে ডাকা প্রয়োজন বা অন্যথায় আপনি তাদের সাথে যে প্রক্রিয়াগুলি চালাচ্ছেন সেগুলি মারা যাবে (যখন এই প্রক্রিয়াগুলি না পেয়ে পাওয়া না যায় সাধারণত পর্দা বা tmux প্রথম স্থানে চলার মূল কারণ)।

এটি কোনও ভুল নয়, এটি একটি ইচ্ছাকৃত সিদ্ধান্ত, তাই ভবিষ্যতে এটি ঠিক হওয়ার সম্ভাবনা নেই is লেনার্ট পোয়েটারিং এই বিষয়টি সম্পর্কে বলেছেন :

আমার দৃষ্টিতে এটি ইউনিক্সের পক্ষে আসলেই বেশ বিস্ময়কর ছিল যে এটি ডিফল্টরূপে স্বেচ্ছাচারী ব্যবহারকারীর কোডটি লগআউটের পরে অনিয়ন্ত্রিত হয়ে থাকে। বহু ওএস লোকের মধ্যে এটি যুগের পর যুগ ধরে আলোচনা করা হয়েছে যে এটি সম্ভব হওয়া উচিত তবে অবশ্যই এটি ডিফল্ট হওয়া উচিত নয়, তবে ডিফল্ট থেকে কোনও বিকল্পে রূপান্তর করতে স্যুইচটি ফ্লিপ করার পক্ষে কেউ এতদিন সাহস করে নি। লগআউট করার পরে ব্যবহারকারীর সেশনগুলি পরিষ্কার না করা কেবল কুৎসিত এবং কিছুটা হ্যাকিশই নয় তবে এটি একটি সুরক্ষা সমস্যা। সিস্টেমড ২৩০ এখন অবশেষে স্যুইচটি উল্টিয়ে ফেলে এবং অবশেষে ডিফল্টরূপে ব্যবহারকারী লগ আউট করার পরে সমস্ত কিছু সঠিকভাবে পরিষ্কার করে দেয়।

আরও তথ্যের জন্য দেখুন:

উচ্চ-স্তরের স্টার্টআপ ধারণা

এক উপায়ে সিস্টেমেড পিছনের দিকে কাজ করে - আপস্টার্ট কাজগুলি যত তাড়াতাড়ি সম্ভব শুরু হয় এবং সিস্টেমড কাজগুলি যখন তাদের করতে হবে তখনই শুরু হয়। দিনের শেষে একই কাজ দুটি সিস্টেম এবং একই সাথে একই ক্রমে শুরু করা যেতে পারে তবে আপনি এটিকে কথা বলার জন্য একটি বিপরীত দিক থেকে দেখে মনে করেন।

সিস্টেমড ফর আপস্টার্ট ব্যবহারকারীরা কীভাবে এটি ব্যাখ্যা করে তা এখানে:

প্রক্রিয়াগুলি (জব) শুরু করার জন্য আপস্টার্টের মডেল হ'ল 'লোভী ইভেন্ট-ভিত্তিক ", অর্থাত্ যে সমস্ত উপলভ্য চাকরি যার প্রারম্ভিক ইভেন্টগুলি ঘটে থাকে তা যত তাড়াতাড়ি সম্ভব শুরু করা হয়। বুট চলাকালীন, আপস্টার্ট কিছু প্রাথমিক ইভেন্টগুলিকে সংশ্লেষ করে যেমন স্টার্টআপ বা আরসিএস "গাছের মূল" হিসাবে, প্রাথমিক পরিষেবাগুলি সেগুলি থেকে শুরু হয় এবং পরবর্তী পরিষেবাগুলি পূর্ববর্তী চলমান অবস্থায় শুরু হয়। একটি নতুন কাজের সক্রিয় হওয়ার জন্য কেবল তার কনফিগারেশন ফাইলটি ইনস্টল করা প্রয়োজন etc

প্রসেস শুরু করার জন্য সিস্টেমডের মডেল (ইউনিট) হ'ল "অলস নির্ভরতা-ভিত্তিক", অর্থাত্ একটি ইউনিট কেবল তখনই শুরু হবে যখন এবং যখন অন্য কোনও সূচনা ইউনিট নির্ভর করে। বুটের সময়, সিস্টেমড একটি "রুট ইউনিট" শুরু করে (default.target, গ্রাবের মধ্যে ওভাররাইড করা যেতে পারে), যা ট্রানজিটিভভাবে প্রসারিত হয় এবং এর নির্ভরতা শুরু করে। সক্রিয় হওয়ার জন্য একটি নতুন ইউনিটের বুট সিকোয়েন্সের একটি ইউনিটের নির্ভরতা হিসাবে নিজেকে যুক্ত করতে হবে (সাধারণত মাল্টি-ইউজার.অরগেট) active

বিতরণ ব্যবহার

উইকিপিডিয়া অনুসারে এখন কিছু সাম্প্রতিক তথ্য:

ডিফল্টরূপে আপস্টার্ট ব্যবহার করে বিতরণ:

ডিফল্টরূপে systemd ব্যবহার করে বিতরণ:

( আপ টু ডেট তথ্যের জন্য উইকিপিডিয়া দেখুন )

আপস্টার্ট বা সিস্টেমড না ব্যবহার করে বিতরণ:

বিতর্ক

অতীতে ডিবিয়ানের একটি কাঁটাচামচ সিস্টেমড এড়াতে প্রস্তাবিত হয়েছিল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


4
... এবং ডিবিয়ান এর যেমন কাঁটাচামচ ঘটেছে। ডেভুয়ান জিএনইউ + লিনাক্স সিস্টেমবিহীন ডিবিয়ান একটি কাঁটাচামচ।
এফএমপুরফি

2
এটি উল্লেখ করা উচিত যে systemd তার সিস্টেমের কাজটি প্রারম্ভিকভাবে সিস্টেম শুরুর চেয়ে বহু বছর ধরে প্রসারিত করেছে।
এফএমপুরফি

1
অসামান্য পোস্ট এবং সেন্ট লোকের পক্ষে চূড়ান্ত সহায়ক। স্যার সময় দেওয়ার জন্য আপনাকে ধন্যবাদ !!!
original1tech

4
@ রমনসী service <foo> start/stop/restart/statusএখনও ঠিক কাজ করে work বেশিরভাগ ইউনিক্স সফ্টওয়্যারের মতো, সিস্টেমড সুপরিচিত ডিফল্টদের কমান্ড সামঞ্জস্যতা সরবরাহ করে।
শাদুর

2
খুব ভাল উত্তর। যদিও একটি বিষয়: বিএসডি অপারেটিং সিস্টেমগুলি লিনাক্স বিতরণ নয়: এগুলি নিজস্ব কার্নেল সহ বিভিন্ন ইউনিক্স অপারেটিং সিস্টেম।
জর্জিও

68

Upstart এবং systemd উভয়ই সনাতন SysV init সিস্টেমের সীমাবদ্ধতা নিয়ে কিছু সমস্যা সমাধানের চেষ্টা করছে। উদাহরণস্বরূপ, কিছু পরিষেবাদি অন্য পরিষেবার পরে শুরু করা দরকার (উদাহরণস্বরূপ, নেটওয়ার্ক চলমান আগ পর্যন্ত আপনি এনএফএস ফাইল সিস্টেমগুলি মাউন্ট করতে পারবেন না), তবে সিসভিতে হ্যান্ডেল করার একমাত্র উপায় হ'ল আরসি # .ডি ডিরেক্টরিতে লিঙ্কগুলি সেট করা is যেমন একটি অন্যজনের আগে। এতে যোগ করুন, নির্ভরতা যুক্ত করা বা পরিবর্তিত হওয়ার পরে আপনার সমস্ত কিছু পুনরায় সংখ্যার প্রয়োজন হতে পারে। প্রয়োজনীয়তা সংজ্ঞায়িত করার জন্য আপস্টার্ট এবং সিস্টেমডের আরও বুদ্ধিমান সেটিংস রয়েছে। এছাড়াও, এই বিষয়টি নিয়ে সমস্যা আছে যে সবকিছুই কোনও না কোনও শেল স্ক্রিপ্ট, এবং সবাই সেরা থ্রি স্ক্রিপ্ট লেখেন না। এটি স্টার্টআপের গতিকেও প্রভাবিত করে।

সিস্টেমযুক্তের কয়েকটি সুবিধা আমি দেখতে পাচ্ছি:

  • শুরু হওয়া প্রতিটি প্রক্রিয়া তার নিজস্ব সিগ্রুপ বা একটি নির্দিষ্ট সিগ্রুপ পায়।
  • সকেটগুলির প্রাক-তৈরি এবং ফাইলগুলির পরিষেবাগুলির জন্য হ্যান্ডলগুলি হ'ল, এর সেবাগুলির জন্য xinetd কীভাবে অনুরূপ, নির্ভরশীল পরিষেবাগুলি দ্রুত শুরু করার অনুমতি দেয়। উদাহরণস্বরূপ, সিস্টেমড সিসলগের জন্য / ডিভ / লগের জন্য ফাইলহ্যান্ডেলটি উন্মুক্ত করে রাখবে এবং পরবর্তীকালে যে পরিষেবাগুলি / ডিভ / লগতে প্রেরণ করা হবে সেগুলি স্লোগল্ড গ্রহণের জন্য প্রস্তুত না হওয়া অবধি তাদের বার্তাগুলি বাফার করবে।
  • আসলে কোনও পরিষেবা শুরু করতে খুব কম প্রক্রিয়াগুলি চালিত হয়। এর অর্থ আপনি আপনার পরিষেবা শুরু করতে কোনও শেল স্ক্রিপ্ট লিখছেন না। এটি গতির উন্নতি হতে পারে এবং (আইএমও) প্রথম স্থানে স্থাপন করা সহজ।

আমার একটি অসুবিধা সম্পর্কে আমি জানি যেটি হ'ল সিস্টেমডের সকেট / এফএইচ পূর্বনির্মাণের সুবিধা গ্রহণ করার জন্য, অনেক ডিমনকে এফএইচটি সিস্টেম দ্বারা তাদের পাস করার জন্য প্যাচ করতে হবে।


13
পালস অডিও একটি ম্যালেন্ডেড সাউন্ড সিস্টেম ( pulseaudio.org ), মূলত সিস্টেমের লেখক লেনার্ট পোয়েটারিং দ্বারা রচিত। আমি এখানে বেশিরভাগই একটি রসিকতা করছি, কারণ আমি বেশ কয়েকজন লোককে জানি যারা ডালিউডিয়ো সম্পর্কে অভিযোগ করতে পছন্দ করে এবং আমি নিশ্চিত যে তারা সিস্টেমড সম্পর্কেও অভিযোগ করবে। সত্যি বলতে কি, সিস্টেমড বা পালসওডিও নিয়ে আমার কোনও সমস্যা হয়নি।
jsbillings

4
প্ল্যান 9 এর প্রচুর পরিমাণে ফায়ারগুলির জন্য একটি প্রায় পাইন তৈরি করে ... সবকিছুই একটি ফাইল।
dhchdd

4
সত্যি কথা বলতে, পালসওডিও ছিল অ-অরক্ষিত সমস্যার সমাধান। পিএ এমন কিছুই করতে পারে না যা ALSA পারে না, এবং আমি পিএ নিয়ে সমস্যাগুলি বারবার শুনেছি LE
নট হুগো

3
দুটি সিস্টেমেড অসুবিধাগুলি যা আপনি মিস করেছেন: (1) সমস্ত প্রারম্ভিক স্ক্রিপ্টগুলি নতুন করে লেখা দরকার। (২) নন-লিনাক্স ওএস (উদাহরণস্বরূপ, বিএসডি) এর সাথে সামঞ্জস্যতা কম।
নট হুগো

8
শুধু মহান. দয়া করে 0 পয়েন্টার.ডে / ব্লগ / প্রজেক্টগুলি / বিগজেস্ট- মাইথগুলি একবার দেখুন । আমি সিস্টেমডের বিকাশ প্রত্যক্ষ করেছি এবং প্রমাণ করতে পারি যে এখানে দেওয়া সমালোচনাগুলি সম্পূর্ণ ভিত্তিহীন। লিঙ্কটিতে আপনি আঘাতের মাধ্যমে একটি আঘাত পেয়ে যাবেন, যুক্তিযুক্ত খণ্ডন।
ভোনব্র্যান্ড

30

দেখেছি systemdউল্লেখ আর্চ সাধারণ এমএল আজ। সুতরাং এটি পড়ুন। এইচ অনলাইনটি বরাবরের মতো লিনাক্স প্রযুক্তির একটি দুর্দান্ত উত্স এবং আমি সেখানে সিএসভি ইনিশ এবং আপস্টার্ট বিকল্প হিসাবে সিস্টেমড গবেষণা শুরু করার জন্য আমার জায়গাটি পেয়েছি । তবে এইচ অনলাইন নিবন্ধ (এক্ষেত্রে) খুব দরকারী পড়া নয়, এর পিছনে আসল ব্যবহার হ'ল এটি দরকারী পাঠকদের লিঙ্ক দেয়।

আসল উত্তরটি সিস্টেমডের ঘোষণায় । যা SysV initd এর সাথে কী ভুল হয়েছে এবং নতুন সিস্টেমে কী করা দরকার তার কয়েকটি গুরুত্বপূর্ণ পয়েন্ট দেয়

  • কম শুরু করতে।
  • এবং সমান্তরাল আরও শুরু করতে।

এটি করার প্রধান পরিকল্পনাটি মনে হয় কেবল পরিষেবাগুলি যেমন প্রয়োজন তেমনই শুরু করা এবং সেই পরিষেবার জন্য একটি সকেট শুরু করা, যাতে ডেমোন সম্পূর্ণরূপে অনলাইন হওয়ার অনেক আগেই যে পরিষেবাটির প্রয়োজন হয় সে তৈরি সকেটের সাথে সংযোগ স্থাপন করতে পারে। স্পষ্টতই একটি সকেট অল্প পরিমাণে বাফার ডেটা ধরে রাখবে যার অর্থ ল্যাগ চলাকালীন কোনও ডেটা নষ্ট হবে না, ডেমন অনলাইন হওয়ার সাথে সাথে এটি পরিচালনা করা হবে।

পরিকল্পনার আর একটি অংশ মনে হচ্ছে ফাইল সিস্টেমগুলি সিরিয়ালিয়াল করা না করা, বরং পরিবর্তে চাহিদা অনুসারে মাউন্ট করা, সেইভাবে আপনি মাউন্ট করার জন্য আপনার /home/ইত্যাদি ইত্যাদিতে (বিভ্রান্ত হবেন না /etc), এবং / বা fsckআপনি কখন হতে পারেন /এবং /var/ইত্যাদি হিসাবে ডেমোন শুরু করা ইতিমধ্যে মাউন্ট করা হয়েছে। এটি বলেছিল যে এটি শেষ পর্যন্ত অটোফ ব্যবহার করবে।

.desktopস্ক্রিপ্টগুলির প্রতিস্থাপন হিসাবে স্টাইল ডিআইডি বর্ণনাকারী তৈরির লক্ষ্যও রয়েছে এটির । এই ধীর টন প্রতিরোধ করবে shপ্রক্রিয়া এবং ভালো জিনিস থেকে প্রক্রিয়ার আরও বেশি কাটাচামচ sedএবং grepযে শেল স্ক্রিপ্ট-এ ব্যবহার করা হয়।

তারা আরও কিছু পরিষেবা না চাওয়া অবধি কিছু পরিষেবা শুরু না করার পরিকল্পনা করে এবং সম্ভবত তাদের আর প্রয়োজন না থাকলে এগুলি বন্ধ করে দেয়, ব্লুটুথ মডিউল এবং ডিমন কেবল তখনই প্রয়োজন হয় যখন আপনি একটি ব্লুটুথ ডিভাইস ব্যবহার করছেন। প্রদত্ত আরেকটি উদাহরণ হ'ল ssh ডিমন। এটি এমন এক ধরণের জিনিস যা ইনটেড সক্ষম। ব্যক্তিগতভাবে আমি নিশ্চিত নই যে আমি এটি পছন্দ করি, কারণ এটি যখন প্রয়োজন হবে তখন এটির কারণ হতে পারে এবং এসএসএসের ক্ষেত্রে আমি মনে করি এটির সম্ভাব্য সুরক্ষিত দুর্বলতা, যদি আমার জড়িতদের আপস করা না হয় তবে পুরো সিস্টেমটি হবে। তবে, আমাকে জানিয়ে দেওয়া হয়েছে যে এই সিস্টেমটি লঙ্ঘন করতে এটি ব্যবহার করা অনিবার্য এবং আমি চাইলে আমি প্রতি পরিষেবাতে এবং অন্য উপায়ে এই বৈশিষ্ট্যটি অক্ষম করতে পারি।

অন্য একটি বৈশিষ্ট্য স্পষ্টতই নিয়মিত নির্ধারিত বিরতিতে বা একটি নির্দিষ্ট সময়ে সময় ইভেন্টের উপর ভিত্তি করে শুরু করার ক্ষমতা হতে চলেছে। এটি এখন crondএবং atdকি করার অনুরূপ । যদিও আমাকে বলা হয়েছিল এটি ব্যবহারকারীর "ক্রোন" সমর্থন করবে না। ব্যক্তিগতভাবে এটি সবচেয়ে অর্থহীন জিনিস বলে মনে হচ্ছে। আমি মনে করি এটি বহু লোক পরিবেশে কাজ করে না এমন লোকেরা লিখেছেন / চিন্তিত হয়েছিল, আপনি যদি সিস্টেমের একমাত্র ব্যবহারকারী হন তবে ব্যবহারকারী হিসাবে ক্রোন ব্যবহারের খুব বেশি উদ্দেশ্য নেই running আমি প্রতিদিন মাল্টিউজার সিস্টেমগুলিতে কাজ করি এবং নিয়মটি সর্বদা ব্যবহারকারী হিসাবে স্ক্রিপ্টগুলি চালিত হয়। তবে তাদের কাছে আমার দূরদর্শিতা থাকতে পারে না এবং এটি কোনওভাবেই এটি তৈরি করবে যাতে আমি দৌড়াতে পারি না crondবা atd, সুতরাং এটি কারওর ক্ষতি করে না তবে আমার ধারণা বিকাশকারীরা।

সিস্টেমেডের বড় অসুবিধা হ'ল এর কিছুটা সদ্ব্যবহার করার জন্য কিছু ডেমোনকে সংশোধন করতে হবে। তারা এখন কাজ করবে, তবে তারা যদি সকেটের মডেলের জন্য বিশেষভাবে লেখা হয় তবে তারা আরও ভাল কাজ করবে।

এটি মনে হয় বেশিরভাগ অংশে সিস্টেমডের লোকেরা আপস্টার্ট নিয়ে সমস্যা হ'ল ইভেন্ট সিস্টেম এবং এটি তারা বিশ্বাস করে বা অপ্রয়োজনীয় হতে পারে না বলে বিশ্বাস করে। সম্ভবত তাদের কথায় এটি সবচেয়ে ভাল।

বা এটিকে আরও সহজভাবে বলতে গেলে: ব্যবহারকারীরা ডি-বাস শুরু করে এমনটিই কোনওভাবেই ইঙ্গিত দেয় না যে নেটওয়ার্কম্যানেজারটি খুব বেশি চালু করা উচিত (তবে এটি আপস্টার্ট কী করবে)। এটি অন্যদিকে ঠিক ঠিক: যখন ব্যবহারকারী নেটওয়ার্কম্যানেজারের জন্য জিজ্ঞাসা করেন, এটি অবশ্যই একটি ইঙ্গিত যে ডি-বাসটিও শুরু করা উচিত (যা অবশ্যই বেশিরভাগ ব্যবহারকারীদের প্রত্যাশা করবে, তাই না?)।
একটি ভাল init সিস্টেমের কেবলমাত্র যা প্রয়োজন হয় তা শুরু করা উচিত এবং এটি অন-ডিমান্ড। হয় অলস বা সমান্তরাল এবং আগাম। তবে এটি প্রয়োজনের চেয়ে বেশি শুরু করা উচিত নয়, বিশেষত এমন কোনও কিছু ইনস্টল করা হয় না যা পরিষেবাটি ব্যবহার করতে পারে।

যেমন আমি ইতিমধ্যে বলেছি এটি সিস্টেমড ঘোষণায় আরও ব্যাপকভাবে আলোচনা করা হয় ।


দুঃখিত তবে ঘোষণাটি বইয়ের মতো। আমি সত্যিই এখানে আরও অন্তর্ভুক্ত করতে পারার আগে আমাকে পড়তে এবং কুঁচকে যেতে হবে।
xenoterracide

2
@ জন এর উত্তরের চেয়ে এটি কীভাবে ভাল? এটি কি স্থানধারক? এইচ অনলাইন এর একটি প্রচার ?
tspang

1
@ শেপাঙ্গ ভালভাবে এটি সিস্টেম ডি এর ঘোষণার সাথে লিঙ্ক করে এবং এইচ অনলাইন স্টাফের সাথে এবং অন্যান্য আকর্ষণীয় লিঙ্কগুলির লিঙ্ক রয়েছে। এটি একটি দীর্ঘ ক্লান্তিকর পড়া। আমি আরও একবার এটি যোগ করার পরে যুক্ত করতে পারি ... এটি কোনও সহজ বিষয় নয়। আমি যখন এটি লিখেছিলাম তখন আমি বুঝতে পেরেছিলাম যে আপনি খুব শীঘ্রই পড়া শুরু করতে চান। তবে আমাকে নিচে নির্দ্বিধায় মনে হয় অবশ্যই @jsbillings এর উত্তরটি শালীন এবং আমার চেয়ে এখন পর্যন্ত ভাল। তবে ঘোষণাটি নিজে পড়ার মতো ভাল নয়
xenoterracide 20'11

@ শেপপাং আমি সম্ভবত আগামীকাল বিছানার পরে আরও যুক্ত করব। এইচ অনলাইন স্টাফ ছিল কেবল আমি একজন ভাল সাংবাদিক এবং আমার উত্সের উদ্ধৃতি দিয়েছিলাম।
xenoterracide

@tshepang। আমি আমার উত্তর আপডেট করেছি। বেশ নিশ্চিত যে আমি irc: //frenode.net/s systemmd- এ সহায়ক লোকজন না করে সিদ্ধান্ত নিয়েছি যে তারা কোনও প্রকারের সংশোধন করতে চায়।
xenoterracide

11

আপনার বেশিরভাগটি ভুলে যাওয়া একটি বিষয় হ'ল সিগ্রুপগুলিতে প্রক্রিয়াগুলির সংগঠন ।

সুতরাং যদি সিস্টেমড কোনও জিনিস শুরু করে, এটি এই জিনিসটিকে তার নিজস্ব ক্রুপে রাখবে এবং সেই ক্রোগলটি থেকে বাঁচার জন্য প্রক্রিয়াটির কোনও (অপ্রতিযুক্ত) অর্থ নেই। এর পরিণতি এখানে:

  • অনেক ব্যবহারকারী সহ একটি বড় ব্যবস্থার প্রশাসকের কাছে দূষিত ব্যবহারকারী / প্রক্রিয়াগুলি সনাক্ত করার জন্য দক্ষ নতুন উপায় রয়েছে।
  • সিপিইউ-সময়সূচির জন্য অগ্রাধিকারগুলি "ওয়ান্ডার অটোকগ্রুপ প্যাচ" দ্বারা আরও ভালভাবে নির্ধারণ করা যেতে পারে ।

8

প্রথম ডিজাইনের খসড়াগুলি (এবং উপস্টার্ট সহ বিদ্যমান ডিআইডি সিস্টেমগুলির বিশদ সমালোচনা এবং সিস্টেমটি কীভাবে এটি সংশোধন করার প্রস্তাব দেয়) দিয়ে শুরু করে সিস্টেমডে খুব বিশদ বিবরণের জন্য, এর হোম পৃষ্ঠায় যান । সময়ের সাথে সাথে, এলডাব্লুএনতে প্রকাশিত স্টার্টআপ সম্পর্কে বেশ কয়েকটি নিবন্ধ প্রকাশিত হয়েছে । কেবলমাত্র পরামর্শ দিন যে সিস্টেমেড (বা পালসৌদিও) এর কোনও উল্লেখই আগ্নেয় শিখাগুলিকে ট্রিগার করে।

আইএমভিএইচও (এবং ফেডোরা ব্যবহারকারী হিসাবে) আমি এতে খুব খুশি। বর্তমান লিনাক্স সিস্টেমগুলির জটিলতা পরিচালনা করতে এই লাইনের কিছু দীর্ঘস্থায়ী ছিল। ফেডোরা কিছুক্ষণ আপস্টার্ট ব্যবহার করেছিল, তবে এটি সিসভিনিটের অভিনব প্রতিস্থাপনের পর্যায়ে থেকে যায় নি, বেশিরভাগ অপরিবর্তিত থ্রি স্ক্রিপ্ট চালায়। বুট কনফিগারেশন সরল করার এর প্রতিশ্রুতি আবারও ব্যয় হয়ম্যানুয়ালি আন্তঃনির্ভরতা স্থাপন করে এবং এটি কার্যকর হয় না। সিস্টেমড ফিগারগুলি নির্ভরশীলতা নিজেই আউট করে (বা কেবল নির্ভরতা বিবেচনা না করে স্টাফ শুরু করতে দেয়, তারা নিজেরাই সাজিয়ে দেয়)। আরেকটি বড় সুবিধা (কেউ বলে এটি একটি মারাত্মক অসুবিধা) এটি হ'ল এটি লিনাক্স-সম্পর্কিত বৈশিষ্ট্যগুলি ব্যবহার করে (উল্লেখযোগ্যভাবে সিগ্রুপগুলি একটি ডিমন এবং তার সমস্ত বংশধরকে বিচ্ছিন্ন করার অনুমতি দেয়, সুতরাং এটি নিরীক্ষণ করা, সংস্থান সীমাবদ্ধ করা বা তাদের হত্যা হিসাবে সহজে করা যায়) একটি গোষ্ঠী; আরও অনেকগুলি রয়েছে)।


3

জার্নালিং - সিস্টেমড আক্ষরিকভাবে উইনএক্সএক্সএস ফোল্ডারের মতো হয় যখন লগিংয়ের জিনিস আসে, এটি কপিগুলির অনুলিপি তৈরি করে যদি না আপনি ম্যানুয়ালি ফাইলের আকার মুছতে বা হ্রাস না করেন তবে এটি আপনার ড্রাইভে দূরে খেতে থাকবে eating আমি এটিকে বুট লোডার কুকি বলি।


ভুল। এগুলি অনুলিপি নয় এবং এতে ফ্রিডেস্কটপ.আর.এস.সোফটওয়ার
পাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.