Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Очень много файлов (На устройстве кончилось место) / 12 сообщений из 12, страница 1 из 1
29.12.2010, 19:42
    #37041622
Apex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
При попытке распаковать в директорию очень большое количество файлов (несколько миллионов) tar начинает выводить сообщение "Невозможно open: На устройстве кончилось место". Место есть, свободные inode тоже. Тип файловой системы ext4 (на ext3 та же картина)
Код: plaintext
1.
2.
3.
4.
5.
# df -i
Файловая система      Инодов   Испол   Своб  Исп % смонтирована на
/dev/sdc1             102400000   7163029   95236971      7 % /store2
# df -h
/dev/sdc1             171G   46G  116G   29 % /store2

Что я еще не учел?
...
Рейтинг: 0 / 0
29.12.2010, 20:28
    #37041660
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
А оно распаковывает сколько из этих мульенов? И после этого можно создать файл, скажем, touch-ем?
...
Рейтинг: 0 / 0
29.12.2010, 20:36
    #37041671
Apex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
авторА оно распаковывает сколько из этих мульенов?
Архивов несколько, каждый содержит примерно по миллиону файликов, сами файлы небольшие, по несколько Кб.
Затык происходит где-то после 7 млн. При этом руками файл создать можно, скопировать в нее тоже можно.
Похоже проблема в самом tar, надо попробовать в разные директории распаковать, а потом слить в одну.

P.S. понимаю, что задача глупая, но она разовая и для дальнейшей обработки удобно все эти файлы таки слить в одно корыто...
...
Рейтинг: 0 / 0
29.12.2010, 20:53
    #37041686
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
Если разовая - тогда так.

Проверить, что tar -tzf archive.tgz выводит полный листинг
и попробовать по одному

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#!/bin/sh


tar -tzf archive.tgz |
while read f
do
 tar -xzvf archive.tgz $f
done

придется запастись терпением.
...
Рейтинг: 0 / 0
29.12.2010, 20:54
    #37041689
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
ибо видимо действительно у tar крышу рвет, а файловая система не виновата
...
Рейтинг: 0 / 0
30.12.2010, 02:27
    #37041878
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
А /tmp не используется при такой распаковке?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
30.12.2010, 11:17
    #37042198
Apex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
vkleА /tmp не используется при такой распаковке?

Нет, а как это? И чем поможет?
...
Рейтинг: 0 / 0
30.12.2010, 15:38
    #37042774
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
Apex,

Да никак, раз не используется... Просто в начале обращалось внимание на /store2, где место есть, но не на другие (текущая и tmp), которые возможно могут использоваться. Сам как то нарывался на такое при распаковке большого архива, не сразу догнал.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
30.12.2010, 16:07
    #37042817
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
ApexПри попытке распаковать в директорию очень большое количество файлов (несколько миллионов)А они расположены в одном каталоге или распределены по подкаталогам? У ФС, случаем, нет ограничения на количество файлов в одном каталоге?
...
Рейтинг: 0 / 0
30.12.2010, 18:38
    #37043043
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
/tmp может находится на отдельном логическом (или физическом) устройстве, у которого естественно будет свое собственное ограничение по размеру.
И кстати, судя по выводу df, у TC это может быть причиной. Apex не показал что именно смонтировано в '/' и/или '/tmp', но они явно на отдельном устройстве от рабочей папки.
...
Рейтинг: 0 / 0
30.12.2010, 21:10
    #37043133
Apex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
В общем распаковал каждый тар в отдельную директорию, а затем переместил файлы в одну - вроде все нормально. Правда пользоваться всякими ls, find и т.д. стало конечно же невозможно, спасает perl.
Не знаю чего там с /tmp, оно у меня вообще на память смонтировано.
В итоге там получилось больше 16 млн. файлов.
...
Рейтинг: 0 / 0
02.01.2011, 11:31
    #37044326
Андрей Панфилов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень много файлов (На устройстве кончилось место)
ApexЗатык происходит где-то после 7 млн.На шляпе 5.5 (ext3) не воспроизводится:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
test]$ perl -f -e 'for (1..10000000) {open F, ">$_"; close F;}'
test]$ ls |wc
10000000 10000000 78888897
test]$ tar cf ../test.tar .
test]$ cd ..
~]$ rm -rf test
~]$ mkdir test
~]$ cd test
test]$ tar fx ../test.tar
test]$ ls |wc
10000000 10000000 78888897
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Очень много файлов (На устройстве кончилось место) / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]