web-dev-qa-db-ja.com

Linuxサービス:サービス用のGUIはありますか?

/etc/init.d(および/ etc/init)から実行中のサービスを表示し、それらを管理(開始/停止/実行レベル)できるGUIプログラムを探しています。何を勧めますか?

背景:コマンドラインでの作業は好きですが、これにより、さまざまなサービスを試すための専用のテストマシンで作業が少し楽になり、実行されているものと実行されていないものを確認できます。例:テスト用に1台のマシンにTomcat 5.5、Tomcat 6、Tomcat 7 ...一部のバージョンでは2つのRDBMS、Apache httpdなどを追加します...

最後になりましたが、まともなncursesメニューを備えたCLIツールも同様に機能します。

12
pwn4g3

sysv-rc-confを試して、ランレベル設定を変更してください。

およびchkconfigは、何が実行されているかを確認します

Ubuntu(および他の人)がUpstart Startup Managerを使用し始めていることを忘れないでください。そのため、/ etc/initディレクトリも監視する必要があります。

5
bryan

古いスレッドですが、はい、あります。 systemd-manager をチェックしてください

Systemd Manager

このアプリケーションは、Rustプログラミング言語で記述されたsystemdサービスマネージャーであり、GTK3をグラフィカルユーザーインターフェイスとして選択します。ユニットは、サービス、ソケット、タイマーの3つの個別のリストにフィルターされます。左側のペインでユニットが選択され、右側のペインがそのユニットに関連する情報で更新され、右側のヘッダーバーが更新されて、選択したユニットを無効化/有効化および開始/停止できるユニットのステータスが反映されます。サービスはユニットですすぐにアクティブ化されるソケット、必要なときにアクティブ化されるユニット、タイマーは一定の時間間隔でアクティブ化されるユニットです。アプリケーションは、表示ユニットに加えて、systemdAnalyzeビューでsystemd-analyzeによって生成された統計情報も提供します。

4
vejiwavi

私のRedhat(err、Centos)ボックス:

curses:ntsysv

gui:system-config-services

別の注意点として、ファイルの先頭に説明的なコメントスタンザを追加することを忘れないでください。 chkconfigおよび他のツール(ntsysvなど)はこれを読みます。

2
Rich Homolka

Webの代替案も検討している場合は、 webmin を参照することをお勧めします。

1
vtest

昔々、私は自分でzenity-GUIを作成しました。簡単に言うと、init.d内のファイルを検索し、caseステートメントを取得し、その場で何を表示するかを推測しようとします。

多分それはすべてのサービスでうまく機能しないかもしれませんが、私の仕事(cups、postgresql、...)ではそれで十分です。

補足として、ウィンドウを画面サイズ(最大)とコンテンツサイズ(幅、長さ)に動的に合わせる方法を示します。

ここにあります:

#!/bin/bash
#
# oetv.sh
# Show all servives in /etc/init.d in a list, and let the user choose how to start it.
#
# (c) 2008 Stefan Wagner, license GPLv3
# 
# Search /etc/init.d/ for all executable files
# Get their number, and the maximum name size to produce a fitting window

width=0
height=0

# The font will influence the optimal window size
# But I don't know how to get them. 
# Probably depending on windowmanager, desktop, usersettings 

function xyFromList 
{
    anz=0 
    wmax=0 
    for file in $1
    do 
        anz=$((anz+1))
        len=${#file}
        [ $len -gt $wmax ] && wmax=$len
    done;
    width=$((wmax*9+50))
    height=$((anz*26+160))
}

dienstlist=$(ls /etc/init.d/ )
xyFromList "$dienstlist"

dienst=$(zenity --width=$width --height=$height --list --text "Service schalten" --column "Dienst" $dienstlist)
[ "foo"$dienst == "foo" ] && exit

# select options for the service, and display an apropriate window

optionen=$(egrep -h "[a-z]+\)" /etc/init.d/$dienst | sed 's/^[ \t]*//;s/).*/)/;s/#.*//;s/)//g;s/|/ /g' | sort -u)
xyFromList "$optionen"
aktion=$(zenity --width=$width --height=$height --list --text "Service schalten" --column "Befehl" $optionen)
[ "foo"$aktion == "foo" ] && exit
result=$(gksudo /etc/init.d/$dienst $aktion)
zenity --info "$aktion" --text "$result"
0
user unknown