Форум русскоязычного сообщества Ubuntu


За новостями русскоязычного сообщества и Ubuntu в целом можно следить на нашей страничке в Google+

Автор Тема: Очистить свободное прстранство.  (Прочитано 2781 раз)

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

Оффлайн higet7

  • Автор темы
  • Активист
  • *
  • Сообщений: 379
    • Просмотр профиля
    • Сосудистая Нейрохирургия
Напомните плз как.
На диске например в 15 гб с 5 гб информации как остальное забить нулями

Оффлайн ploop

  • Активист
  • *
  • Сообщений: 762
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #1 : 15 Март 2010, 15:20:45 »
dd if=/dev/zero of=/путь/имя_файла

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #2 : 15 Март 2010, 15:24:47 »
В каталоге нужного раздела

sudo dd if=/dev/zero of=tempzerofile
создаст файлик с нулями на всё оставшееся свободное место. Запускать надо от рута, т.к. на ext 5% совбодного места зарезервировано под него. Но кмк еще журнал фс может нести в себе остатки инфы, и этому вопросу пусть лучше специалисты скажут.

Оффлайн higet7

  • Автор темы
  • Активист
  • *
  • Сообщений: 379
    • Просмотр профиля
    • Сосудистая Нейрохирургия
Re: Очистить свободное прстранство.
« Ответ #3 : 15 Март 2010, 15:28:32 »
потом соответственно удалить tempzerofile и привет?

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #4 : 15 Март 2010, 15:30:24 »
Ога

Оффлайн ploop

  • Активист
  • *
  • Сообщений: 762
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #5 : 15 Март 2010, 15:34:37 »
Да, кстати, от рута надо. Вместо /dev/zero можешь использовать /dev/random

Оффлайн higet7

  • Автор темы
  • Активист
  • *
  • Сообщений: 379
    • Просмотр профиля
    • Сосудистая Нейрохирургия
Re: Очистить свободное прстранство.
« Ответ #6 : 15 Март 2010, 15:45:49 »
I love linux

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #7 : 15 Март 2010, 16:22:21 »
можешь использовать /dev/random
Это будет нереально медленно. Лучше уж /dev/urandom. Но всё равно /dev/zero быстрее всех будет.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2540
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #8 : 15 Март 2010, 16:54:56 »
C рандомом надежнее. С нулями можно нарваться на уплотнение пустых блоков.
Вопрос на засыпку. Можно ли на винт 1M записать 10M. Ответ: можно, если писать нули.

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #9 : 15 Март 2010, 16:58:06 »
можно нарваться на уплотнение пустых блоков
Хм. А ради чего блоки эти уплотняются? Ради прироста скорости? Ведь, кмк, высвободившееся свободное пространство всё равно никак не задействовать штаными средствами...

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2540
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #10 : 15 Март 2010, 17:28:31 »
Может, для dd все будет корректно,
а с cp могут быть интересные штучки.
Проверим.
al@ubuntu-desktop1:~$ df ~
Файловая система           1K-блоков      Исп  Доступно  Исп% смонтирована на
/dev/sda6             38022728  20646432  15444896  58% /home
al@ubuntu-desktop1:~$ cp /dev/zero ./deltemp
^C
al@ubuntu-desktop1:~$ ls -l ./deltemp
-rw-r--r-- 1 al al 1068326912 2010-03-15 17:26 ./deltemp
al@ubuntu-desktop1:~$ df ~
Файловая система           1K-блоков      Исп  Доступно  Исп% смонтирована на
/dev/sda6             38022728  21690752  14400576  61% /home
al@ubuntu-desktop1:~$
Вроде, без неожиданностей, но если попробовать записать заранее известное количество нулей, могут быть нюансы.
Я бы поостерегся.

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #11 : 15 Март 2010, 18:14:06 »
Хм. Почему то подумал сразу на уровне HDD а на уровне ФС я как то даже и не задумывался, что такое имеет быть место. Таким образом можно создать бесконечно (в рамках адресации) длинный файл получается. А в каких ФС такое уплотнение применяется?

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2540
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #12 : 16 Март 2010, 08:24:03 »
Проверил, мин нет. Пишите нули, все будет хорошо.
Я опять нагнал пурги. ;D
В качестве компенсации могу показать 2 фокуса, использующие эффект "черных дыр":
- терабайт/сек скорость записи на винт (запишем 10 G практически мгновенно)
- резиновый HDD (запишем 10 G, а свободное место практически не изменится).
Если интересно - сообщите, то я подготовлю эти фокусы. 8)

Оффлайн ploop

  • Активист
  • *
  • Сообщений: 762
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #13 : 16 Март 2010, 08:32:09 »
Цитировать
Если интересно - сообщите, то я подготовлю эти фокусы.
Еще спрашивает!  :)

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2540
    • Просмотр профиля
Re: Очистить свободное прстранство.
« Ответ #14 : 16 Март 2010, 09:08:04 »
Хорошо, подготовлю. Все объясню, после демонстрации. Иначе будете считать меня шарлатаном. Grin
Готово, буду писать не 10G, а 1G (так проще).
al@ubuntu-desktop1:~/Desktop/Programming/C$ ./1.sh
Убедимся, что все чисто
ls: невозможно получить доступ к ./myfile: No such file or directory
Сколько свободного места
Файловая система           1K-блоков      Исп  Доступно  Исп% смонтирована на
/dev/sda6             38022728  20646564  15444764  58% /home
Втр Мар 16 09:06:47 MSK 2010
Запишем 1G
Втр Мар 16 09:06:47 MSK 2010
Убедимся, что записали 1G
-rw-r----- 1 al al 1073741830 2010-03-16 09:06 ./myfile
Сколько свободного места
Файловая система           1K-блоков      Исп  Доступно  Исп% смонтирована на
/dev/sda6             38022728  20646580  15444748  58% /home
Вот она магия!
al@ubuntu-desktop1:~/Desktop/Programming/C$
Жду комментариев.
« Последнее редактирование: 16 Март 2010, 09:10:48 от alexander.pronin »

 

Страница сгенерирована за 0.061 секунд. Запросов: 22.