Linux 服务:是否有服务的 GUI?

Linux 服务:是否有服务的 GUI?

我正在寻找一个 GUI 程序,它可以显示 /etc/init.d(和 /etc/init)中正在运行的服务,并允许管理(启动 / 停止 / 运行级别)它们。您有什么推荐的吗?

背景:尽管我喜欢使用命令行,但这可以在专门用于尝试不同服务的测试机上简化一些事情,以便您可以看到正在运行什么,什么没有运行。例如:在一台机器上测试 tomcat 5.5、tomcat 6、tomcat 7 ... 在某些版本中添加两个 RDBMS,Apache httpd,...

最后但同样重要的一点是:一些带有不错的 ncurses 菜单的 CLI 工具也可以做到。

答案1

尝试sysv-rc-conf改变运行级别设置。

chkconfig查看正在运行的内容

不要忘记,ubuntu(和其他系统?)开始使用 Upstart 启动管理器,所以你也必须留意 /etc/init 目录

答案2

旧帖子,但现在确实有!查看systemd 管理器

系统管理器

此应用程序是一个 systemd 服务管理器,使用 Rust 编程语言编写,以 GTK3 作为首选图形用户界面。单元被过滤到三个单独的列表中:服务、套接字和计时器。在左侧窗格中选择一个单元后,右侧窗格将更新与该单元相关的信息,右侧标题栏将更新以反映单元的状态,您可以在其中禁用/启用和启动/停止所选单元。服务是立即激活的单元,套接字是在需要时激活的单元,计时器是按固定时间间隔激活的单元。除了显示单元之外,该应用程序还在 Systemd Analyze 视图上提供由 systemd-analyze 生成的统计信息。

答案3

在我的 Redhat(呃,Centos)盒子上:

诅咒:ntsysv

图形用户界面(GUI):system-config-services

另外,请记住在文件顶部添加描述性注释节。chkconfig 和其他工具(如 ntsysv)会读取此内容。

答案4

曾经我自己写过一个 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"

相关内容