我正在运行一个自定义编译的 3.18.9 内核,我想知道在系统上禁用交换的最佳方法。如果它有所作为,我也会使用 init。
是否足以注释或删除交换行/etc/fstab以防止交换在启动时工作/挂载,或者我应该重新编译内核而Support for paging of anonymous memory (swap)不是 100% 确定它没有被启用?
我运行加密分区并希望防止意外泄漏到硬盘。我的系统规格也足够好,我可以在无交换环境中生存。
我想确定在基于 Debian 的系统(特别是 Debian Squeeze)的引导过程中服务是按什么顺序启动的。
我正在尝试$HOME在ExecStart. 我尝试了很多不同的东西$HOME,${HOME}但似乎没有任何效果
ExecStart=${HOME}/bin/some-binary
Run Code Online (Sandbox Code Playgroud)
有人知道这个的正确格式吗?
/etc/init.d/ 脚本的正确权限是什么,哪些 chmod 选项设置了它们?
我正在寻找一种标准方法或最佳实践来保持由init.dshell 脚本启动的守护进程。
或者更好的是,有没有办法让它直接从/etc/init.d?
具体来说,我有一个名为 dtnd 的守护进程,它具有无限循环,用于查找意外结束的进程,如果有的话,守护进程会再次唤醒它们。此外,我使用 start-stop-daemon 工具来让进程从给定的系统用户运行。
我想从启动时运行这个 dtnd 守护进程。为了实现这种行为,我创建了一个 init.d 脚本,它使用 start、stop 和 status 命令“包装”dtnd 文件。
我有两个问题要解决:
有没有办法从 init.d shell 脚本中实现使某些进程保持活动状态。是标准/最佳实践吗?
建议使用无限循环保持进程存活?我想最好使用一些命令respawn来实现这一点。这是正确的?
我知道respawn命令的存在。我认为这就是我需要的,但我不明白之间的工作流程/etc/init.d/和/etc/init。谁能帮我?
请注意,我没有inittab文件既没有暴发户(我只被允许使用/etc/init,/etc/init.d,cron和系统工具start-stop-daemon。我的意思是,只有默认工具)
非常感谢您的参与!
使用 NAS 盒作为 24/7 文件服务器,我想使用 sshfs 从 Ubuntu 9.04 桌面连接到它。目前,我在桌面的 fstab 中有这一行:
sshfs#jldugger@storage:/mnt/HD_a2/ /mnt/storage fuse comment=sshfs,auto,users,exec,uid=1000,gid=1000,allow_other,reconnect,transform_symlinks,BatchMode=yes,fsname=sshfs#jldugger@storage/mnt/HD_a2/ 0 0
Run Code Online (Sandbox Code Playgroud)
我可以确认它适用于 mount /mnt/storage。我需要的是在启动时安装它的一些方法,但在建立网络连接之后。
我正在使用 upstart 通过 autossh 管理反向 SSH 隧道。当我执行“sudo start tunnel”时,连接正常;但是,当网络服务启动时,该命令不会自动运行,无论我如何更改“启动”属性,我似乎都无法让它以自动方式运行。
但是,就像我说的,我可以很好地启动/停止它。
这是我的 /etc/init/tunnel.conf,去掉了敏感内容:
description "SSH Tunnel"
start on started networking
stop on stopping networking
respawn
env DISPLAY=:0.0
exec autossh -nNT -R 22100:localhost:22 myuser@myserver.com -p 2201
Run Code Online (Sandbox Code Playgroud) 我刚刚配置了一个运行 CentOS 6 的新 VPS,它与 Apache 一起提供。
我想禁用 Apache,因为我将使用 Nginx。
我知道我可以删除 /etc/init.d/ 中的脚本,但我不想这样做,因为它是系统附带的一个库存。我宁愿有一种优雅的方式来禁用该服务。
我以为我可以在 /etc/inittab 中放一些东西,但 inittab 包含:
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init. …Run Code Online (Sandbox Code Playgroud) 我需要为 IRC 记录器创建一个初始化脚本。我复制了/etc/init.d/skeleton。我填写了配置部分以满足我的需要,并且我还必须将 --background 添加到 start daemon 命令,因为我的 IRC 记录器不会分离。当我使用我的 init 脚本时,记录器可以正常启动,但它不会像它应该的那样创建 .pid 文件。因此,除非我自己找出进程 ID 并杀死它,否则进程无法停止。这是脚本:
#! /bin/sh
### BEGIN INIT INFO
# Provides: skeleton
# Required-Start: $remote_fsh
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Example initscript
# Description: This file should be used to construct scripts to be
# placed in /etc/init.d.
### END INIT INFO
# Author: Cory Walker <cwalker32@gmail.com>
#
# Please remove the "Author" lines above and …Run Code Online (Sandbox Code Playgroud) 我试图弄清楚为什么 runit 无法启动或给我托管应用程序的状态。在 Ubuntu 12.04 上运行。
我创建了 /service、/etc/sv/myapp(其中包含一个运行脚本、一个配置文件、一个日志文件夹和一个运行脚本)。我创建了一个从 /service/ 到 /etc/sv/myapp 的符号链接
当我跑
sudo sv s /service/*
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息:
warning: /service/myapp: unable to open supervice/ok: file does not exist
Run Code Online (Sandbox Code Playgroud)
我的一些谷歌搜索显示,据说重新启动 svscan 服务可能会解决这个问题,但杀死它并运行 svscanboot 并没有什么区别。
有什么建议?我在这里的某个地方错过了一步吗?