sync(2) - wariua/manpages-ko GitHub Wiki

NAME

sync, syncfs - 파일 μ‹œμŠ€ν…œ μΊμ‹œλ₯Ό λ””μŠ€ν¬λ‘œ 보내기

SYNOPSIS

#include <unistd.h>

void sync(void);

int syncfs(int fd);

glibc κΈ°λŠ₯ 확인 맀크둜 μš”κ±΄ (feature_test_macros(7) μ°Έκ³ ):

sync():
_XOPEN_SOURCE >= 500
|| /* glibc 2.19λΆ€ν„°: */ _DEFAULT_SOURCE
|| /* glibc 버전 <= 2.19: */ _BSD_SOURCE
syncfs():
_GNU_SOURCE

DESCRIPTION

sync()λŠ” 파일 μ‹œμŠ€ν…œ 메타데이터 및 캐싱 된 파일 데이터에 λŒ€ν•œ 미기둝 λ³€κ²½ λ‚΄μš©μ„ λͺ¨λ‘ 기반 파일 μ‹œμŠ€ν…œμ— κΈ°λ‘ν•˜κ²Œ ν•œλ‹€.

syncfs()λŠ” sync()와 λΉ„μŠ·ν•˜λ˜ μ—΄λ¦° 파일 λ””μŠ€ν¬λ¦½ν„° fdκ°€ κ°€λ¦¬ν‚€λŠ” νŒŒμΌμ„ 담은 파일 μ‹œμŠ€ν…œλ§Œ λ™κΈ°ν™”ν•œλ‹€.

RETURN VALUE

syncfs()λŠ” 성곡 μ‹œ 0을 λ°˜ν™˜ν•œλ‹€. 였λ₯˜ μ‹œ -1을 λ°˜ν™˜ν•˜λ©° 였λ₯˜λ₯Ό λ‚˜νƒ€λ‚΄λ„λ‘ errnoλ₯Ό μ„€μ •ν•œλ‹€.

ERRORS

sync()λŠ” 항상 μ„±κ³΅ν•œλ‹€.

syncfs()λŠ” 적어도 λ‹€μŒ 이유둜 μ‹€νŒ¨ν•  수 μžˆλ‹€.

EBADF
fdκ°€ μœ νš¨ν•œ 파일 λ””μŠ€ν¬λ¦½ν„°κ°€ μ•„λ‹ˆλ‹€.

VERSIONS

λ¦¬λˆ…μŠ€ 2.6.39μ—μ„œ syncfs()κ°€ 처음 λ“±μž₯ν–ˆλ‹€. glibc 버전 2.14μ—μ„œ 라이브러리 지원이 μΆ”κ°€λ˜μ—ˆλ‹€.

CONFORMING TO

sync(): POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.

syncfs()λŠ” λ¦¬λˆ…μŠ€ μ „μš©μ΄λ‹€.

NOTES

glibc 2.2.2λΆ€ν„° μ—¬λŸ¬ ν‘œμ€€μ„ λ”°λΌμ„œ λ¦¬λˆ…μŠ€μ˜ sync() μ›ν˜•μ΄ μœ„μ™€ κ°™λ‹€. glibc 2.2.1 및 μ΄μ „μ—μ„œλŠ” "int sync(void)"μ˜€μœΌλ©° sync()κ°€ 항상 0을 λ°˜ν™˜ν–ˆλ‹€.

ν‘œμ€€ λͺ…μ„Έ(κ°€λ Ή POSIX.1-2001)에 λ”°λ₯΄λ©΄ sync()κ°€ μ“°κΈ°λ₯Ό μ˜ˆμ•½ν•˜λ˜ μ‹€μ œ μ“°κΈ°κ°€ λλ‚˜κΈ° 전에 λ°˜ν™˜ν•  μˆ˜λ„ μžˆλ‹€. ν•˜μ§€λ§Œ λ¦¬λˆ…μŠ€μ—μ„œλŠ” I/O μ™„λ£Œλ₯Ό 기닀리며, κ·Έλž˜μ„œ sync()와 syncfs()κ°€ μ‹œμŠ€ν…œ λ‚΄μ§€ 파일 μ‹œμŠ€ν…œμ˜ λͺ¨λ“  νŒŒμΌμ— λŒ€ν•΄ fsync(2)λ₯Ό ν˜ΈμΆœν•˜λŠ” 것과 같은 보μž₯을 ν•΄ μ€€λ‹€.

BUGS

λ¦¬λˆ…μŠ€ 버전 1.3.20 μ „μ—μ„œλŠ” λ°˜ν™˜ 전에 I/Oκ°€ μ™„λ£Œλ˜κΈ°λ₯Ό 기닀리지 μ•Šμ•˜λ‹€.

SEE ALSO

sync(1), fdatasync(2), fsync(2)


2017-09-15

⚠️ **GitHub.com Fallback** ⚠️