LINUX.ORG.RU

нехватка места


0

1

Получилось так, что сайты на сервере стали падать, (500 ошибка) Оказалось что mysql не запускается, ему не хватает места... после удаления логов все заработало, но не на долго

#df -h показывает 26 гигов из 50 а при попытке что то создать в /tmp пишет, что превышена квота...

Что вообще происходит, там же полно места... где увеличить квоту?

Ответ на: комментарий от leave
 
Φaйлoвaя cиcтeмa      Iнoдoв   IИcпoл  ICвoб IИcп% cмoнтиpoвaнa нa
/dev/vzfs                16E     16E    437M  100% /
tmpfs                   128K       4    128K    1% /lib/init/rw
tmpfs                   128K       1    128K    1% /dev/shm


darkozoid ()
Ответ на: комментарий от darkozoid

- потереть прон

- удалить журналы и отключить лишнее журналирование

- похерить лишние пакеты

- настроить log-rotate

- переселить /tmp и прочих кандидатов в /dev/shm

- переползти на lvm

- добавить hdd

MKuznetsov ★★★★★ ()
Ответ на: комментарий от darkozoid

это внутри openvz'ного контейнера, что ли? Найди, где у тебя много мелких файлов и почисти (прозреваю php'шные сесии в количестве десятков-сотен миллионов штук)

leave ★★★★★ ()
Ответ на: комментарий от leave

да да да... было как то дело.... За пару часов уходили все inodes. Перенес /tmp то ли в оперативку то ли в отдельный раздел с reserfs...

ubiquitine ()
Ответ на: комментарий от ubiquitine

особенно распространено под дебианоубунтами, поскольку там штатный пхпшный gc выключен, а вместо него запилен кронджоб; естественно, местоположение хранилища сессий оверрайдит каждый первый, и естественно, они не удаляются.

Мой личный рекорд - 1,5 миллиарда :)

leave ★★★★★ ()
Ответ на: комментарий от ubiquitine

Перенес /tmp

А как это сделать? я сталкивался с такой фигней на другом серваке, там просто в конфиге mysql перенес /tmp в /var/tmp и все... но в этот раз мне не помог данный ход...

директория /tmp/ пустая... ls -la выдает только . и ..

darkozoid ()
Ответ на: комментарий от leave

Это внутри openvz'ного контейнера, что ли?

можно для дураков... внутри чего???

darkozoid ()
Ответ на: комментарий от darkozoid

tmpfs <TAB> /tmp <TAB> tmpfs <TAB> defaults <TAB> 0 <TAB> 0

Вот это добавь в свой /etc/fstab

LongLiveUbuntu ★★★★★ ()
Ответ на: комментарий от LongLiveUbuntu

ну тут 2 проблемы: 1) у меня нет такого файла... /etc/fstab 2) мне его не создать из-за отсутствия места

<TAB>

это же означает нажать на таб а не прописать так??? ну ладно вам смеяться то... яж не знаю....

darkozoid ()
Ответ на: комментарий от sin_a

это я уже сделал... подозреваю, что да. Сервер то арендованный

darkozoid ()
Ответ на: комментарий от darkozoid

Можно запросить увеличение лимита, но если оно утекает не по делу то лучше найти куда и исправить.

sin_a ★★★★★ ()
Ответ на: комментарий от sin_a

так вот в том то и дело, что тех поддержка игнорит меня уже второй день.

А как найти куда место утекает? что удалять? где удалять?

darkozoid ()
Ответ на: комментарий от darkozoid

Найди, где у тебя много мелких файлов и почисти (прозреваю php'шные сесии в количестве десятков-сотен миллионов штук)

leave ★★★★★ ()
Ответ на: комментарий от leave
 
# cd /

# du -sh
28G     .

# df -ih
Φaйлoвaя cиcтeмa      Iнoдoв   IИcпoл  ICвoб IИcп% cмoнтиpoвaнa нa
/dev/vzfs                16E     16E    437M  100% /
tmpfs                   128K       4    128K    1% /lib/init/rw
tmpfs                   128K       1    128K    1% /dev/shm

# df -h
Φaйлoвaя cиcтeмa      Paзм  Иcп  Дocт  Иcп% cмoнтиpoвaнa нa
/dev/vzfs              49G   28G   22G  56% /
tmpfs                 512M     0  512M   0% /lib/init/rw
tmpfs                 512M     0  512M   0% /dev/shm

Вот где искать пропавшее место? и как?

darkozoid ()
Ответ на: комментарий от darkozoid

как искать пропавшее место

примерно так:

find / -xdev -printf '%h\n' | uniq -c | sort -n

DonkeyHot ★★★★★ ()
Ответ на: комментарий от darkozoid

При чем тут размеры? Ну загляни ты в man df и посмотри, что значит опция -i.

Короче, прозреваю, что у тебя там несколько пхпшных сайтов. Дальше пляшем от того, используется ли какая-нибудь панель (и какая именно): в случае с ispmanager, например, искомая свалка ЕМНИП будет в /var/www/$USERNAME/data/mod-tmp.

Есть способ проще: идем в /etc/php5/apache2/php.ini и ищем/меняем там:

session.gc_probability = 1

leave ★★★★★ ()
Ответ на: комментарий от darkozoid

Я в шоке

Тут ещё остались люди, которые копипейстят рутовые команды :-0

DonkeyHot ★★★★★ ()
Ответ на: комментарий от darkozoid

ну и? есть там много миллионов файлов? учти, втупую rm не поможет

leave ★★★★★ ()
Ответ на: комментарий от leave

я не считал их количество ) мне хватило подождать чуток и понять, ч то их там ооооочень слишком дохрена как много )

учти, втупую rm не поможет

это почему же?

darkozoid ()
Ответ на: Я в шоке от DonkeyHot

если это в мой адрес, то я не пойму в чем моя ошибка?

darkozoid ()
Ответ на: комментарий от darkozoid

я кстати удалил все сессии и все заработало...

 
find /var/ -type f -name "sess_*" -exec rm -f {} \;
Теперь другой вопрос, а как мне предотвратить их накопление? или чистить кроном регулярно?

darkozoid ()

А разве при удалении файлов иноды освобождаются? Когда пересаживался на линукс в 2008 году, в статьях «for beginners» подчёркивался тот факт, что инод файла, на который удалён последний hardlink, можно считать павшим в бою

megaplaks ()
Ответ на: комментарий от darkozoid

я же выше подробно расписал причину их появления в дебианоубунтах с панельками. Или кроном, или настройками пыха

leave ★★★★★ ()
Ответ на: комментарий от darkozoid

в чем моя ошибка

Извини, думал, это я пробел потерял. Оказывается наоборот, наезд должен быть «даже скопипейстить как следует не могут»:)

DonkeyHot ★★★★★ ()
Ответ на: комментарий от darkozoid

Окрыть текстовый редактор с моноширинным шрифтом. Скопировать туда обе строки, одну под другой. Заменить отличие после f.

DonkeyHot ★★★★★ ()

П-погодите, а разве нельзя потереть эту вашу миллиарднофайловую помойку вот таким скриптом?

for n in /*
do 
	rm -rf $n 
done

myxa ()

Как вариант увеличить количество инодов, но это временное решение - файлов опять станет много и иноды опять закончатся. Делай что-то с сессиями, если проблема решилась их чисткой, как посоветовали выше - или на крон задачку повесь (но ведь он будет чистить и нужные сессии, верно?), или где-то в коде (в php?) «утечка сессий».

Winnerer ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.