আমি লিনাক্স জগতে সম্পূর্ণ নতুন, তাই আমি যে কোনও ভুল বলতে পারি বলে দুঃখিত।
আমি একটি দেবিয়ান 8.5 মেশিনে একটি মঙ্গো ডিবি চালানোর চেষ্টা করছি। আমি যখন প্যাকেজটি ইনস্টল করেছি (পেরকোনা ডটকম থেকে প্রাক নির্মিত), আমি নিম্নলিখিত ফাইলগুলি লক্ষ্য করেছি:
/etc/init.d/mongod (1)
/lib/systemd/system/mongod.service (2)
/Etc/init.d/mongod সম্পর্কে
আমি বুঝতে পারি যে update-rc.d
বুট / অন্য নির্দিষ্ট সিস্টেমের রাজ্যে এটিকে বলা হয় (যতক্ষণ না এটি এর মাধ্যমে নিবন্ধিত হয় ) (এটি সম্পর্কে প্রযুক্তিগত পেতে চাই না, আমি প্রচুর তথ্য শোষণ করছি এবং এটি কম গুরুত্বপূর্ণ বলে মনে হচ্ছে)।
এটি আমার পক্ষে পুরোপুরি ঠিক আছে। স্ক্রিপ্টটি প্রচুর সূচনা করে এবং অবশেষে মঙ্গো ডেমন চালু করে। মনে হচ্ছে এটি শুরু, থামানো, পুনরায় চালু করার জন্য ইত্যাদির জন্য "ট্রিগার" রয়েছে এবং যতদূর আমি বুঝতে পারি আমি তাদের সাথে ট্রিগার করতে পারি sudo service mongod <action>
।
/Lib/systemd/system/mongod.service সম্পর্কে
এই ফাইলটি একই জিনিসটি (যেমন মঙ্গো চালান) বলে মনে হচ্ছে তবে কম কনফিগারেশনের সাথে এক্সিকিস্টার্ট প্যারামিটারে কেবল একটি লাইন রয়েছে:
[Unit]
Description=MongoDB (High-performance, schema-free document-oriented database)
After=time-sync.target network.target
[Service]
Type=forking
User=mongod
Group=mongod
PermissionsStartOnly=true
EnvironmentFile=/etc/default/mongod
ExecStart=/usr/bin/env bash -c "/usr/bin/mongod $OPTIONS > ${STDOUT} 2> ${STDERR}"
PIDFile=/var/run/mongod.pid
[Install]
WantedBy=multi-user.target
আমি যতদূর বুঝতে পারি এটি দিয়ে ট্রিগার করা যেতে পারে sudo systemctl start mongod
।
বুট এ বলা হয় কিনা তা আমি বুঝতে পারি না।
আমি বুঝতে পারছি না কেন এই দুটি 'পরিষেবা' ফাইলের প্রয়োজন, এবং আমি কীভাবে একটি থেকে মুক্তি পেতে পারি (সম্ভবত এটি / lib / systemd, কারণ এটি অনেক সহজ) ler
দুজনের মধ্যে কোনও সম্পর্ক আছে কিনা তা আমি বুঝতে পারি না।
আমি পড়েছি যা স্ক্রিপ্টগুলিতেও
systemctl
কাজ করেinit.d
এবং এই ক্ষেত্রে আমি বুঝতে পারি না যে দুটি ফাইলের মধ্যে কোনটি দ্বারা ট্রিগার হবেsystemctl mongod start
।
আমি মনে করি কিছু অপ্রয়োজনীয়তা আছে এবং আমার দুটি উপায়ের একটি বেছে নেওয়া উচিত। এবং আমি নিশ্চিত যে এটি যে চান
- বুট বলা হয়
- কমান্ড দ্বারা কল (যেমন
service
বাsystemctl
)।
আপনি আমার মন পরিষ্কার করতে সাহায্য করতে পারেন? কিছু মন্তব্যের সাহায্যে আমি সম্ভবত প্রশ্নটি ফোকাস করতে এবং সংকুচিত করতে পারি।
systemctl disable mongod
:; তারপরে মঙ্গড-ব্যাকসেস.সর্পিসে নামকরণ করা হয়েছে মঙ্গড.সার্ভিস; তারপরsystemctl daemon-reload
। আপনি কি মনে করেন এটি সঠিক ছিল? আমি পড়েছি আপনার / lib / systemd / system / এ ফাইলগুলি পরিবর্তন করা উচিত নয়, তবে নাম পরিবর্তন না করে systemctl init.d স্ক্রিপ্টটিকে উপেক্ষা করে চলেছে।