Tag: mount

umount不适用于C中的设备(但它适用于终端)

我试图以编程方式卸载USB驱动器(设备/dev/sdb1 )。 如果我在Linux终端上运行sudo umount /dev/sdb1就行了。 但是,如果我gcc编译并运行以下C片段作为sudo ,则错误为ERRNO 22 = EINVAL (Invalid argument) 。 这是代码: #include “unistd.h” #include “sys/mount.h” #include “errno.h” int main() { int r = umount2(“/dev/sdb1”, MNT_FORCE); if (r != 0) return errno; else return 0; } 这同样适用于umount() 。 MNT_FORCE不会改变任何东西。 如果我通过挂载点而不是设备,该函数可以工作,但文档说它适用于两者 。 我发现这种方式比读取/etc/mtab更可靠,以获取挂载点并使用它。 function:int umount2(const char *文件,int标志) 初步:| MT-Safe | AS-Safe | AC-Safe | […]