Scroll to navigation

getfsent(3) Library Functions Manual getfsent(3)

ИМЯ

getfsent, getfsspec, getfsfile, setfsent, endfsent - для работы с записями fstab

БИБЛИОТЕКА

Стандартная библиотека языка C (libc, -lc)

СИНТАКСИС

#include <fstab.h>
int setfsent(void);
struct fstab *getfsent(void);
void endfsent(void);
struct fstab *getfsfile(const char *mount_point);
struct fstab *getfsspec(const char *special_file);

ОПИСАНИЕ

Эти функции читают файл /etc/fstab. Структура struct fstab определена следующим образом:


struct fstab {

char *fs_spec; /* block device name */
char *fs_file; /* mount point */
char *fs_vfstype; /* filesystem type */
char *fs_mntops; /* mount options */
const char *fs_type; /* rw/rq/ro/sw/xx option */
int fs_freq; /* dump frequency, in days */
int fs_passno; /* pass number on parallel dump */ };

Здесь поле fs_type содержит (в системах *BSD) одну из пяти строк: «rw», «rq», «ro», «sw», «xx» (чтение-запись, чтение-запись с квотами, только-чтение, подкачка, игнорировать).

Функция setfsent() открывает файл при необходимости и устанавливает указатель на первую строку.

Функция getfsent() обрабатывает следующую строку из файла (открыв файл, если требуется).

Функция endfsent() закрывает файл, если требуется.

Функция getfsspec() ищет с начала файла запись, для которой поле fs_spec соответствует аргументу special_file и возвращает её.

Функция getfsfile() ищет с начала файла запись, для которой поле fs_file соответствует аргументу mount_point и возвращает её.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении функции getfsent(), getfsfile() и getfsspec() возвращают указатель на структуру struct fstab, а setfsent() возвращает 1. При ошибке или обнаружении конца файла эти функции возвращают, соответственно, NULL или 0.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
endfsent(), setfsent() Безвредность в нитях MT-Unsafe race:fsent
getfsent(), getfsspec(), getfsfile() Безвредность в нитях MT-Unsafe race:fsent locale

СТАНДАРТЫ

Эти функции не включены в POSIX.1. Они имеются в некоторых операционных системах, например *BSD, SunOS, Digital UNIX, AIX (в котором также есть getfstype()). В HP-UX есть функции с тем же именем, но вместо структуры struct fstab они используют структуру struct checklist, и вызовы этих функций устарели, они заменены на getmntent(3).

ПРИМЕЧАНИЯ

Эти функции нельзя использовать в нескольких нитях одновременно.

Так как Linux позволяет монтировать специальное блочное устройство в несколько разных точек, а также так как несколько устройств могут иметь одну точку монтирования, то неясно, будет ли результат (первая запись), возвращенный функциями getfsfile() и getfsspec() именно тем, что и ожидался. Поэтому эти две функции не подходят для использования под Linux.

СМОТРИТЕ ТАКЖЕ

getmntent(3), fstab(5)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

15 декабря 2022 г. Справочные страницы Linux 6.03