AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

    • 主页
    • 系统&网络
    • Ubuntu
    • Unix
    • DBA
    • Computer
    • Coding
    • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[init](server)

Martin Hope
Roman Grazhdan
Asked: 2016-09-08 09:27:26 +0800 CST

s6 主管:无法使用使用 s6-envdir 设置的变量

  • 1

我正试图围绕 s6 主管套件。我已经想出了运行和日志,但我被 s6-envdir 困住了,我不确定如何使用它。

我看到环境变量已设置,但我无法访问它。

为了显示:

# According to the docs, set a variable
cat /local/s6/services/ping_stdout/env/PING_HOST
ya.ru
# Make sure there's no such variable in my current env
env | grep PING_HOST
echo $?
1
# Make sure it gets exported if I use s6-envdir
s6-envdir /local/s6/services/ping_stdout/env env | grep PING_HOST
PING_HOST=ya.ru
# Now try to get it printed
s6-envdir /local/s6/services/ping_stdout/env echo "=== ${PING_HOST} ==="
===  ===

它没有被使用,但如果我尝试使用我的环境中已经存在的东西,没问题:

s6-envdir /local/s6/services/ping_stdout/env echo "=== ${ZSH} ==="
=== /home/hoodoo/.oh-my-zsh ===

我是不是搞错了什么?

如何使用 s6-envdir 设置的变量?

environment-variables process init
  • 1 个回答
  • 641 Views
Martin Hope
facha
Asked: 2016-08-23 23:12:12 +0800 CST

init 不会杀死僵尸

  • 3

我的系统上有一些僵尸进程。我已经杀死了那些僵尸的父级,希望 init 能够接管并释放资源(CLOSE_WAIT 中有很多套接字)。但是 init 并没有从系统中删除这些进程:

#ps ax
...
17051 ?        Zl   8498:24 [impalad] <defunct>
...

# ps -o ppid= -p 17051
    1

有没有办法在不重新启动的情况下移除僵尸?

更新:

我试过了kill -s SIGCHLD 1。它没有帮助。

linux init zombie
  • 1 个回答
  • 4234 Views
Martin Hope
Ted Desmond
Asked: 2016-05-26 15:29:15 +0800 CST

无法进行 PXE 引导,“没有文件系统可以挂载根”错误

  • 1

我正在尝试使用我创建的映像进行 PXE 引导,但在加载映像和内核后,我收到以下错误消息:

http://i.imgur.com/TYlbvKZ.jpg?1

主要的错误信息是这样的:

No filesystem could mount root, tried: ext3 ext2 iso9668
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0
Pid: 1, comm: swapper not tainted 2.6.34.1 #4

我已经尝试在网上查找有关此的建议,但我发现要么硬件不兼容,要么使用另一个内核。我相信硬件是兼容的,因为我能够毫无问题地从 SD 卡启动相同的内核(不幸的是,我没有创建的自定义内核)和操作系统(Scientific Linux 5),所以我认为这个网络引导也应该适用于相同的内核和系统。/sys为了使我的 SL5 映像用于网络启动,我已经从 SD 卡中完全复制了所有文件(和中的文件除外/proc),但我仍然收到此错误消息。我也只尝试复制必要的目录,如/bin, /dev, /etc,/lib等。即使只有这些目录,图像也是 2.6GB 左右,我仍然收到此错误消息。

现在我觉得我有两个选择要解决:要么图像太大而无法安装ram0(有大小限制吗?),在这种情况下我应该修剪目录的内容;或者系统根本无法识别ram0,并且 initrd 进程存在问题。

以下是我的pxelinux.cfg/default文件的相关内容:

LABEL SL5
MENU LABEL SL5
KERNEL images/vmlinuz-2.6.34.1-32-v7805
APPEND initrd=images/SL5rootfs.gz root=/dev/ram0 ramdisk_size=3100000 rw ip=dhcp fastboot mem=3g
mount pxe-boot init
  • 2 个回答
  • 2945 Views
Martin Hope
Joachim Breitner
Asked: 2012-07-08 08:54:06 +0800 CST

如何查看专用服务器上的 init 脚本输出?

  • 4

