'\" t .\" Title: fallocate .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-09-02 .\" Manual: User Commands .\" Source: util-linux 2.42.3 .\" Language: Persian .\" .TH "FALLOCATE" "1" "2026-09-02" "util\-linux 2.42.3" "دستورهای کاربری" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "نام (NAME)" fallocate \- پیش‌تخصیص یا آزادسازی فضای دیسک برای یک فایل .SH "خلاصه دستور (SYNOPSIS)" .sp \fBfallocate\fP [\fB\-c\fP|\fB\-p\fP|\fB\-z\fP|\fB\-w\fP] [\fB\-o\fP \fIoffset\fP] \fB\-l\fP \fIlength\fP [\fB\-n\fP] \fIfilename\fP .sp \fBfallocate\fP \fB\-d\fP [\fB\-o\fP \fIoffset\fP] [\fB\-l\fP \fIlength\fP] \fIfilename\fP .sp \fBfallocate\fP \fB\-r\fP [\fB\-o\fP \fIoffset\fP] \fIfilename\fP .sp \fBfallocate\fP \fB\-x\fP [\fB\-o\fP \fIoffset\fP] \fB\-l\fP \fIlength filename\fP .SH "توضیحات (DESCRIPTION)" .sp دستور \fBfallocate\fP برای دستکاری فضای دیسک تخصیص‌یافته به یک فایل، خواه برای آزادسازی یا پیش‌تخصیص آن، استفاده می‌شود. برای سیستم‌فایل‌هایی که از فراخوان سیستمی \fBfallocate\fP(2) پشتیبانی می‌کنند، پیش‌تخصیص با تخصیص بلوک‌ها و علامت‌گذاری آن‌ها به‌عنوان مقداردهی‌نشده (uninitialized) به‌سرعت انجام می‌شود و نیازی به ورودی/خروجی (I/O) روی بلوک‌های داده ندارد. این روش بسیار سریع‌تر از ایجاد یک فایل با پر کردن آن با صفر است. .sp وضعیت خروج بازگردانده‌شده توسط \fBfallocate\fP در صورت موفقیت 0 و در صورت شکست 1 است. .SH "گزینه‌ها (OPTIONS)" .sp آرگومان‌های \fIlength\fP و \fIoffset\fP می‌توانند با پسوندهای ضربی مانند KiB (=1024)، MiB (=1024*1024) و به همین ترتیب برای GiB، TiB، PiB، EiB، ZiB و YiB (عبارت «iB» اختیاری است، برای مثال «K» به معنای همان «KiB» است) یا پسوندهای KB (=1000)، MB (=1000*1000) و به همین ترتیب برای GB، TB، PB، EB، ZB و YB همراه شوند. .sp گزینه‌های \fB\-\-collapse\-range\fP، \fB\-\-dig\-holes\fP، \fB\-\-report\-holes\fP، \fB\-\-punch\-hole\fP، \fB\-\-zero\-range\fP، \fB\-\-write\-zeroes\fP و \fB\-\-posix\fP مانعة‌الجمع (ناسازگار با یکدیگر) هستند. .sp \fB\-c\fP, \fB\-\-collapse\-range\fP .RS 4 یک محدوده بایتی را از فایل حذف می‌کند، بدون اینکه حفره‌ای باقی بگذارد. محدوده بایتی که باید جمع شود از \fIoffset\fP شروع شده و به اندازهٔ \fIlength\fP بایت ادامه می‌یابد. پس از اتمام عملیات، محتویات فایل که از مکان \fIoffset\fP+\fIlength\fP شروع می‌شود، به مکان \fIoffset\fP پیوست می‌شود و اندازه فایل به اندازهٔ \fIlength\fP بایت کوچکتر خواهد شد. گزینهٔ \fB\-\-keep\-size\fP را نمی‌توان برای عملیات collapse\-range مشخص کرد. .sp از لینوکس 3.15 برای ext4 (تنها برای فایل‌های مبتنی بر extent) و XFS در دسترس است. .sp یک سیستم‌فایل ممکن است برای اطمینان از اجرای کارآمد، محدودیت‌هایی در دانه‌بندی عملیات اعمال کند. معمولاً \fIoffset\fP و \fIlength\fP باید مضربی از اندازهٔ بلوک منطقی سیستم‌فایل باشند که بر اساس نوع و پیکربندی سیستم‌فایل متفاوت است. اگر یک سیستم‌فایل چنین الزامی داشته باشد، در صورت عدم رعایت آن، عملیات با خطای \fBEINVAL\fP شکست خواهد خورد. .RE .sp \fB\-d\fP, \fB\-\-dig\-holes\fP .RS 4 شناسایی و ایجاد حفره‌ها (dig holes). این گزینه فایل را به‌صورت درجا (in-place) و بدون استفاده از فضای اضافی دیسک به یک فایل پراکنده (sparse) تبدیل می‌کند. حداقل اندازهٔ حفره به اندازهٔ بلوک I/O سیستم‌فایل بستگی دارد (معمولاً ۴۰۹۶ بایت). همچنین هنگام استفاده از این گزینه، \fB\-\-keep\-size\fP به‌طور ضمنی فعال می‌شود. اگر هیچ محدوده‌ای با \fB\-\-offset\fP و \fB\-\-length\fP مشخص نشود، کل فایل برای یافتن حفره‌ها تحلیل می‌شود. .sp می‌توانید این گزینه را مانند اجرای «\fBcp \-\-sparse\fP» و سپس تغییر نام فایل مقصد به نام اصلی، بدون نیاز به فضای دیسک اضافه در نظر بگیرید. .sp برای فهرستی از سیستم‌فایل‌های پشتیبانی‌شده به \fB\-\-punch\-hole\fP مراجعه کنید. .RE .sp \fB\-r\fP, \fB\-\-report\-holes\fP .RS 4 فایل را پویش کرده و توزیع حفره‌ها را بدون تغییر در فایل گزارش می‌دهد. دو نوع حفره نمایش داده می‌شود: حفره‌های فایل (file holes) – بلوک‌هایی که سیستم‌فایل تخصیص نداده است (توسط SEEK_HOLE گزارش می‌شود)؛ حفره‌های داده (data holes) – محدوده‌هایی در داخل فایل که از نظر منطقی با بایت‌های صفر پر شده‌اند اما همچنان فضای دیسک را اشغال می‌کنند. .sp برای هر حفره، آفست، پایان و اندازه بر حسب بایت در حالت پرگو (verbose) چاپ می‌شود و پس از آن خلاصه‌ای ارائه می‌گردد که به‌طور پیش‌فرض اندازهٔ کل و درصد فایل را که هر نوع حفره تشکیل می‌دهد نشان می‌دهد. اگر هیچ آفستی با \fB\-\-offset\fP مشخص نشود، کل فایل پویش می‌شود. .sp این گزینه فقط‌خواندنی (read-only) است و می‌توان آن را روی هر فایلی برای تخمین میزان فضایی که می‌تواند توسط \fB\-\-dig\-holes\fP بازپس‌گیری شود، استفاده کرد. .sp برای فهرستی از سیستم‌فایل‌های پشتیبانی‌شده به \fB\-\-punch\-hole\fP مراجعه کنید. .RE .sp \fB\-i\fP, \fB\-\-insert\-range\fP .RS 4 یک حفره به اندازهٔ \fIlength\fP بایت از \fIoffset\fP درج می‌کند و داده‌های موجود را جابه‌جا می‌کند. .sp برای XFS (از لینوکس 4.1) و ext4 (از لینوکس 4.2) پشتیبانی می‌شود. .RE .sp \fB\-l\fP, \fB\-\-length\fP \fIlength\fP .RS 4 طول محدوده را بر حسب بایت مشخص می‌کند. .RE .sp \fB\-n\fP, \fB\-\-keep\-size\fP .RS 4 طول ظاهری فایل را تغییر نمی‌دهد. این ممکن است در عمل بلوک‌هایی را فراتر از انتهای فایل (EOF) تخصیص دهد که با truncate می‌توان آن‌ها را حذف کرد. .RE .sp \fB\-o\fP, \fB\-\-offset\fP \fIoffset\fP .RS 4 آفست شروع محدوده را بر حسب بایت مشخص می‌کند. .RE .sp \fB\-p\fP, \fB\-\-punch\-hole\fP .RS 4 فضا را در محدودهٔ بایتی که از \fIoffset\fP شروع شده و تا \fIlength\fP بایت ادامه دارد، آزاد می‌کند (یعنی یک حفره ایجاد می‌کند). در محدودهٔ مشخص‌شده، بلوک‌های ناقص سیستم‌فایل صفر می‌شوند و بلوک‌های کامل سیستم‌فایل از فایل حذف می‌گردند. پس از یک فراخوانی موفق، خواندن‌های بعدی از این محدوده، صفر برمی‌گردانند. این گزینه را نمی‌توان همزمان با گزینهٔ \fB\-\-zero\-range\fP مشخص کرد. همچنین هنگام استفاده از این گزینه، \fB\-\-keep\-size\fP به‌طور ضمنی فعال می‌شود. .sp برای XFS (از لینوکس 2.6.38)، ext4 (از لینوکس 3.0)، Btrfs (از لینوکس 3.7)، tmpfs (از لینوکس 3.5) و gfs2 (از لینوکس 4.16) پشتیبانی می‌شود. .RE .sp \fB\-v\fP, \fB\-\-verbose\fP .RS 4 حالت پرگو را فعال می‌کند. .RE .sp \fB\-w\fP, \fB\-\-write\-zeroes\fP .RS 4 فضا را در محدودهٔ بایتی که از \fIoffset\fP شروع شده و به اندازهٔ \fIlength\fP بایت ادامه می‌یابد صفر می‌کند. در محدودهٔ مشخص‌شده، بلوک‌های نوشته‌شده برای نواحی شامل حفره‌های فایل پیش‌تخصیص داده می‌شوند. پس از یک فراخوانی موفق، خواندن‌های بعدی از این محدوده صفر برمی‌گردانند و نوشتن‌های بعدی روی آن محدوده نیازی به تغییرات بیشتر در متاداده نگاشت فایل ندارند. .sp صفر کردن در درون سیستم‌فایل انجام می‌شود. سیستم‌فایل ممکن است از یک دستور صفر کردن با شتاب‌دهنده سخت‌افزاری استفاده کند یا نوشتن‌های معمولی را ارسال نماید. این رفتار به طراحی سیستم‌فایل و سخت‌افزار موجود بستگی دارد. .sp گزینهٔ \fB\-\-keep\-size\fP را نمی‌توان برای عملیات write\-zeroes مشخص کرد، زیرا تخصیص بلوک‌های نوشته‌شده فراتر از اندازهٔ inode مجاز نیست. .RE .sp \fB\-x\fP, \fB\-\-posix\fP .RS 4 حالت عملیاتی POSIX را فعال می‌کند. در این حالت عملیات تخصیص همیشه کامل می‌شود، اما اگر تخصیص سریع توسط سیستم‌فایل زیرین پشتیبانی نشود، ممکن است زمان بیشتری طول بکشد. .RE .sp \fB\-z\fP, \fB\-\-zero\-range\fP .RS 4 فضا را در محدودهٔ بایتی که از \fIoffset\fP شروع شده و به اندازهٔ \fIlength\fP بایت ادامه می‌یابد صفر می‌کند. در محدودهٔ مشخص‌شده، بلوک‌ها برای نواحی شامل حفره‌های فایل پیش‌تخصیص داده می‌شوند. پس از یک فراخوانی موفق، خواندن‌های بعدی از این محدوده صفر برمی‌گردانند. .sp صفر کردن در درون سیستم‌فایل ترجیحاً با تبدیل محدوده به extentهای نوشته‌نشده انجام می‌شود. این رویکرد به این معنی است که محدودهٔ مشخص‌شده به‌صورت فیزیکی روی دستگاه با صفر پر نمی‌شود (به‌جز بلوک‌های جزئی در دو انتهای محدوده) و ورودی/خروجی (I/O) تنها برای به‌روزرسانی متاداده نیاز است. .sp گزینهٔ \fB\-\-keep\-size\fP می‌تواند برای جلوگیری از تغییر طول فایل مشخص شود. .sp از لینوکس 3.14 برای ext4 (تنها برای فایل‌های مبتنی بر extent) و XFS در دسترس است. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 نمایش متن راهنما و خروج. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 نمایش نسخه و خروج. .RE .SH "نویسندگان (AUTHORS)" .sp .MTO "sandeen\(atredhat.com" "Eric Sandeen" "," .MTO "kzak\(atredhat.com" "Karel Zak" "" .SH "همچنین ببینید (SEE ALSO)" .sp \fBtruncate\fP(1), \fBfallocate\fP(2), \fBposix_fallocate\fP(3) .SH "گزارش باگ‌ها (REPORTING BUGS)" .sp برای گزارش باگ‌ها از \c .URL "https://github.com/util\-linux/util\-linux/issues" "ردیاب مشکلات" "." .SH "دسترسی (AVAILABILITY)" .sp دستور \fBfallocate\fP بخشی از بستهٔ util\-linux است که می‌توان آن را از \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux" "بایگانی هسته لینوکس" "."