相关疑难解决方法(0)

有什么理由让shebang指向/bin/sh而不是/bin/bash?

在我见过的大多数 shell 脚本中(除了我自己没有写的脚本),我注意到 shebang 设置为#!/bin/sh. 这在旧脚本上并没有让我感到惊讶,但在相当新的脚本上也是如此。

是否有任何理由宁愿/bin/sh/bin/bash,因为bash几乎是无处不在的,而且往往默认情况下,许多Linux和BSD的机器回去了十多年?

shell bash history shebang

54
推荐指数
5
解决办法
6513
查看次数

究竟什么是“停止作业”,如“停止作业正在运行......”?

发出关闭命令后,有时会收到如下状态消息:

A stop job is running for Session 1 of user xy
Run Code Online (Sandbox Code Playgroud)

然后系统挂起一段时间,或永远取决于 ???

那么究竟什么是“停工”呢?

另外,为什么它有时会非常准确地估计所需的时间,而有时它可以永远运行?

shutdown systemd

42
推荐指数
1
解决办法
9万
查看次数

鞭尾或对话

我将创建一个使用用户输入的脚本,所以我决定使用whiptail.

但是现在我有点困惑哪个是可移植的并且可以在 Ubuntu 10.x 及更高版本和 CentOS 5.x 及更高版本上运行。

我知道read,但我想要一个像dialog. 如果有人知道任何替代方案,请告诉我。

bash shell-script whiptail dialog

20
推荐指数
4
解决办法
3万
查看次数

在哪里可以找到特定服务的日志文件

使用sudo journalctl -u {service}我可以看到特定服务的日志。

  1. 如何找到相关的日志文件?
  2. 以编程方式监视日志文件的最佳方法是什么?(我的意思是一个程序基于某些东西出现在日志文件中)

systemd journalctl

6
推荐指数
1
解决办法
1万
查看次数

将旧的 sysvinit 习惯移植到 systemd

我有一系列脚本,可以用来安装和配置新的 Debian 稳定系统。要自动启动我使用的程序,/etc/rc.local但在其他情况下,我必须手动更改/etc/inittab文件。我还有其他更改,例如添加--noclear到行中1:2345:respawn:/sbin/getty --noclear 38400 tty1

因为我必须自定义关闭过程,所以我最终这样做了:

l0:0:wait:/etc/rc.halt 0
...
l6:6:wait:/etc/rc.halt 6
Run Code Online (Sandbox Code Playgroud)

/etc/rc.halt看起来像这样

#!/bin/sh
#   
# rc.halt
#   
# This script is executed when entering level 6/0 (on halt or reboot)

su - teststand -c "/home/teststand/stop_server.sh"  # my custom command

# making sure the halt/reboot process is resumed
test -n "${1}" && /etc/init.d/rc ${1}

exit 0
Run Code Online (Sandbox Code Playgroud)

今天是我第一次安装新的 Debian 8systemd作为默认初始化系统。我没有想到这一点,首先惊讶的是/etc/inittab文件丢失了。

在我正在运行的系统(@work 和 @home)上,我仍在运行我的系统,sysvinit这就是为什么我在systemd. …

systemd sysvinit

5
推荐指数
1
解决办法
3218
查看次数