OSDN Git Service

(split) LDP: Update release from the latest PO files
[linuxjm/LDP_man-pages.git] / release / man2 / truncate.2
index 1e07074..c8993bd 100644 (file)
@@ -1,6 +1,7 @@
 .\" Copyright (c) 1983, 1991 The Regents of the University of California.
 .\" All rights reserved.
 .\"
 .\" Copyright (c) 1983, 1991 The Regents of the University of California.
 .\" All rights reserved.
 .\"
+.\" %%%LICENSE_START(BSD_4_CLAUSE_UCB)
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions
 .\" are met:
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions
 .\" are met:
@@ -28,6 +29,7 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
+.\" %%%LICENSE_END
 .\"
 .\"     @(#)truncate.2 6.9 (Berkeley) 3/10/91
 .\"
 .\"
 .\"     @(#)truncate.2 6.9 (Berkeley) 3/10/91
 .\"
 .\" Modified 2002-04-06 by Andries Brouwer <aeb@cwi.nl>
 .\" Modified 2004-06-23 by Michael Kerrisk <mtk.manpages@gmail.com>
 .\"
 .\" Modified 2002-04-06 by Andries Brouwer <aeb@cwi.nl>
 .\" Modified 2004-06-23 by Michael Kerrisk <mtk.manpages@gmail.com>
 .\"
-.\" Japanese Version Copyright (c) 1997 SUTO, Mitsuaki
-.\"         all rights reserved.
-.\" Translated 1997-06-26, SUTO, Mitsuaki <suto@av.crl.sony.co.jp>
-.\" Modified 2000-03-12, HANATAKA Shinya <hanataka@abyss.rim.or.jp>
-.\" Updated 2001-01-09, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2002-04-13, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2002-10-21, Kentaro Shirakata <argrath@ub32.org>
-.\" Updated 2005-09-06, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
-.\" Updated 2006-07-21, Akihiro MOTOKI, LDP v2.36
+.\"*******************************************************************
 .\"
 .\"
-.TH TRUNCATE 2 2009-02-28 "Linux" "Linux Programmer's Manual"
-.SH Ì¾Á°
-truncate, ftruncate \- »ØÄꤷ¤¿Ä¹¤µ¤Ë¥Õ¥¡¥¤¥ë¤òÀÚ¤êµÍ¤á¤ë
-.SH ½ñ¼°
-.B #include <unistd.h>
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH TRUNCATE 2 2013\-04\-01 Linux "Linux Programmer's Manual"
+.SH 名前
+truncate, ftruncate \- 指定した長さにファイルを切り詰める
+.SH 書式
+\fB#include <unistd.h>\fP
 .br
 .br
-.B #include <sys/types.h>
+\fB#include <sys/types.h>\fP
 .sp
 .sp
-.BI "int truncate(const char *" path ", off_t " length );
+\fBint truncate(const char *\fP\fIpath\fP\fB, off_t \fP\fIlength\fP\fB);\fP
 .br
 .br
-.BI "int ftruncate(int " fd ", off_t " length );
+\fBint ftruncate(int \fP\fIfd\fP\fB, off_t \fP\fIlength\fP\fB);\fP
 .sp
 .in -4n
 .sp
 .in -4n
-glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
-.RB ( feature_test_macros (7)
-»²¾È):
+glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7)  参照):
 .in
 .ad l
 .in
 .ad l
+.PD 0
+.sp
+\fBtruncate\fP():
+.RS 4
+_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
+.br
+|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\ >=\ 200809L
+.RE
 .sp
 .sp
-.BR truncate ():
-_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500
+\fBftruncate\fP():
+.RS 4
+_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .br
 .br
-.BR ftruncate ():
-_BSD_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _POSIX_C_SOURCE\ >=\ 200112L
+|| /* glibc 2.3.5 以降: */ _POSIX_C_SOURCE\ >=\ 200112L
+.RE
+.PD
 .ad b
 .ad b
