Автор Тема: Неожиданное переполнение диска  (Прочитано 6231 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн epros

Неожиданное переполнение диска
« : 29 Ноября 2013, 09:48:41 »
Народ спасите, не знаю, что делать.
Запустив демон биткоина, начал заполнять базу с блоками, не ожидал, что последние десятки тысяч блоков окажутся такими огромными по размеру...
Собственно, я ожидал объёма базы примерно в полтора десятка Гб (как оно, собственно, и есть) НО: В lxde-шном файл-менеджере (pcmanfm) когда я нажимаю пункт контекстого меню "свойства" на директории "bitcoin/blocks". то вижу: "Общий размер файлов 12.6Гб", "Размер на диске 100.9Гб". Что бы последнее значило? Откуда такое огромное количество лишнего места на диске? У меня не такой уж большой диск... Короче, неожиданно обнаружилось 0 байт свободного места (df тоже говорит, что 100% использовано). А я, дурак, не взирая на все предупреждения сконфигурировал всё одним диском (не считая небольшого своп-раздела) - и корневую директорию, и все данные в одну кучу. Думал, что до полного забивания диска мне ещё далеко, а так будет проще... В общем, начались какие-то проблемы. Поначалу даже корзину мне не удалось почистить - выдавалась какая-то ошибка. Но вроде как-то с этим обошлось, теперь - занято уже 99%. :-[ Базу биткоина, не смотря на её безобразный размер, жалко - слишком много труда ушло на её получение. Хотел сбросить её на dvd, но почему-то pcmanfm говорит мне, что dvd смонтировался толлько для чтения и предлагает заглянуть в какие-то логи... Почему так произошло и как перемонтировать по нормальному - не понимаю. Выключать комп теперь тоже уже боюсь, ибо прочитал, что при переполнении диска после перезагрузки может не оказаться места для какого-то временного файла и тогда система вообще не запустится... Короче:

1) Подскажите пожалуйста, откуда такое огромное лишнее "место на диске" и можно ли с этим что-то поделать? База состоит из нескольких десятков файлов .dat, большее количество которых по 134 Мб. Т.е., вроде, не должно было бы быть страшно. Но... Я вообще не понимаю такой системы, что файл 134Мб занимает "на диске" более Гб.

2) Как перемонтировать писуемый DVD в режиме для записи. Сейчас lxde мне его монтирует автоматически при вставке. И, как видно, монтирует не так как надо.

3) Можно ли без риска для здоровья системы, не удалив базу биткоина, т.е. оставаясь с 1% свободного места на 110Гб-ном общем для всего диске, рискнуть перезагружаться?
 

Онлайн qupl

Re: Неожиданное переполнение диска
« Ответ #1 : 29 Ноября 2013, 10:11:29 »
Покажите хотя бы  fdisk -l
df -h

Оффлайн rayanAyar

Re: Неожиданное переполнение диска
« Ответ #2 : 29 Ноября 2013, 10:23:35 »
Откуда такое огромное количество лишнего места на диске?
Там много маленький файлов?

Место (почти на всех ФС) выделяется фиксированными блоками. Стандартный размер блока - 4 килобайта. Соответственно например:
* 1 файл размером 4 килобайта займёт на диске 4 килобайта
* 1 файл размером 1 байт займёт 4 килобайта
* 1000 файлов размером 1 байт займут 4 мегабайта
 

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #3 : 29 Ноября 2013, 12:54:15 »
Покажите хотя бы  fdisk -l
df -h

Я переписал всю базу биткоина на 64Гб флешку (пишет, что файлы на флешке занимают 14.4Гб, однако "место на диске" 462.5Гб. Что бы это значило?). С жесткого диска базу удалил. Перезагрузился успешно. Тем не менее, по-прежнему пишет, что свободное место 1.6Гб (всего лишь). На диске в директориях, не имеющих отношения к биткоину, такая же ерунда: файлы "на диске" занимают в 10 раз больше места, чем их настоящий размер.

Вот результаты команд, которые Вы просили:

root@home-desktop:/home/epros# fdisk -l

Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders, всего 234441648 секторов
Units = секторы of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x294d294d

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sda1   *        2048   224610303   112304128   83  Linux
/dev/sda2       224610304   234440703     4915200   82  Linux своп / Solaris

