小编nev*_*gqs的帖子

为什么我的 Python 后台进程在 SSH 会话终止时结束?

我有一个 bash 脚本,它启动一个 python3 脚本(让我们称之为startup.sh),关键行:

nohup python3 -u <script> &
Run Code Online (Sandbox Code Playgroud)

当我ssh直接进入并调用此脚本时,python脚本在我退出后继续在后台运行。但是,当我运行此命令时:

ssh -i <keyfile> -o StrictHostKeyChecking=no <user>@<hostname> "./startup.sh"
Run Code Online (Sandbox Code Playgroud)

该过程ssh在完成运行后立即结束并关闭会话。

两者有什么区别?

编辑:python 脚本通过 Bottle 运行 Web 服务。

EDIT2:我也尝试创建一个调用startup.sh和运行的初始化脚本ssh -i <keyfile> -o StrictHostKeyChecking=no <user>@<hostname> "sudo service start <servicename>",但得到了相同的行为。

EDIT3:也许是脚本中的其他内容。这是脚本的大部分内容:

chmod 700 ${key_loc}

echo "INFO: Syncing files."
rsync -azP -e "ssh -i ${key_loc} -o StrictHostKeyChecking=no" ${source_client_loc} ${remote_user}@${remote_hostname}:${destination_client_loc}

echo "INFO: Running startup script."
ssh -i ${key_loc} -o StrictHostKeyChecking=no ${remote_user}@${remote_hostname} "cd ${destination_client_loc}; …
Run Code Online (Sandbox Code Playgroud)

bash ssh python background-process

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

如何在关机期间防止 DHCP 释放?

我目前使用的是 Ubuntu 14.04,但希望这适用于不同的发行版。

我想在关机期间阻止 DHCP 释放,并选择租约到期或在启动时更新 DHCP(如果需要)。

这可能吗?

编辑:我(曾经)有一个分布式应用程序,它根据域名解析做出不同的响应。如果机器在线但应用程序不可用,则其他机器上的应用程序将其理解为不可用。但是,如果 IP 已被释放(通过关闭),应用程序无法理解它我们不可用,而是挂起或抛出错误。

不幸的是,我不再有重现错误的设置,并且不记得它是挂起还是抛出错误,以及错误是什么。

shutdown networking ubuntu dhcp

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

什么决定了磁盘上可用的 inode 数?

它是基于格式化硬盘驱动器时确定的数字吗?

例如:

$ df -Ti /
Filesystem     Type Inodes IUsed  IFree IUse% Mounted on
/dev/dm-0      ext4 983040 95683 887357   10% /
Run Code Online (Sandbox Code Playgroud)

那个983040从哪里来?我们可以增加/减少它吗?在什么范围内?

inode

5
推荐指数
2
解决办法
6146
查看次数

标签 统计

background-process ×1

bash ×1

dhcp ×1

inode ×1

networking ×1

python ×1

shutdown ×1

ssh ×1

ubuntu ×1