GNU/Linux | 
					CentOS 5.3 | 
					|
![]()  | 
					sysfs(2) | 
					![]()  | 
				
sysfs − get file system type information
int sysfs(int option, const char *fsname);
int sysfs(int option, unsigned int fs_index, char *buf);
int sysfs(int option);
sysfs() returns information about the file system types currently present in the kernel. The specific form of the sysfs() call and the information returned depends on the option in effect:
| 
 1  | 
 Translate the file-system identifier string fsname into a file-system type index.  | ||
| 
 2  | 
 Translate the file-system type index fs_index into a null-terminated file-system identifier string. This string will be written to the buffer pointed to by buf. Make sure that buf has enough space to accept the string.  | ||
| 
 3  | 
 Return the total number of file system types currently present in the kernel.  | 
The numbering of the file-system type indexes begins with zero.
On success, sysfs() returns the file-system index for option 1, zero for option 2, and the number of currently configured file systems for option 3. On error, −1 is returned, and errno is set appropriately.
| 
 EFAULT  | 
 Either fsname or buf is outside your accessible address space.  | ||
| 
 EINVAL  | 
 fsname is not a valid file-system type identifier; fs_index is out-of-bounds; option is invalid.  | 
SVr4.
On Linux with the proc filesystem mounted on /proc, the same information can be derived from /proc/filesystems.
There is no libc or glibc support. There is no way to guess how large buf should be.
![]()  | 
				sysfs(2) | ![]()  |