root@home-desktop:/home/epros# df -h
Файловая система                                       Размер Использовано  Дост Использовано% Cмонтировано в
rootfs                                                   106G          99G  1,5G           99% /
udev                                                      10M            0   10M            0% /dev
tmpfs                                                    254M         664K  253M            1% /run
/dev/disk/by-uuid/bc250faf-ac7a-46e0-a5a9-a456790ab1ff   106G          99G  1,5G           99% /
tmpfs                                                    5,0M            0  5,0M            0% /run/lock
tmpfs                                                    1,5G            0  1,5G            0% /run/shm

Сообщение объединено: 29 Ноября 2013, 13:00:55
Там много маленький файлов?

Место (почти на всех ФС) выделяется фиксированными блоками. Стандартный размер блока - 4 килобайта. Соответственно например:
* 1 файл размером 4 килобайта займёт на диске 4 килобайта
* 1 файл размером 1 байт займёт 4 килобайта
* 1000 файлов размером 1 байт займут 4 мегабайта
Файлы не маленькие! Те, которые по 134Мб (их 84 штуки в базе) "на диске" почему-то занимают каждый более чем по гигабайту.
« Последнее редактирование: 29 Ноября 2013, 13:01:51 от epros »
 

Онлайн qupl

Re: Неожиданное переполнение диска
« Ответ #4 : 29 Ноября 2013, 13:36:06 »
Где лежат базы?
du -s /var /home  /root

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #5 : 29 Ноября 2013, 13:43:40 »
Попробовал восстановить базу биткоина с флешки командой cp -r. Поначалу что-то писалось, но в конечном итоге получил на консоль кучу сообщений типа: " Не могу расширить файл такой-то, на диске не осталось свободного места". После этого система стала глючить (в частности, Iceweasel не запустился). После перезагрузки я получил то, чего боялся: Предупреждение о том, что нет места для создания временного файла и что tmpfs  mounted на /tmp (или что-то в этом роде), а в итоге система не загрузилась. Перезагрузился в безопасном режиме, из командной  строки суперпрользователя выполнил "rm -r .bitcoin/blocks", после чего опять смог перезагрузиться "нормально", т.е. вернулся к тому же 1% свободного места.

Что это за ерунда? Что это за операция "расширить" файл? И почему они на диске занимают вдесятеро больше места, чем им нужно?

Сообщение объединено: 29 Ноября 2013, 13:51:15
Где лежат базы?
du -s /var /home  /root

root@home-desktop:/home/epros# du -s /var /home /root
652604 /var
25182856 /home
73430284 /root

Касательно баз: Вы про базы биткоина? Уже нигде не лежат, после сбрасывания на флешку я их с жёсткого диска удалил. А были в /etc/.bitcoin в поддиректориях blocks и chainstate (основной объём в blocks).
« Последнее редактирование: 29 Ноября 2013, 13:51:15 от epros »
 

Оффлайн rayanAyar

 

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #7 : 29 Ноября 2013, 14:04:11 »
root@home-desktop:/home/epros# du -s /var /home /root
652604 /var
25182856 /home
73430284 /root
Поясню: pcmanfm мне пишет, в /root/.local/share/Trash  у меня лежит 601Гб. У меня столько и не было-то никогда... Ничего, если я сделаю там rm -r *?
 

Онлайн qupl

Re: Неожиданное переполнение диска
« Ответ #8 : 29 Ноября 2013, 14:07:08 »
Касательно баз: Вы про базы биткоина? Уже нигде не лежат, после сбрасывания на флешку я их с жёсткого диска удалил. А были в /etc/.bitcoin в поддиректориях blocks и chainstate (основной объём в blocks).
А что такое лежит в /home на 25Гб и /root на 75 Гб?

