vagrant - на устройстве не осталось места

Я новичок в бродяге. Я следую инструкциям на http://gettingstartedwithdjango.com/en/lessons/introduction-and-launch/< /а>

Я получаю следующую ошибку при запуске скрипта «sudo ./postinstall.sh»

+ apt-get -y clean
+ rm -f /var/lib/dhcp3/*
+ rm /etc/udev/rules.d/70-persistent-net.rules
rm: cannot remove `/etc/udev/rules.d/70-persistent-net.rules': Is a directory
+ mkdir /etc/udev/rules.d/70-persistent-net.rules
mkdir: cannot create directory `/etc/udev/rules.d/70-persistent-net.rules': File exists
+ rm -rf /dev/.udev/
+ rm /lib/udev/rules.d/75-persistent-net-generator.rules
rm: cannot remove `/lib/udev/rules.d/75-persistent-net-generator.rules': No such file or directory
+ rm -f /home/vagrant/{*.iso,postinstall*.sh}
+ dd if=/dev/zero of=/EMPTY bs=1M
dd: writing `/EMPTY': No space left on device
78504+0 records in
78503+0 records out
82316406784 bytes (82 GB) copied, 105.122 s, 783 MB/s
+ rm -f /EMPTY
+ exit

Но мне кажется, что места достаточно:

vagrant@precise64:~$ df -h
Filesystem                                 Size  Used Avail Use% Mounted on
/dev/mapper/precise64-root                  79G  2.3G   73G   3% /
udev                                       174M     0  174M   0% /dev
tmpfs                                       74M  272K   73M   1% /run
none                                       5.0M     0  5.0M   0% /run/lock
none                                       183M     0  183M   0% /run/shm
/dev/sda1                                  228M   25M  192M  12% /boot
/vagrant                                   220G   91G  130G  42% /vagrant
/tmp/vagrant-chef-1/chef-solo-1/cookbooks  220G   91G  130G  42% /tmp/vagrant-chef-1/chef-solo-1/cookbooks
/tmp/vagrant-chef-1/chef-solo-2/cookbooks  220G   91G  130G  42% /tmp/vagrant-chef-1/chef-solo-2/cookbooks

Может кто-нибудь помочь? Спасибо.


person U-L    schedule 19.11.2013    source источник
comment
У меня та же проблема. Вы решили это?   -  person bgusach    schedule 28.01.2014


Ответы (2)


Он должен это делать :) Это делает ваш виртуальный диск как можно меньше, поскольку он тонко подготовлен.

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

person sjbx    schedule 25.07.2014
comment
На самом деле это правильный ответ, объяснение ниже технически правильное, но вводит в заблуждение, поскольку это не ошибка в сценарии, а правильный результат. - person alonisser; 14.09.2014

Проблема заключается в следующем утверждении:

dd if=/dev/zero of=/EMPTY bs=1M

Если вы не укажете count=<some value>, команда dd будет продолжаться до тех пор, пока не будет достигнут конец устройства. Таким образом, в основном с помощью приведенной выше команды вы пытаетесь создать файл с именем, который порождает весь раздел, называемый EMPTY под /. Таким образом ошибка.

person Emyl    schedule 20.11.2013
comment
Спасибо Эмиль. Итак, скрипт записывает пустой файл на все свободное место, а затем удаляет файл. Я не уверен, что делает count. Я читал в блоге. Другие параметры включают «bs», чтобы определить размер блоков данных для работы, и «count», чтобы сообщить команде, сколько блоков данных необходимо обработать. Если эти параметры опущены, то используется размер блока по умолчанию, равный 512 байтам, и данные обрабатываются либо непрерывно, либо до тех пор, пока не будет достигнут конец входных данных или не произойдет ошибка. Я хочу обрабатывать данные непрерывно, пока не будет достигнут конец. В сценарии уже есть условие if. - person U-L; 20.11.2013
comment
Что вы пытаетесь сделать? Например, добавление count=1024 создаст файл размером 1 ГБ (1M * 1024). - person Emyl; 21.11.2013