Hosting tarifidagi disk hajmi cheklangan va u ko'pincha sezilmasdan to'lib boradi. Bir kuni panelda disk 90 foizga yetganini ko'rasiz, lekin saytga hech qanday katta narsa yuklamagandek tuyulasiz. Aslida joyni odatda bir nechta ko'zga ko'rinmas "yeyuvchi"lar egallaydi: unutilgan zaxira arxivlari, o'sib ketgan jurnal fayllari, ochilib qolgan eski sayt nusxalari. Ularni taxminan qidirish o'rniga, bir necha buyruq bilan aniq topish mumkin. Ushbu maqolada aynan shu tartibni bosqichma-bosqich ko'rib chiqamiz.
Yuqoridan pastga: papkalar bo'yicha qidirish
Eng samarali usul — butun uy papkasidan boshlab, eng og'ir papkani topish va uning ichiga qadam-baqadam tushish. Buning uchun du buyrug'i ishlatiladi. Quyidagi buyruq uy papkangizdagi birinchi darajadagi har bir papkaning hajmini ko'rsatadi va ularni kichikdan kattaga qarab tartiblaydi:
cd ~
du -xh -d 1 2>/dev/null | sort -h
Bu yerda -x parametri boshqa fayl tizimlariga o'tib ketmaslikni, -d 1 esa faqat bir daraja chuqurlikni ko'rsatishni bildiradi. Ro'yxatning oxiridagi papka eng ko'p joy egallagan papka bo'ladi. Keyin shu papkaga kirib buyruqni takrorlaysiz va shunday qilib aybdorga yetib borasiz. Masalan, agar www papkasi katta chiqsa, keyingi qadam aniq sayt papkasini tekshirish bo'ladi:
du -xh -d 1 ~/www/example.uz 2>/dev/null | sort -h | tail -10
WordPress saytlarida odatda wp-content/uploads va wp-content ichidagi zaxira plaginlari papkalari yuqoriga chiqadi. Boshqa tizimlarda esa jurnal va kesh papkalari ko'p joy egallaydi.
Eng katta fayllarni to'g'ridan-to'g'ri topish
Ba'zan papkalar bo'ylab yurish o'rniga, butun hisobdagi eng katta fayllarni bir ro'yxatda ko'rish qulayroq. Quyidagi buyruq 50 MB dan katta fayllarni topib, ularning eng kattalari 20 tasini o'qilishi oson o'lchamda chiqaradi:
find ~ -xdev -type f -size +50M -printf '%s\t%p\n' 2>/dev/null \
| sort -n | tail -20 | numfmt --field=1 --to=iec
Natijada odatda bir qarashda nima ortiqcha ekani ko'rinib qoladi: backup-2024.zip, old-site.tar.gz, bir necha gigabaytli error_log. Agar serveringizda numfmt bo'lmasa, oxirgi qismini olib tashlang, o'lchamlar baytlarda ko'rsatiladi.
Odatda kimlar joy egallaydi
Zaxira arxivlari va baza dump'lari
Eng ko'p uchraydigan holat — sayt ichida qoldirilgan zaxira nusxalar. Ko'chirish paytida yaratilgan arxiv, plagin har kuni yaratgan nusxalar yoki qo'lda olingan baza eksporti oylab o'chirilmasdan turadi. Ularni turiga qarab qidirish mumkin:
find ~ -xdev -type f \( -name '*.zip' -o -name '*.tar.gz' -o -name '*.sql' \
-o -name '*.sql.gz' -o -name '*.wpress' \) -printf '%s\t%p\n' 2>/dev/null \
| sort -n | numfmt --field=1 --to=iec
.wpress kengaytmasi All-in-One WP Migration plagini arxivlariga tegishli. Kerakli eng oxirgi nusxani kompyuteringizga yuklab oling, qolganlarini o'chiring. Muhimi, zaxira nusxa sayt bilan bir joyda saqlansa, server bilan biror muammo bo'lganda u ham yo'qoladi, demak u baribir to'liq himoya bermaydi.
O'sib ketgan jurnal fayllari
PHP xatolarni ko'pincha skript joylashgan papkadagi error_log fayliga yozadi. Agar saytda doimiy takrorlanadigan ogohlantirish bo'lsa, bu fayl bir necha oyda gigabaytlarga yetadi va u turli papkalarga tarqalib ketgan bo'lishi mumkin. Barchasini bir buyruq bilan topasiz:
find ~/www -type f -name 'error_log' -size +5M -printf '%s\t%p\n' \
| sort -n | numfmt --field=1 --to=iec
Jurnalni o'chirishdan oldin uning oxirgi qatorlarini tail -50 error_log bilan ko'rib chiqing: u ko'pincha saytdagi haqiqiy xatoni ko'rsatadi. Xatoni tuzatmasangiz, fayl yana o'sadi. Faylni o'chirish o'rniga : > error_log bilan bo'shatish xavfsizroq.
Yashirin papkalar
Nuqta bilan boshlanadigan papkalar oddiy ro'yxatda ko'rinmaydi, ammo joy egallaydi. Composer, npm yoki pip kabi vositalar o'z keshini ~/.cache, ~/.npm yoki ~/.composer papkalarida saqlaydi va ular yuzlab megabaytga yetishi mumkin:
du -sh ~/.[!.]* 2>/dev/null | sort -h
Bu kesh papkalarini o'chirish xavfsiz, vositalar kerak bo'lganda ularni qayta yaratadi. Faqat .ssh kabi sozlama papkalariga tegmang.
Misol: maktab sayti va dars videolari
Samarqanddagi xususiy maktabning example.uz sayti oddiy WordPress sayt bo'lib, unda yangiliklar va dars jadvali e'lon qilinadi. Bir oy ichida disk hajmi to'lib qoldi. du bilan qidirish wp-content/uploads papkasini ko'rsatdi, ichkariroq tushilganda esa joriy oy papkasida o'qituvchilar to'g'ridan-to'g'ri yuklagan bir necha gigabaytli dars videolari topildi. Oxirgi bir haftada yuklangan katta fayllarni topish uchun quyidagi buyruq ishlatildi:
find ~/www -xdev -type f -size +20M -mtime -7 -printf '%TY-%Tm-%Td %s\t%p\n' \
| sort
Yechim sifatida videolar video xostingga joylashtirilib, saytga faqat ularning pleyeri qo'yildi, asl fayllar esa hostingdan o'chirildi. Bu nafaqat diskni bo'shatdi, balki sahifalarning ochilishini ham tezlashtirdi, chunki katta videolarni oddiy hosting orqali uzatish serverga og'ir yuk tushiradi.
Nimani o'chirish mumkin, nimaga tegmaslik kerak
Topilgan har bir faylni o'chirishdan oldin uning nima ekanini tushunib oling. Kesh papkalari, eski jurnallar, ochilib qolgan arxivlar va eski sayt nusxalari odatda xavfsiz o'chiriladi. wp-content/uploads ichidagi rasmlar, ma'lumotlar bazasi fayllari, pochta qutilari va sozlama fayllari esa saytning bir qismi, ularni o'ylamasdan o'chirish saytni buzadi. Shubha bo'lsa, faylni avval kompyuterga yuklab oling yoki nomini o'zgartirib bir necha kun kuzating.
SSH bo'lmasa ham, hosting panelidagi fayl menejeri orqali papkalar hajmini ko'rib chiqish mumkin, lekin katta hisoblarda bu sekinroq ishlaydi. sayt.uz mijozlari panelni kabinetdan ochib, disk bo'yicha statistikani ko'rishlari, SSH kirishi yoki tarif hajmi bo'yicha savollarni esa texnik yordamga yozishlari mumkin. Diskni oyiga bir marta shu tartibda ko'rib chiqish kutilmagan "disk to'ldi" xatolaridan saqlaydi.