在bash脚本中,我希望为lvresize命令添加超时,因此如果命令正在等待,
我将在5秒后退出,因为它是:
timeout 5 lvresize -L 1M /dev/mapper/rootvg-home
Rounding size to boundary between physical extents: 32.00 MiB
WARNING: Reducing active and open logical volume to 32.00 MiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce home? [y/n]:但是,由于某些不清楚的原因,超时不适用于lvresize?
为什么?超时5秒后不退出命令?
发布于 2016-06-19 22:24:39
当这个方法失败时(我的假设是lvresize忽略了TERM信号),这是一个糟糕的方法,因为lvresize's的真正任务可能要花那么长时间,而且你真的不想在它工作的时候杀死它。
相反,分别要求确认(如果需要使用timeout ),然后不间断地运行lvresize。
发布于 2016-06-21 09:49:52
若要回答任何问题,请在命令中添加-qq选项。
在使用--force/--yes时,您应该反复检查脚本在做什么。+1对凯伦B使用expect的建议。
https://serverfault.com/questions/784928
复制相似问题