當前位置:編程學習大全網 - 網站源碼 - link的linux中link函數

link的linux中link函數

頭文件

#include <unistd.h>

函數原型

int link (const char * oldpath,const char * newpath);

說明

link()以參數newpath指定的名稱來建立壹個新的連接(硬連接)到參數oldpath所指定的已存在文件。如果參數newpath指定的名稱為壹已存在的文件則不會建立連接。函數在執行成功時則返回0,失敗時則返回-1,錯誤原因存於errno。 link()所建立的硬連接無法跨越不同文件系統,如果需要請改用symlink()。

errno錯誤代碼:

EXDEV 參數oldpath與newpath不是建立在同壹文件系統。

EPERM 參數oldpath與newpath所指的文件系統不支持硬連接

EROFS 文件存在於只讀文件系統內

EFAULT 參數oldpath或newpath 指針超出可存取內存空間。

ENAMETOLLONG 參數oldpath或newpath太長

ENOMEM 核心內存不足

EEXIST 參數newpath所指的文件名已存在。

EMLINK 參數oldpath所指的文件已達最大連接數目。

ELOOP 參數pathname有過多符號連接問題

ENOSPC 文件系統的剩余空間不足。

EIO I/O 存取錯誤。

範例

/* 建立/etc/passwd 的硬連接為pass */ #include<unistd.h>main(){link(/etc/passwd,pass);}

  • 上一篇:我有三臺nginx服務怎麽集群到壹起,這三臺服務器都用來解析html頁
  • 下一篇:怎麽用自己電腦作服務器發布網站?已有條件:(1)域名;(2)IIS6.0,win7系統。
  • copyright 2024編程學習大全網