sudo servis durumu kötü içerir;

24
$ 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

Çıkışın 2. satırındaki bad; bölümü ne anlama geliyor? Bunu birçok servis için alıyorum, ör. mysql, winbind, virtualbox, bazılarını şimdiden kusursuz bir şekilde kullandım (cassandra yeni bir kurulum).

    
sordu matt 12.10.2016 15:02

1 cevap

34

Kısa cevap:

  • bad : Systemd Unit files etkinleştirme durumunu gösterir
  • bu tür iletileri systemd kullanan sistemlerde görürsünüz
  • Etkinleştirme durumunu aşağıdaki komutu kullanarak kontrol edebilirsiniz:

    sudo systemctl is-enabled <unit-name>
    

    Eğer bu birim dosyası yerel bir sistemdistirse, çıktı enabled , disabled , vb. verir. Eğer yerel bir sistem servisi değilse, o zaman böyle bir rapor verir.

    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
    

    ancak komut ile:

    systemctl status apache2
    or
    service apache2 status
    

    durumu bad verir. (belki de bad yazdırmaya karar vermiş tam bir ileti veya geliştirici yazdıramadığı için)

Uzun Cevap:

sistem birimi dosyaları nedir?

Birimler, sistemin nasıl yönetileceğini bildiği nesnelerdir. Bunlar, temel olarak, sunulan yardımcı programlar tarafından idare edilen ve manipüle edilen sistem kaynaklarının standartlaştırılmış bir temsilidir. Servisleri, ağ kaynaklarını, cihazları, dosya sistemi bağlarını ve yalıtılmış kaynak havuzlarını soyutlamak için kullanılabilir. buradan ve here

Örnek:

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 öğesinin yerel bir birim olup olmadığını kontrol eder. Değilse, o zaman Yerleşik birimlere benzer destek sağlayan birim biçiminde bir dosya oluşturmak için systemd-sysv-generator isteminde bulunur. Yukarıdaki örnekte, oluşturulan dosya şu adreste tutulur: % Co_de%

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

Not: jeneratörü /lib/systemd/system/apache2.service.d/apache2-systemd.conf adresinde bulabilir ve bunun hakkında daha fazla bilgi edinebilirsiniz

man systemd-sysv-generator

Ana nokta :

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.                |           |
       +------------------+-------------------------+-----------+

komutu çalıştırırsak:

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

birimlerin /lib/systemd/system-generators/systemd-sysv-generator ve ssh gibi sistemd için doğal olup olmadığını, yukarıdaki çıktıda yalnızca docker göstereceğini ve enabled gibi yerel olmayan ve yine de iletileri etkinleştirdiği birimler için bununla, bu koşul nedeniyle apache2 yazdırmak yerine:

       +------------------+-------------------------+-----------+
       |"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.                |           |
       +------------------+-------------------------+-----------+

Çözüm:

status bad , sorun yaratmayacaktır (emin olduğundan emin değilim) ancak bad işlevinin tüm işlevlerini sağlamayacaktır. Doğal olarak systemctl 'yi destekleyecek olan package ' nin bir sonraki sürümü için bekleyebilirsiniz. veya verilen referansları kullanarak hizmetinize veya başka bir kaynağa birim dosyası yazabilirsiniz.

Aşağıdaki referansları kullanarak systemd, systemctl ve üniteleri hakkında ayrıntılı bilgi edinebilirsiniz:

  1. Systemctl

  2. Sistem birimi birimleri ve Here

  3. Sistemd

verilen cevap pl_rock 12.10.2016 18:05

Etiketlerdeki diğer soruları oku