我租了一台专用服务器,运行 Debian 稳定版。您在屏幕上看到的启动输出(如果有的话)是否存储在任何地方?如果没有,是否有一种非侵入式的方法可以在下次重新启动后使该数据可用?或者您如何确保系统干净地启动?

debian init dedicated-server
  • 1 个回答
  • 111 Views
Martin Hope
user705142
Asked: 2012-05-10 17:10:43 +0800 CST

corosync 的奇怪初始化脚本问题

  • 0

这可能有一个简单的解释,但我肯定想不到。

我已经安装了 corosync(通过 yum),它是默认的初始化脚本。这个特定的 CentOS 安装有些奇怪,因为我经常需要手动将 /etc/rc.d/init.d/ 链接到 /etc/init.d。

问题是它在通过它的符号链接运行时失败,但它通过 /etc/rc.d/init.d 运行良好

更奇怪的是,如果使用完整路径运行,它就无法运行,而且只有在 /etc/rc.d/init.d 目录中实际运行时才会运行。

例子:

[~]# /etc/rc.d/init.d/corosync start
     Starting Corosync Cluster Engine (corosync):               [FAILED]
[~]# service corosync status
     corosync is stopped
[~]# cd /etc/rc.d/init.d/
[init.d]# /etc/rc.d/init.d/corosync start
          Starting Corosync Cluster Engine (corosync):          [FAILED]
[init.d]# corosync start
[init.d]# service corosync status
          corosync (pid  1985) is running...

有什么解释吗?

编辑:

不确定我到底做了什么更改,但它现在在从 /rc.d/init.d 启动时有效,但在服务 corosync 启动时无效。

[root@server2 mirror]# /etc/rc.d/init.d/corosync start
Starting Corosync Cluster Engine (corosync):               [  OK  ]

[root@server2 mirror]# /etc/init.d/corosync start
Starting Corosync Cluster Engine (corosync):               [FAILED]

[root@server2 mirror]# service corosync start
Starting Corosync Cluster Engine (corosync):               [FAILED]

编辑 2:

建立了一个从 /etc/rc.d/init.d 到 /etc/init.d 的符号链接 .. 现在它可以在通过 service corosync start 运行时工作.. 但不会在启动时启动,哎呀。

编辑 3:

它适用于除启动外的所有命令。

我已将运行级别更改为 99,但它仍然失败,并且我已将脚本内的路径更改为绝对路径:/usr/sbin/corosync

我还做了环境变量的差异:

在服务 corosync 启动时:

_=/bin/env
LANG=en_US.UTF-8
PATH=/sbin:/usr/sbin:/bin:/usr/bin
PWD=/
SHLVL=1
TERM=xterm

启动时:

_=/bin/env
LANG=en_US.UTF-8
PATH=/sbin:/usr/sbin:/bin:/usr/bin
PWD=/
SHLVL=2
TERM=linux
CONSOLETYPE=vt
LANGSH_SOURCED=1
previous=N
PREVLEVEL=N
runlevel=3
RUNLEVEL=3
UPSTART_EVENTS=runlevel
UPSTART_INSTANCE=
UPSTART_JOB=rc

开机日志:

Starting Corosync Cluster Engine (corosync):    [FAILED]
scripting init init.d corosync
  • 5 个回答
  • 1900 Views
Martin Hope
timday
Asked: 2010-04-19 01:26:33 +0800 CST

重建 /etc/rc?.d/ 链接

  • 2

对 Debian Lenny 系统的常规文件系统检查触发了 fsck,这会破坏/etc/rc?.d层次结构中的一些链接(不幸的是,我没有保留列表)。

该系统似乎可以正常启动和运行,但我担心它会为将来存储麻烦。

是否有一种简单(相当自动)的方法来重建这部分系统?据我了解,链接通常由使用 update-rc.d 的包 postinst 脚本操作(并且我没有对已安装的默认值进行任何更改)。

没有任何更好的想法,我的计划是以下之一:

  • 将列表与另一个类似系统进行比较,以确定哪些包需要修复其链接。
  • 等到系统升级到 Squeeze(希望不会太久:^)并假设批量升级包将恢复所有丢失的链接。
debian debian-lenny init rc.d runlevel
  • 1 个回答
  • 1175 Views
Martin Hope
churnd
Asked: 2010-04-08 03:35:01 +0800 CST