du -s /root/*

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #9 : 29 Ноября 2013, 14:13:46 »
Касательно баз: Вы про базы биткоина? Уже нигде не лежат, после сбрасывания на флешку я их с жёсткого диска удалил. А были в /etc/.bitcoin в поддиректориях blocks и chainstate (основной объём в blocks).
А что такое лежит в /home на 25Гб и /root на 75 Гб?

du -sa /root/*
В /home ничего особенного, там обычные пользовательские файлы. Такой объём получается потому, что, например, каждый видеоролик, законный размер которого 400Мб, "на диске" занимает более 3.5Гб.
В /root основной объем приходится на .local/share/Trash/ Ничего не грохнется, если я его почищу?

Вот эта команда не проходит:
root@home-desktop:~# du -sa /root/*
du: невозможно одновременно подводить итог и показывать все элементы
Попробуйте «du --help» для получения более подробного описания.
 

Онлайн qupl

Re: Неожиданное переполнение диска
« Ответ #10 : 29 Ноября 2013, 14:18:45 »
-a лишним был

Сообщение объединено: 29 Ноября 2013, 14:19:23
Это корзина, ничего не грохнется.

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #11 : 29 Ноября 2013, 14:23:57 »
А, рискнул, почистил. Теперь:
root@home-desktop:/# du -s /root
57324 /root
Но главная проблема в том, почему файлы спонтанно расширяются вдесятеро? Причём любые файлы, включая и те, которые были записаны ранее и не только мной.

Сообщение объединено: 29 Ноября 2013, 14:31:04
Хм, не понимаю. Провёл эксперимент: создал файл test.txt и скопировал туда последовательность 0123456789 десять раз. В свойствах пишет: "Размер: 100 байт, размер на диске: 32768 байт".

Сообщение объединено: 29 Ноября 2013, 14:37:59
Ладно, 32 К - это может быть минимальный размер кластера на диске. Но почему когда я набил в этот файл ровно 10000 знаков (цифр), "объём на диске" оказался равным 98 304 байт?

Сообщение объединено: 29 Ноября 2013, 14:55:06
Подскажите пожалуйста, что это за параметр такой - "размер на диске", чем его можно ещё посмотреть кроме пункта "свойства" в контекстном меню файл-менеджера? ls - l мне показывает нормальные цифры:
root@home-desktop:/home/epros# ls -l test.txt
-rw-r--r-- 1 epros epros 10000 ноя 29 14:37 test.txt
Ровно 10 тыс . байт, как и должно быть.
« Последнее редактирование: 29 Ноября 2013, 14:55:06 от epros »
 

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #12 : 30 Ноября 2013, 18:41:57 »
Подскажите плиз, что бы это значило:
root@home-desktop:~# cp backup272291.tar /media/84D0-F52A/
cp: запись «/media/84D0-F52A/backup272291.tar»: Файл слишком велик
cp: не удалось расширить «/media/84D0-F52A/backup272291.tar»: Файл слишком велик
Файл на самом деле чуть больше 15Гб, а копировался он на пустую флешку объёмом 64Гб.
 

yura_n

  • Гость
Re: Неожиданное переполнение диска
« Ответ #13 : 30 Ноября 2013, 18:49:17 »
Зайдите в папку с сомнительными файлами и выполните такую команду:
du --max-depth=1 -hac
А то как-то не очень понятно что у вас за файлы. Вообще, очень сильно похоже, что у вас серьезные неполадки с файловой системой.- Выполните проверку оной.
 

Оффлайн epros

Re: Неожиданное переполнение диска
« Ответ #14 : 30 Ноября 2013, 19:03:26 »
Папка с сомнительными файлами это где? Я сейчас во всех файлах сомневаюсь. Если выполнить на флешке, куда этот .tar недозаписался, то:

root@home-desktop:/media/84D0-F52A# du --max-depth=1 -hac
4,0G ./backup272291.tar
4,1G .
4,1G итого
Как видите, файл всего лишь около 4Гб. Файлменеджер pcmanfm мне пишет, что 4.3Гб, но при этом "место на диске" - больше 137Гб. Это как?

Сообщение объединено: 30 Ноября 2013, 20:22:35
Сейчас  попробовал переписать этот же бэкап-файл на эту же флешку, загрузившись в "безопасном режиме" и потом вручную примонтировав флешку командой mount. Результат абсолютно такой же, только сообщение об ошибке на английском языке: "failed to expand file ..." и т.п. И ровно такой же по размеру кусок файла - 4.1G - успел записаться на флешку перед тем, как возникла ошибка.

Сообщение объединено: 30 Ноября 2013, 21:08:52
Офигеть, загрузился с того live CD, с которого изначально устанавливал Дебиан несколько месяцев назад. И такая же ерунда при попытке записи этого же файла на эту же флешку. Вариации заключаются в форматах сообщения об ошибке: Англоязычный pcmanfm говорит: "error when splicing the file". Что же это за ерунда такая?

Может всё-таки снести этот дебиан? Вот только как бы сначала бекап сохранить...
« Последнее редактирование: 30 Ноября 2013, 21:08:52 от epros »
 

Теги: