sudo পরিষেবার স্থিতি খারাপ অন্তর্ভুক্ত;


32
$ sudo service cassandra status
● cassandra.service - LSB: distributed storage system for structured data
   Loaded: loaded (/etc/init.d/cassandra; bad; vendor preset: enabled)
   Active: active (running) since Wed 2016-10-12 15:54:40 IDT; 4min 4s ago

bad;আউটপুট ২ য় লাইনের অংশটি কীসের জন্য দাঁড়ায়? আমি এটি অনেকগুলি পরিষেবাদির জন্য পেয়েছি, যেমন, মাইএসকিএল, উইনবাইন্ড, ভার্চুয়ালবক্স, যার মধ্যে কয়েকটি আমি নির্বিঘ্নে ইতিমধ্যে ব্যবহার করেছি (ক্যাসান্দ্রা একটি নতুন ইনস্টল হওয়া)।

উত্তর:


42

সংক্ষিপ্ত উত্তর:

  • bad: এটি সক্ষম করার Systemd Unit filesস্থিতি দেখায়
  • যে সিস্টেমগুলি ব্যবহার করে আপনি এই ধরণের বার্তাটি দেখতে পাবেন systemd
  • আপনি কমান্ডটি ব্যবহার করে সক্ষমতার স্থিতি পরীক্ষা করতে পারেন:

    sudo systemctl is-enabled <unit-name>
    

    যদি সেই ইউনিট ফাইল একটি নেটিভ systemd হল সেবা তারপর এটি আউটপুট দেবে enabled, disabledইত্যাদি যদি একটি নেটিভ systemd হল সেবা করা হয় না তাহলে এর মত একটি বার্তা রিপোর্ট দিতে হবে।

    sudo systemctl is-enabled apache2
    apache2.service is not a native service, redirecting to systemd-sysv-install
    Executing /lib/systemd/systemd-sysv-install is-enabled apache2
    enabled
    

    কিন্তু আদেশ সহ:

    systemctl status apache2
    or
    service apache2 status
    

    এটি স্ট্যাটাস দেয় bad। (সম্ভবত এটি কোনও সম্পূর্ণ বার্তা মুদ্রণ করতে সক্ষম নয় বা বিকাশকারী মুদ্রণের সিদ্ধান্ত নিয়েছে বলেই এটি হতে পারে bad)

দীর্ঘ উত্তর:

সিস্টেম ইউনিট ফাইল কি?

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

উদাহরণ:

systemctl status apache2
* apache2.service - LSB: Apache2 web server
   Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           `-apache2-systemd.conf
   Active: active (running) since Wed 2016-10-12 14:29:42 UTC; 17s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 1027 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)

systemctl চেক করবে apache2যে কোনও দেশীয় ইউনিট কিনা । যদি তা না হয় তবে এটি systemd-sysv-generatorইউনিট ফর্ম্যাটে এমন একটি ফাইল তৈরি করতে বলবে যা দেশীয় ইউনিটগুলির অনুরূপ সমর্থন সরবরাহ করে। উপরের উদাহরণে, উত্পন্ন ফাইলটি রাখা হয় /lib/systemd/system/apache2.service.d/apache2-systemd.conf

Drop-In: /lib/systemd/system/apache2.service.d
               `-apache2-systemd.conf

দ্রষ্টব্য: আপনি এখানে জেনারেটরটি খুঁজে পেতে পারেন /lib/systemd/system-generators/systemd-sysv-generatorএবং আপনি সে সম্পর্কে আরও পড়তে পারেন

man systemd-sysv-generator

মূল বিষয় :

is-enabled NAME...
       Checks whether any of the specified unit files are enabled (as with
       enable). Returns an exit code of 0 if at least one is enabled,
       non-zero otherwise. Prints the current enable status (see table).
       To suppress this output, use --quiet.

       Table 1.  is-enabled output
       +------------------+-------------------------+-----------+
       |Name              | Description             | Exit Code |
       +------------------+-------------------------+-----------+
       |"enabled"         | Enabled via             |           |
       +------------------+ .wants/, .requires/     |           |
       |"enabled-runtime" | or alias symlinks       |           |
       |                  | (permanently in         | 0         |
       |                  | /etc/systemd/system/,   |           |
       |                  | or transiently in       |           |
       |                  | /run/systemd/system/).  |           |
       +------------------+-------------------------+-----------+
       |"linked"          | Made available through  |           |
       +------------------+ one or more symlinks    |           |
       |"linked-runtime"  | to the unit file        |           |
       |                  | (permanently in         |           |
       |                  | /etc/systemd/system/    |           |
       |                  | or transiently in       | > 0       |
       |                  | /run/systemd/system/),  |           |
       |                  | even though the unit    |           |
       |                  | file might reside       |           |
       |                  | outside of the unit     |           |
       |                  | file search path.       |           |
       +------------------+-------------------------+-----------+
       |"masked"          | Completely disabled,    |           |
       +------------------+ so that any start       |           |
       |"masked-runtime"  | operation on it fails   |           |
       |                  | (permanently in         | > 0       |
       |                  | /etc/systemd/system/    |           |
       |                  | or transiently in       |           |
       |                  | /run/systemd/systemd/). |           |
       +------------------+-------------------------+-----------+
       |"static"          | The unit file is not    | 0         |
       |                  | enabled, and has no     |           |
       |                  | provisions for enabling |           |
       |                  | in the "[Install]"      |           |
       |                  | section.                |           |
       +------------------+-------------------------+-----------+
       |"indirect"        | The unit file itself is | 0         |
       |                  | not enabled, but it has |           |
       |                  | a non-empty Also=       |           |
       |                  | setting in the          |           |
       |                  | "[Install]" section,    |           |
       |                  | listing other unit      |           |
       |                  | files that might be     |           |
       |                  | enabled.                |           |
       +------------------+-------------------------+-----------+
       |"disabled"        | Unit file is not        | > 0       |
       |                  | enabled, but contains   |           |
       |                  | an "[Install]" section  |           |
       |                  | with installation       |           |
       |                  | instructions.           |           |
       +------------------+-------------------------+-----------+
       |"bad"             | Unit file is invalid or | > 0       |
       |                  | another error occurred. |           |
       |                  | Note that is-enabled    |           |
       |                  | will not actually       |           |
       |                  | return this state, but  |           |
       |                  | print an error message  |           |
       |                  | instead. However the    |           |
       |                  | unit file listing       |           |
       |                  | printed by              |           |
       |                  | list-unit-files might   |           |
       |                  | show it.                |           |
       +------------------+-------------------------+-----------+

যদি আমরা কমান্ডটি চালাই:

sudo systemctl is-enabled ssh
enabled

sudo systemctl is-enabled docker
enabled

sudo systemctl is-enabled apache2
apache2.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install is-enabled apache2
enabled

যদি আপনি ইউনিট মত systemd নেটিভ দেখতে পারেন sshএবং docker, উপরে আউটপুটে এটি শুধুমাত্র প্রদর্শন করবে enabled, এবং ইউনিট যে ভালো নেটিভ না তাদের জন্য apache2কিন্তু এখনও সক্রিয় বরং এটা প্রিন্টিং বেশী যে বার্তাগুলি দেয় badএখানে এই অবস্থার কারণ:

       +------------------+-------------------------+-----------+
       |"bad"             | Unit file is invalid or | > 0       |
       |                  | another error occurred. |           |
       |                  | Note that is-enabled    |           |
       |                  | will not actually       |           |
       |                  | return this state, but  |           |
       |                  | print an error message  |           |
       |                  | instead. However the    |           |
       |                  | unit file listing       |           |
       |                  | printed by              |           |
       |                  | list-unit-files might   |           |
       |                  | show it.                |           |
       +------------------+-------------------------+-----------+

সমাধান:

স্থিতি badসমস্যা তৈরি করবে না (আমি নিশ্চিত যে এটি নির্ভর করে) তবে এটি এর সমস্ত কার্যকারিতা সরবরাহ করবে না systemctl। আপনি packageএটির পরবর্তী প্রকাশের জন্য অপেক্ষা করতে পারেন যা স্থানীয়ভাবে সমর্থন করবে systemd। অথবা আপনি প্রদত্ত উল্লেখগুলি ব্যবহার করে আপনার পরিষেবা বা অন্য কোনও সংস্থার জন্য ইউনিট ফাইল লিখতে পারেন।

আপনি নীচে রেফারেন্সগুলি ব্যবহার করে সিস্টেমড, সিস্টেমটেক্ট এবং ইউনিটগুলি সম্পর্কে বিস্তারিত পড়তে পারেন:

  1. Systemctl

  2. সিস্টেমড ইউনিট এবং এখানে

  3. systemd


বিষয়টির সম্পূর্ণ এবং বিবেচ্য আলোচনার জন্য সত্যই ধন্যবাদ!
ম্যাট

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

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