需要有关自定义初始化脚本的帮助

  • 2

我正在尝试为 redhat linux 上的进程设置一个初始化脚本:

#!/bin/sh
#
# Startup script for Conquest
#
# chkconfig: 345 85 15     - start or stop process definition within the boot process
# description: Conquest DICOM Server
# processname: conquest
# pidfile: /var/run/conquest.pid

# Source function library.      This creates the operating environment for the process to be started
. /etc/rc.d/init.d/functions

CONQ_DIR=/usr/local/conquest

case "$1" in
  start)
        echo -n "Starting Conquest DICOM server: "
        cd $CONQ_DIR && daemon --user mruser ./dgate -v                 - Starts only one process of a given name.
        echo
        touch /var/lock/subsys/conquest
        ;;
  stop)
        echo -n "Shutting down Conquest DICOM server: "
        killproc conquest
        echo
        rm -f /var/lock/subsys/conquest
        rm -f /var/run/conquest.pid      - Only if process generates this file
        ;;
  status)
        status conquest
        ;;
  restart)
        $0 stop
        $0 start
        ;;
  reload)
        echo -n "Reloading process-name: "
        killproc conquest -HUP
        echo
        ;;
  *)
        echo "Usage: $0 {start|stop|restart|reload|status}"
        exit 1
esac

exit 0

但是,cd $CONQ_DIR由于脚本错误,因此被忽略了:

# ./conquest start
Starting Conquest DICOM server: -bash: ./dgate: No such file or directory
                                                           [FAILED]

出于某种原因,我必须将 dgate 作为 ./dgate 运行。我无法指定完整路径/usr/local/conquest/dgate

该软件带有一个用于 Debian 系统的初始化脚本,因此该脚本使用start-stop-daemon, 并带有--chdirdgate 所在位置的选项,但我还没有找到使用 Redhat 守护程序功能执行此操作的方法。

redhat init
  • 4 个回答
  • 1417 Views
Martin Hope
Chris Lercher
Asked: 2010-03-18 17:31:19 +0800 CST

处理 iptables 初始化失败的正确方法?

  • 0

我正在/etc/network/if-pre-up.d/iptables使用 iptables-restore 通过初始化我的 iptables 规则。这很好用,但我有点担心如果该脚本由于某种原因失败(可能保存的 iptables 文件已损坏或其他原因)会发生什么。

如果脚本失败,我想:

  • 在没有任何 iptables 规则的情况下启动我的网络接口
  • 启动 OpenSSH 服务器
  • 但不是任何其他服务,如 Web 服务器,......(并且可能停止运行实例)

有没有一个很好的规范方法来做到这一点?进入较低init阶段?- 我已经很久没有这样做了,而且我认为近年来关于 init 发生了很多变化(?) - 我应该降到哪个阶段,OpenSSH 服务器和我的网络接口仍然运行吗?

谢谢

克里斯

(在 Debian Lenny 上)

linux debian startup init
  • 2 个回答
  • 220 Views
Martin Hope
darkAsPitch
Asked: 2010-02-24 02:20:08 +0800 CST

如何在启动后 X 分钟自动关闭 Ubuntu?

  • 6

如何在打开 30 分钟后自动关闭 ubuntu 操作系统?还是开机15分钟后?ETC?

我尝试像这样创建一个 init.d 脚本:

shutdown -h +5

但是我的盒子在 5 分钟后没有关闭。

scripting ubuntu automation init
  • 2 个回答
  • 2580 Views
Martin Hope
CarpeNoctem
Asked: 2010-02-16 18:45:09 +0800 CST

解释 RedHat 发行版启动进入紧急模式的步骤?

  • 2

拜托,我不是在寻找RedHat 文档中有关紧急模式的内容的重述。我想知道从 grub 移交给内核到您获得紧急模式登录提示时涉及哪些步骤。

我想 /sbin/init 完全被绕过了,因此 rc.sysinit 也被绕过了。但是,我不知道什么没有被绕过,或者紧急模式与 init=/bin/sh 有何不同(密切)。

当在引导时给出紧急参数时,内核会采取什么样的步骤?谢谢!

linux startup kernel init
  • 2 个回答
  • 700 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助
subwaysurfers
my femboy roommate

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve