所以我已经交了一个python项目,其中有很多Linux系统调用mount/unmout/format/etc备份驱动器用于定制的NAS.
现在我想处理umount命令的输出并处理已卸载路径的情况:
print subprocess.check_output(['umount', '/storage/backup'])
Run Code Online (Sandbox Code Playgroud)
可能会返回:
umount: /storage/backup: not mounted
Command '['umount', '/storage/backup']' returned non-zero exit status 32
Run Code Online (Sandbox Code Playgroud)
现在,我可以解析输出字符串并搜索not mounted,但我更喜欢处理退出状态值(在本例中为32).我试图找到umount命令的退出代码列表,但到目前为止还不走运.
此外,我已经尝试找到umount的源代码,但一直无法找到它(谷歌一直指向umount命令的手册页或源代码mount.c)
编辑
手册页umount有错误列表(非数字),如:
然后: 下面给出的错误值来自文件系统类型独立错误.每种文件系统类型都可能有自己的特殊错误和自己的特殊行为.有关详细信息,请参阅Linux内核源代码.
有什么指针吗?
小智 9
来自man mount:
RETURN CODES
mount has the following return codes (the bits can be ORed):
0 success
1 incorrect invocation or permissions
2 system error (out of memory, cannot fork, no more loop devices)
4 internal mount bug
8 user interrupt
16 problems writing or locking /etc/mtab
32 mount failure
64 some mount succeeded
The command mount -a returns 0 (all succeeded), 32 (all failed), or 64
(some failed, some succeeded).
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5352 次 |
| 最近记录: |