1、使用linux的mout函數掛載
#include <stdio.h>
#include <sys/mount.h>
#include <errno.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <string.h>
#include <sys/stat.h>
#include <string.h>
void test_mount()
{
/*
char* src = ":/home/record/";
char* opt = "addr=192.168.1.250,nolock,hard,bg,tcp,rsize=4096,vers=4,clientaddr=192.168.1.241";
*/
char* src = "172.16.41.252:/home/record/";
char* dst = "/mnt/cloud_nfs";
/* 需要加上本地ip及遠程主機ip,否則報錯:Invalid argument */
char* opt = "addr=172.16.41.252,nolock,hard,bg,tcp,rsize=4096,vers=4,clientaddr=172.16.41.208";
int ret = mount(src, dst, "nfs", MS_SYNCHRONOUS, (void*)opt);
if(ret < 0)
{
printf("mount error: %s\n", strerror(errno));
}
}
int main()
{
test_mount();
return 0;
}
執行程序之後,使用mount命令看不到掛載信息
需要使用cat /proc/mounts查看