Кратак одговор
Када је диск пун, прво проверите заузеће помоћу `df -h` и пронађите велике фајлове и фолдере помоћу `du`. Затим очистите непотребне логове, кеш пакета и привремене фајлове, али водите рачуна да не обришете активне логове без ротације. На крају подесите логротате и уклоните старе архиве да спречите поновно пуњење.
Како се проблем препознаје
- Сервиси не могу да упишу податке у базу или фајлове
- Апликација пријављује грешку „Но спаце лефт он device“
- Не можете да се пријавите на server путем SSH-a
- Web сајт враћа грешку 500 или се не учитава
- Системски логови престају да се пишу
Најчешћи узроци
Неконтролисани логови
Лог фајлови апликација или система расту без ротације и могу заузети све слободно место.
Кеш пакета и ажурирања
Преузети пакети и кеш менаџера пакета (APT, DNF) акумулирају се временом.
Привремени фајлови и сесије
Фајлови у `/tmp` и сесије корисника могу остати заувек ако се не чисте.
Велики фајлови базе података
Backup фајлови, думпови базе или архиве могу бити велики и заборављени.
Неисправно монтирани дискови
Ако се партиција не монтира правилно, подаци се уписују на root партицију и пуне је.
Решење корак по корак
- 1
Проверите заузеће диска
Покрените
df -hда видите која партиција је пуна. Обратите пажњу на колонуUse%и на партицију која је 100% заузета. Ако је пуна root партиција (/), наставите са провером великих фолдера. - 2
Пронађите највеће фолдере
Користите као root
du -h --max-depth=1 /да видите заузеће по директоријумима. Затим уђите у највећи фолдер и поновите команду. На тај начин ћете брзо лоцирати место где се троши простор. - 3
Пронађите велике фајлове
Покрените као root
find / -type f -size +100M -exec ls -lh {} \;да пронађете фајлове веће од 100 MB. Обришите или преместите оне који нису потребни, али прво проверите чему служе и направите backup ако су подаци важни. - 4
Очистите логове
Логови се обично налазе у
/var/log. Пре чишћења направите backup логова ако су вам потребни за дијагностику. Можете обрисати старе архивиране логове (*.gz,*.1) или их скратити као root командомtruncate -s 0 /var/log/ime.log. Не бришите активне логове, већ их скратите или ротирајте. - 5
Очистите кеш пакета
На Дебиан/Убунту системима покрените као root или са
sudo:apt cleanиapt autoremove. На RHEL/CentOS/Fedora системима користите као root или саsudo:dnf clean allиdnf autoremove. Time ћете ослободити простор који заузимају преузети пакети. - 6
Очистите привремене фајлове
Прегледајте
/tmpи/var/tmpи обришите фајлове старије од неколико дана. Будите опрезни са фајловима које тренутно користе активни процеси. - 7
Подесите логротате
Проверите конфигурацију у
/etc/logrotate.confи/etc/logrotate.d/. Уверите се да се логови ротирају и да се старије верзије бришу. Можете додатиrotate 7иdailyза кључне логове. - 8
Проверите монтирање дискова
Покрените
mountиdf -hда видите да ли су све партиције правилно монтиране. Ако нека партиција није монтирана, подаци се уписују на root партицију и могу је напунити.
Ако ништа не помогне
Ако и даље немате довољно простора, проверите да ли постоје обрисани фајлови које држе активни процеси. Команда lsof +L1, покренута као root, приказује такве фајлове; безбедно рестартујте процес који их држи. Размислите о додавању новог диска или проширењу партиције. За базе података и апликације са великим подацима, редовно правите backup и чистите старе думпове. На крају, ако је диск физички мали, планирајте миграцију на већи диск или цлоуд storage.
Како да спречите да се понови
- Редовно проверавајте заузеће диска помоћу `df -h` и `du`
- Подесите логротате за све апликације које пишу логове
- Чистите кеш пакета и привремене фајлове месечно
- Користите мониторинг алате који ће вас упозорити када диск достигне 80%
Када је боље позвати стручњака
Ако не можете да приступите серверу или не знате који су фајлови безбедни за брисање, обратите се IT подршци. Такође, ако је диск физички неисправан или постоји сумња на хардверски квар, боље је да то прегледа стручњак.
Одржавање IT инфраструктуре · Сервери, мреже, backup, безбедност и хелпдескЧеста питања
Како да брзо ослободим простор на root партицији?
Прво проверите `df -h` да видите колико је простора остало. Затим пронађите велике фајлове и фолдере помоћу `du` и `find`, и обришите непотребне логове и кеш. Ако је хитно, можете привремено обрисати старе архиве логова, али пре тога направите backup ако су вам потребни.
Могу ли слободно да обришем фајлове у /тмп?
Можете обрисати фајлове старије од неколико дана, али прво проверите да их не користи неки активни процес. Најбоље је користити `tmpwatch` или `systemd-tmpfiles` уз одговарајући тимер који аутоматски чисти `/tmp`.
Зашто ми се диск поново пуни након чишћења?
Најчешћи узрок је недостатак ротације логова или апликација која ствара велике привремене фајлове. Проверите логротате конфигурацију и подесите ограничења за апликације које пишу много података.