#include <stdio.h>
#include <stdlib.h>
#include <sys/mount.h>
#include <string.h>
#include <errno.h>
#include <sys/stat.h>
#include <sys/types.h>
#define USBPATH "/dev/myusb"
int usb_umount(char *path);
int main(int argc, char *argv[])
{
//int umount(const char *target);
// int mkdir(const char *pathname, mode_t mode);
if(mkdir(USBPATH, 0777) < 0)
{
if(errno == EEXIST) //目录存在,我才用武断的方式,将其删除,你可以有合适的方法
{
usb_umount(USBPATH);
}
else
{
fprintf(stderr, "mkdir() failed:%s\n", strerror(errno));
exit(1);
}
}
//int mount(const char *source, const char *target,
// const char *filesystemtype, unsigned long mountflags,
// const void *data);
//具体的参数说明:man 8 mount
if(mount("/dev/sdb1", "/mnt/myusb", "vfat", MS_SYNCHRONOUS, NULL ) < 0)
{
fprintf(stderr, "mount() failed:%s\n", strerror(errno));
exit(1);
}
system("ls -l /mnt/myusb"); //浏览加载目录
}
int usb_umount(char *path)
{
if(umount(path) < 0)
{
//只是为了卸载,失败采取的的方式,可以自定义
//fprintf(stderr, "umount() failed:%s\n", strerror(errno));
//exit(-1);
}
if(rmdir(path) < 0)
{
reurn 0;
}
#include <stdlib.h>
#include <sys/mount.h>
#include <string.h>
#include <errno.h>
#include <sys/stat.h>
#include <sys/types.h>
#define USBPATH "/dev/myusb"
int usb_umount(char *path);
int main(int argc, char *argv[])
{
//int umount(const char *target);
// int mkdir(const char *pathname, mode_t mode);
if(mkdir(USBPATH, 0777) < 0)
{
if(errno == EEXIST) //目录存在,我才用武断的方式,将其删除,你可以有合适的方法
{
usb_umount(USBPATH);
}
else
{
fprintf(stderr, "mkdir() failed:%s\n", strerror(errno));
exit(1);
}
}
//int mount(const char *source, const char *target,
// const char *filesystemtype, unsigned long mountflags,
// const void *data);
//具体的参数说明:man 8 mount
if(mount("/dev/sdb1", "/mnt/myusb", "vfat", MS_SYNCHRONOUS, NULL ) < 0)
{
fprintf(stderr, "mount() failed:%s\n", strerror(errno));
exit(1);
}
system("ls -l /mnt/myusb"); //浏览加载目录
if (usb_umount(USBPATH) < 0) //卸载usb,删除加载路径
{
//输出错误信息
}
}
int usb_umount(char *path)
{
if(umount(path) < 0)
{
//只是为了卸载,失败采取的的方式,可以自定义
//fprintf(stderr, "umount() failed:%s\n", strerror(errno));
//exit(-1);
}
if(rmdir(path) < 0)
{
return -1;}
reurn 0;
}