-.SH ÀâÌÀ
-.BR truncate ()
-¤Ï
-.I path
-¤Ç»ØÄꤵ¤ì¤ë¥Õ¥¡¥¤¥ë¤ò¡¢
-.BR ftruncate ()
-¤Ï
-.I fd
-¤Ç»²¾È¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤ò
-.I length
-¥Ð¥¤¥È¤ÎŤµ¤Ë¤Ê¤ë¤è¤¦¤Ë±äŤ¹¤ë¡¢¤â¤·¤¯¤ÏÀÚ¤êµÍ¤á¤ë¡£
-¤â¤·ÀÚ¤êµÍ¤á¤ëÁ°¤Î¥Õ¥¡¥¤¥ë¤¬
-.I length
-¤è¤êŤ±¤ì¤Ð¡¢length ¥Ð¥¤¥È¤ò±Û¤¨¤ëÉôʬ¤Î¥Ç¡¼¥¿¤Ï¼º¤ï¤ì¤ë¡£
-¤â¤·ÀÚ¤êµÍ¤á¤ëÁ°¤Î¥Õ¥¡¥¤¥ë¤¬
-.I length
-¤è¤êû¤«¤±¤ì¤Ð¡¢¿­Ä¥¤µ¤ì¤ë¡£
-¿­Ä¥¤µ¤ì¤¿Éôʬ¤òÆɤó¤À¾ì¹ç¤Ï NULL ¥Ð¥¤¥È (\(aq\\0\(aq) ¤ÎÎó¤¬ÊÖ¤µ¤ì¤ë¡£
+.SH 説明
+\fBtruncate\fP()  は \fIpath\fP で指定されるファイルを、 \fBftruncate\fP()  は \fIfd\fP で参照されるファイルを
+\fIlength\fP バイトの長さになるように延長する、もしくは切り詰める。
 .LP
 .LP
-¥Õ¥¡¥¤¥ë¥ª¥Õ¥»¥Ã¥È¤ÏÊѹ¹¤µ¤ì¤Ê¤¤¡£
+もし切り詰める前のファイルが \fIlength\fP より長ければ、length バイトを越える部分のデータは失われる。 もし切り詰める前のファイルが
+\fIlength\fP より短かければ、伸張される。 伸張された部分を読んだ場合は NULL バイト (\(aq\e0\(aq) の列が返される。
 .LP
 .LP
-Â礭¤µ¤¬Êѹ¹¤µ¤ì¤ë¤È¡¢¥Õ¥¡¥¤¥ë¤Î st_ctime ¤È st_mtime ¥Õ¥£¡¼¥ë¥É
-(¤½¤ì¤¾¤ìºÇ½ª¾õÂÖÊѹ¹»þ¹ï¡¢ºÇ½ª½¤Àµ»þ¹ï;
-.BR stat (2)
-»²¾È) ¤¬¹¹¿·¤µ¤ì¤ë¡£
-¤Þ¤¿¡¢set-user-ID ¤È set-group-ID ¤Îµö²Ä¥Ó¥Ã¥È¤¬¥¯¥ê¥¢¤µ¤ì¤ë¤«¤â¤·¤ì¤Ê¤¤¡£
+ファイルオフセットは変更されない。
 .LP
 .LP
-.BR ftruncate ()
-¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï½ñ¤­¹þ¤ßÍѤ˳«¤¤¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
-.BR truncate ()
-¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï½ñ¤­¹þ¤ß²Äǽ¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
-.SH ÊÖ¤êÃÍ
-À®¸ù¤·¤¿¾ì¹ç 0 ¤¬Ê֤롣¼ºÇÔ¤·¤¿¾ì¹ç \-1 ¤¬Ê֤ꡢ
-.I errno
-¤¬¥¨¥é¡¼¤ÎÆâÍƤ˽¾¤Ã¤ÆÀßÄꤵ¤ì¤ë¡£
-.SH ¥¨¥é¡¼
-.BR truncate ()
-¤Ç¤Ï°Ê²¼¤Î¥¨¥é¡¼¥³¡¼¥É¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£
-.TP
-.B EACCES
-¥Ñ¥¹¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ë¸¡º÷µö²Ä¤Î¤Ê¤¤¤â¤Î¤¬¤¢¤ë
-(ÌõÃí:x ¥Ó¥Ã¥È¤¬Î©¤Ã¤Æ¤¤¤Ê¤¤)¡£
-¤¢¤ë¤¤¤Ï¡¢»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë½ñ¤­¹þ¤ßµö²Ä¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¡£
-.RB ( path_resolution (7)
-¤â»²¾È¤Î¤³¤È)
-.TP
-.B EFAULT
-.I path
-¤¬¥×¥í¥»¥¹¤Ë³ä¤êÅö¤Æ¤é¤ì¤Æ¤¤¤ë¥¢¥É¥ì¥¹¶õ´Ö³°¤ò»Ø¤·¤Æ¤¤¤ë¡£
-.TP
-.B EFBIG
-°ú¤­¿ô
-.I length
-¤¬ºÇÂç¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤è¤êÂ礭¤¤¡£(XSI)
-.TP
-.B EINTR
-¼Â¹ÔÃæ¤Ë¥·¥°¥Ê¥ë¤ò¼õ¤±¤¿¡£
-.TP
-.B EINVAL
-°ú¤­¿ô
-.I length
-¤¬Éé¿ô¤Ç¤¢¤ë¤«¡¢ºÇÂç¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤è¤êÂ礭¤¤¡£
-.TP
-.B EIO
-inode ¤Î¹¹¿·»þ¤Ë I/O ¥¨¥é¡¼¤¬È¯À¸¤·¤¿¡£
-.TP
-.B EINTR
-´°Î»ÂÔ¤Á¤ÇÄä»ß (block) ¤·¤Æ¤¤¤ë´Ö¤Ë¡¢¸Æ¤Ó½Ð¤·¤¬
-¥·¥°¥Ê¥ë¥Ï¥ó¥É¥é¤Ë¤è¤ê³ä¤ê¹þ¤Þ¤ì¤¿¡£
-.BR fcntl (2)
-¤È
-.BR signal (7)
-¤ò»²¾È¡£
-.TP
-.B EISDIR
-»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¢¤ë¡£
-.TP
-.B ELOOP
-¥Ñ¥¹Ì¾¤ò²ò¼á¤¹¤ëºÝ¤Ë¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤¬Â¿¤¹¤®¤¿¡£
-.TP
-.B ENAMETOOLONG
-¥Ñ¥¹Ì¾Ãæ¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤¬ 255 Ê¸»ú¤ò±Û¤¨¤Æ¤¤¤ë¡¢¤â¤·¤¯¤Ï¥Ñ¥¹Ì¾Á´ÂΤ¬
-1023 Ê¸»ú¤ò±Û¤¨¤Æ¤¤¤ë¡£
-.TP
-.B ENOENT
-»ØÄꤵ¤ì¤¿Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¡£
-.TP
-.B ENOTDIR
-¥Ñ¥¹Ì¾Ãæ¤Î¹àÌܤ˥ǥ£¥ì¥¯¥È¥ê¤Ç¤Ï¤Ê¤¤¤â¤Î¤¬Æþ¤Ã¤Æ¤¤¤ë¡£
-.TP
-.B EPERM
+大きさが変更されると、ファイルの st_ctime と st_mtime フィールド (それぞれ最終状態変更時刻、最終修正時刻; \fBstat\fP(2)
+参照) が更新される。 また、set\-user\-ID と set\-group\-ID の許可ビットがクリアされるかもしれない。
+.LP
+\fBftruncate\fP()  の場合、ファイルは書き込み用に開いていなければならない。 \fBtruncate\fP()
+の場合、ファイルは書き込み可能でなければならない。
+.SH 返り値
+成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。
+.SH エラー
+\fBtruncate\fP()  では以下のエラーコードが定義されている。
+.TP 
+\fBEACCES\fP
+パスで指定されているディレクトリに検索許可のないものがある (訳注:x ビットが立っていない)。
+あるいは、指定されたファイルに対する書き込み許可を持っていない。 (\fBpath_resolution\fP(7)  も参照のこと)
+.TP 
+\fBEFAULT\fP
+\fIpath\fP がプロセスに割り当てられているアドレス空間外を指している。
+.TP 
+\fBEFBIG\fP
+引き数 \fIlength\fP が最大ファイルサイズより大きい。(XSI)
+.TP 
+\fBEINTR\fP
+完了待ちで停止 (block) している間に、呼び出しが シグナルハンドラにより割り込まれた。 \fBfcntl\fP(2)  と \fBsignal\fP(7)
+を参照。
+.TP 
+\fBEINVAL\fP
+引き数 \fIlength\fP が負数であるか、最大ファイルサイズより大きい。
+.TP 
+\fBEIO\fP
+inode の更新時に I/O エラーが発生した。
+.TP 
+\fBEISDIR\fP
+指定されたファイルはディレクトリである。
+.TP 
+\fBELOOP\fP
+パス名を解釈する際にシンボリックリンクが多すぎた。
+.TP 
+\fBENAMETOOLONG\fP
+パス名中のディレクトリ名が 255 文字を越えている、もしくはパス名全体が 1023 文字を越えている。
+.TP 
+\fBENOENT\fP
+指定された名前のファイルが存在しない。
+.TP 
+\fBENOTDIR\fP
+パス名の構成要素がディレクトリではない。
+.TP 
+\fBEPERM\fP
 .\" This happens for at least MSDOS and VFAT file systems
 .\" on kernel 2.6.13
 .\" This happens for at least MSDOS and VFAT file systems
 .\" on kernel 2.6.13
-²¼Áؤˤ¢¤ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¤Ï¡¢¸½ºß¤Î¥Õ¥¡¥¤¥ëŤò±Û¤¨¤Æ
-¥Õ¥¡¥¤¥ë¤ò¿­Ä¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¤¡£
-.TP
-.B EROFS
-»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤ÏÆɤ߽Ф·ÀìÍѤΥե¡¥¤¥ë¥·¥¹¥Æ¥àÃæ¤Ë¤¢¤ë¡£
-.TP
-.B ETXTBSY
-»ØÄꤵ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ï¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë¡£
+下層にあるファイルシステムでは、現在のファイル長を越えて ファイルを伸長することができない。
+.TP 
+\fBEROFS\fP
+ファイルが読み込み専用 (read only) のファイル・システム上にある。
+.TP 
+\fBETXTBSY\fP
+指定されたファイルは実行されているファイルである。
 .PP
 .PP
-.BR ftruncate  ()
-¤Ë¤âƱÍͤΥ¨¥é¡¼¤¬Å¬ÍѤµ¤ì¤ë¡£
-⤷¡¢
-.I path
-¤Ë´Ø¤¹¤ë¥¨¥é¡¼¤Î¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼
-.I fd
-¤Ë´Ø¤¹¤ë¥¨¥é¡¼¤È¤Ê¤ë¡£
-.TP
-.B EBADF
-.I fd
-¤¬Ìµ¸ú¤Ê¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤Ç¤¢¤ë¡£
-.TP
-.BR EBADF " ¤Þ¤¿¤Ï " EINVAL
-.I fd
-¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¤â¤Î¤¬½ñ¤­¹þ¤ß¥â¡¼¥É¤Ç³«¤«¤ì¤Æ¤¤¤Ê¤¤¡£
-.TP
-.B EINVAL
-.I fd
-¤¬Ä̾ï¤Î¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¤¤Ê¤¤¡£
-.SH ½àµò
-4.4BSD, SVr4, POSIX.1-2001 (¤³¤ì¤é¤Î¥³¡¼¥ë¤Ï 4.2BSD ¤Ç½é¤á¤ÆÅо줷¤¿)¡£
-.\" POSIX 1003.1-1996 ¤Ë¤Ï
-.\" .BR ftruncate ()
-.\" ¤¬¤¢¤ë¡£
-.\" POSIX.1-2001 ¤Ë¤Ï
-.\" XSI ³ÈÄ¥¤È¤·¤Æ
-.\" .BR truncate ()
-.\" ¤â¤¢¤ë¡£
+\fBftruncate\fP()  にも同様のエラーが適用される。 但し、 \fIpath\fP に関するエラーの場合は、ファイルディスクリプター \fIfd\fP
+に関するエラーとなる。
+.TP 
+\fBEBADF\fP
+\fIfd\fP が無効なディスクリプターである。
+.TP 
+\fBEBADF\fP または \fBEINVAL\fP
+\fIfd\fP で指定されているものが書き込みモードで開かれていない。
+.TP 
+\fBEINVAL\fP
+\fIfd\fP が通常のファイルを参照していない。
+.SH 準拠
+.\" POSIX.1-1996 has
+.\" .BR ftruncate ().
+.\" POSIX.1-2001 also has
+.\" .BR truncate (),
+.\" as an XSI extension.
 .\" .LP
 .\" .LP
-.\" SVr4 ¤Ë¤Ï¾¤Î¥¨¥é¡¼¥³¡¼¥É¤È¤·¤Æ¡¢
+.\" SVr4 documents additional
 .\" .BR truncate ()
 .\" .BR truncate ()
-.\" ¤Ë¤Ï EMFILE, EMULTIHP, ENFILE, ENOLINK ¤¬¡¢
+.\" error conditions EMFILE, EMULTIHP, ENFILE, ENOLINK.  SVr4 documents for
 .\" .BR ftruncate ()
 .\" .BR ftruncate ()
-.\" ¤Ë¤Ï EAGAIN ¤¬¤½¤ì¤¾¤ìµ­½Ò¤µ¤ì¤Æ¤¤¤ë¡£
-.SH Ãí°Õ
-¾åµ­¤Îµ­½Ò¤Ï XSI ½àµò¤Î¥·¥¹¥Æ¥à¤Î¤â¤Î¤Ç¤¢¤ë¡£
-XSI Èó½àµò¤Î¥·¥¹¥Æ¥à¤Î¾ì¹ç¡¢POSIX É¸½à¤Ï
-.BR ftruncate ()
-¤ËÂФ·¤Æ
-.I length
-¤¬¥Õ¥¡¥¤¥ë¤ÎŤµ¤è¤êŤ«¤Ã¤¿¾ì¹ç¡¢
-¥¨¥é¡¼¤òÊÖ¤¹¤«¥Õ¥¡¥¤¥ë¤ò¿­Ä¥¤¹¤ë¤«¤ÎÆó¤Ä¤ÎÆ°ºî¤òµöÍƤ·¤Æ¤¤¤ë¡£
-.BR truncate ()
-¤ËÂФ·¤Æ¤ÏÁ´¤¯µ¬Äꤵ¤ì¤Æ¤¤¤Ê¤¤¡£
-¤Û¤È¤ó¤É¤Î Unix ¼ÂÁõ¤ÈƱÍÍ¡¢Linux ¤Ï¥Í¥¤¥Æ¥£¥Ö (Linux Í³Íè) ¤Î
-¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î°·¤¤¤Ç¤Ï XSI Í×µá»ÅÍͤˤ·¤¿¤¬¤Ã¤Æ¤¤¤ë¡£
-¤·¤«¤·¤Ê¤¬¤é¡¢¤¤¤¯¤Ä¤«¤ÎÈó¥Í¥¤¥Æ¥£¥Ö¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¤Ï¡¢
-.BR truncate ()
-¤ä
-.BR ftruncate ()
-¤ò»È¤Ã¤Æ¸½ºß¤Î¥Õ¥¡¥¤¥ëŤò±Û¤¨¤Æ¥Õ¥¡¥¤¥ë¤ò¿­Ä¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¤¡£
-Linux ¤Ç¤Îͭ̾¤ÊÎã¤È¤·¤Æ¤Ï VFAT ¤¬¤¢¤ë¡£
-.SH ´ØÏ¢¹àÌÜ
-.BR open (2),
-.BR stat (2),
-.BR path_resolution (7)
+.\" an additional EAGAIN error condition.
+4.4BSD, SVr4, POSIX.1\-2001 (これらのコールは 4.2BSD で初めて登場した)。
+.SH 注意
+.\" At the very least: OSF/1, Solaris 7, and FreeBSD conform, mtk, Jan 2002
+「説明」の節で述べた詳細は XSI 準拠のシステムについてのものである。
+XSI 非準拠のシステムの場合、POSIX 標準は \fBftruncate\fP() に対して \fIlength\fP が
+ファイルの長さより長かった場合、 エラーを返すかファイルを伸張するかの二つの
+動作を許容している。 \fBtruncate\fP() に対しては全く規定されていない。
+ほとんどの UNIX 実装と同様、Linux はネイティブ (Linux 由来) の ファイルシステム
+の扱いでは XSI 要求仕様にしたがっている。 しかしながら、いくつかの非ネイティブ
+のファイルシステムでは、 \fBtruncate\fP() や \fBftruncate\fP() を使って現在のファイル
+長を越えてファイルを伸長することができない。 Linux での有名な例としては
+VFAT がある。
+
+元々の Linux の \fBtruncate\fP() と \fBftruncate\fP() システムコールは
+大きなファイルオフセットを扱えるように設計されていなかった。
+その結果、大きなファイルファイルを扱うことができる \fBtruncate64\fP() と \fBftruncate64\fP()
+システムコールが Linux 2.4 で追加された。
+ただし、glibc を使ったアプリケーションではこれらの詳細は気にする必要はない。
+glibc のラッパー関数は新しいシステムコールが利用できる場合にはそれらを利用する
+ようになっているからである。
+
+いくつかの 32 ビットアーキテクチャでは、これらのシステムコールの呼び出し時のシグネチャーが違っています。理由は \fBsyscall\fP(2)
+で説明されている通りです。
+.SH バグ
+.\" http://sourceware.org/bugzilla/show_bug.cgi?id=12037
+glibc 2.12 のヘッダファイルにはバグがあり、 \fBftruncate\fP()  の宣言を公開するのに必要な \fB_POSIX_C_SOURCE\fP
+の最小値が 200112L ではなく 200809L となっていた。 このバグは、これ以降のバージョンの glibc では修正されている。
+.SH 関連項目
+\fBopen\fP(2), \fBstat\fP(2), \fBpath_resolution\fP(7)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.51 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。