Articles of init

Solaris 10 init无法获得僵尸进程

ps目前显示17617僵尸进程,所有这些进程都有1 / init的ppid。 初始化应该收获这些已经停止的进程,但不是由于某种原因。 不存在的进程数量正在增长。 试图强制他们使用preap收获失败: preap: Failed to reap 15977: the only non-defunct ancestor is 'init' 顺便说一下,我如何计算进程: % ps -e -o pid,s,ppid | awk 'index($2,"Z")>0 {ppid[$3]=ppid[$3]+1} END {for (key in ppid) print key,ppid[key]}' 1 17617 我发现这个令人不安的日志条目: Jun 20 22:45:34 host genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap space to grow stack for pid […]

自定义initrd init脚本:如何创build/ dev / initctl

我有一个装有两个IDE HDD(/ dev / hda和/ dev / hdb)的虚拟机(VMM是Xen 3.3)。 根文件系统位于/ dev / hda1,其中安装了Scientific Linux 5.4。 / dev / hdb包含一个空的ext2文件系统。 我想通过使用aufs(AnotherUnionFS)来保护根文件系统免受虚拟机的写入,从而在根文件系统之上分层写入一个可写的文件系统。 /的更改将写入位于/ dev / hdb的文件系统。 (此外,在虚拟机之外,支持/ dev / hda的文件也将被设​​置为只读权限,所以VMM也应该防止虚拟机在该级别修改。)(此设置的目的:能够使用软件实现的故障注入破坏虚拟机,但保留文件系统映像以便快速将VM重新引导到无故障状态。) 如何获得一个initrd初始化脚本来执行必要的挂载来创build联合文件系统? 我已经尝试了两种方法: 我试过修改mkinitrd创build的nash脚本,但是我不知道setuproot和switchroot做了什么,以及如何让它们使用我的aufs作为新的根。 显然, 这里没有人知道。 (编辑:我拿回来。) 我试过build立一个LiveCD(使用linux-live-6.3.0),然后从生成的initrd修改Bash / linuxrc脚本,我得到了正确的安装,但是最终/ sbin / init抱怨/ dev / initctl 。 具体来说,我的/ linuxrc在/ union加载aufs。 / linuxrc的最后几行有效地执行以下操作: cd /union mkdir -p mnt/live pivot_root […]

CentOS 5.5不能启动了, 可怕的“无法find文件系统/ dev / root”错误

通常我在网上find我的答案没有问题,但是我一直试图修复我已经停了3天的服务器,而且我没有更进一步。 有问题的服务器是运行openvz-kernel的Centos 5.5机器,2.6.18-194.8.1.el5.028stab070.5更为谨慎。 我们没有物理访问服务器,我们也没有某种types的串行/networking控制台。 我们确实有一个基于debian的救援磁盘加载到pxe上。 服务器有两个磁盘,SDA: Disk /dev/sda: 320.0 GB, 320071851520 bytes 255 heads, 63 sectors/track, 38913 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/sda1 * 524 1193 5381775 83 Linux /dev/sda2 1 523 4200997 82 Linux swap / Solaris /dev/sda3 […]

这个脚本不会在启动时执行,想法?

发行版是RHEL 5。 该脚本已被添加到chkconfig像这样: # chkconfig –add script # chkconfig script on 但是在拿起机器时拒绝启动,可能是什么问题? #!/bin/bash # # chkconfig: 2345 20 80 # description: starts script . /etc/rc.d/init.d/functions PATHB=/xxxx/opt/virtualenvs/primary/bin USER=userx function start() { /usr/bin/sudo /bin/su – $USER -c "$PATHB/script start" } function stop() { /usr/bin/sudo /bin/su – $USER -c "$PATHB/script stop" } function status() { /usr/bin/sudo /bin/su – […]

在init脚本中使用ex

我使用ex从/etc/init.d/CONFIG脚本修改configuration文件。 我正在使用debian squeeze(昨天更新) 我的问题是:使用当前挤压系统的vi / ex软件包在init脚本中启动ex / vi是不可能的。 没有错误信息 – 提示只是停止,但可以用STRG-C释放。 它一直工作,直到昨天挤压包/ 3个月前。 我的问题是为什么? 我能做些什么来解决这个问题? 编辑1 :只有一个脚本试图从USBconfiguration和configuration服务。 Edit2 :我正在做的一个样本: # get usb stick's mount point … # get config from stick … # edit config file ex ${PREFIX}/etc/mysql/my.cnf -c '%s/^datadir.*$/datadir = /usr/local/mysql/data' -c'wq!' # change that might fail and is allowed to fail ( ex […]

什么在FC14中创build/ dev / stderr?

我想知道什么创buildFC14上的/ dev / stderr。 rpm -qf不显示任何软件包的所有权。 我已经通过init脚本挖掘,找不到任何地方。 为了提供一些背景知识,我正在创build一个chroot'd监狱,从lxc开始。

linux,为init设置亲和力

在启动系统时,在linux(debian)中为init进程设置亲和掩码的最方便的方法是什么? 我知道taskset,但是我想为init启动时设置亲和性掩码,所以所有进程都会inheritance它。 谢谢。

红帽5升级/狮身人面像search初始化启动挂起

我最近将虚拟机升级到了Redhat 5,并将Sphinx Search移到了该服务器上。 由于某些原因,当我尝试启动Sphinx时,启动脚本无法将searchd进程推到后台。 我使用最小版本的启动调用创build了一个testing脚本,如下所示: #!/bin/sh . /etc/rc.d/init.d/functions daemon /usr/local/sphinx/bin/searchd –config /home/app/code/server_config/sphinx_config.php searchd进程开始,我得到的输出表明它正在侦听正确的IP:端口,但是这个进程永远不会返回。 挂起的过程在守护进程调用中,ps显示为: /bin/bash -c ulimit -S -c 0 >/dev/null 2>&1 ; /usr/local/sphinx/bin/searchd –config /home/app/code/server_config/sphinx_config.php 任何想法可能会导致这种情况或如何排除故障? 我们在运行Redhat 4的其他十几台服务器上使用相同的进程,虽然由守护进程创build的进程使用initlog,所以它是不同的。

init 5 kdump失败

每当我做一个init 5运行级别。 系统是这样的.. Starting portreserve: [ ok ] Starting irqbalance: [ ok ] Starting kdump: [FAILED] Retrigger failed udev events: [ ok ] 我得到这个“ kdump失败 ”,并挂在“ Retrigger失败udev事件 ”如上所示。 相当新的红帽不知道如何configuration。

(initscripts)执行一个命令,如果命令在10秒内没有完成,则运行另一个命令

在(Debian)Linux上我想: 执行一个命令。 如果命令在10秒内没有完成,请杀死它并尝试另一个命令。 用例是: 我有一个守护进程服务,我想优雅地closures。 它可以通过发送一个TCP命令来停止。 如果TCP命令没有返回,则使用Posix HUP终止进程。 启动 – 停止守护进程似乎不这样做,任何人有任何提示?