Я думаю, что/bin/true должен быть самой старой работой..
Ну, можно ли звонить, нулевой байт регистрируют двоичный файл?
touch /tmp/old_true
chmod 755 /tmp/old_true
/tmp/old_true
echo $?
По умолчанию tmpfs электронный диск будет настроен для использования максимума половины доступной RAM в системе (обратите внимание, что стандарт, non-PAE, 32-разрядное ядро может обратиться максимум к на 4 ГБ меньшего любого адресного пространства, используемого устройствами как Видеокарты VGA).
Я только что загрузил Разделенный Волшебный 2013 08 01 в виртуальной машине, давая ему 4 ГБ RAM. rootfs имеет в общей сложности 2 ГБ с используемыми приблизительно 444 КБ, таким образом, PM использует значения по умолчанию для tmpfs. Если я перезагружаю VM только с 1 ГБ RAM, корень tmpfs имеет только 504 МБ в наличии - ядро использует некоторых, таким образом, это - немного меньше чем половина общей RAM.
Это также монтирует/tmp и/, выполненный как tmpfs того же размера. Обратите внимание, что эти файловые системы не являются дополнительным пространством, они используют тот же пул RAM как rootfs и любые запускающие программы (т.е. немного меньше чем 1 ГБ в системе с 1 ГБ RAM).
(BTW, df
даже не работал бы, пока я не удалил/etc/mtab и заменил его символьной ссылкой на/proc/mounts).
Важная вещь помнить состоит в том, что tmpfs и любые программы, выполняющие долю та же системная память - поэтому, если Вы заполните tmpfs, он уменьшит сумму RAM, доступной для того, чтобы запустить программы, и если Вы запустите программы, которые используют много RAM, то он уменьшит сумму RAM, доступной для tmpfs.
Вы, кажется, делаете обоих. Вы заполняете диск своими файлами журнала, И Вы запускаете Firefox, X, и rdesktop - все из которых имеют тенденцию использовать большой объем RAM. Системы Unix не реагируют хорошо, когда rootfs становится полным, и когда RAM начнет становиться трудной, задача из памяти (OOM) ядра Linux начнет случайным образом уничтожать процессы к свободному некоторая RAM.
Любой из одних только этих факторов вызовет странные, непредсказуемые проблемы. Оба вместе просто делают проблемы неизбежными.
Как другие предположили, я настоятельно рекомендую не использовать Живой CD (Разделенное Волшебство или любой другой) таким образом. Они не разработаны для него, и что Вы делаете, как, в значительной степени гарантируют, вызовет проблемы. Короче говоря, Don't Do That, Then!
.
Вместо этого или повторное разделение Ваш жесткий диск и установка маленький дистрибутив на него, выполняет дистрибутив Linux в VM или находят дистрибутив, который устанавливает и убегает карта с интерфейсом USB, не используя tmpfs для корня / - т.е. использует карту с интерфейсом USB в качестве ее корневой файловой системы (это было бы намного медленнее, чем выполнение от tmpfs. и не, я не знаю ни о каком что работа как этот). или используйте жесткий диск USB, а не диск флэш-памяти USB.
BTW, Сколько RAM Вы имеете в своей системе и какую версию Разделенного Волшебства Вы выполняете?
Разделенные шоу доступная память на он - мало, "возглавляют" дисплей (по-видимому, названный conky
) в правом верхнем углу. Таким образом, Вы не должны даже разрабатывать, как получить эту информацию, она уже отображена. (Поскольку доступная память ЯВЛЯЕТСЯ Вашим оставленным свободным пространством на диске).
Или у можно заканчиваться блоки или inodes, Вы можете выводить эту информацию через stat
:
# stat -f /
File: "/"
ID: 0 Namelen: 242 Type: aufs
Block Size: 4096 Fundamental block size: 4096
Blocks: Total: 129061 Free: 127337 Available: 127337
Inodes: Total: 129061 Free: 128101
conky
(Для других: программа, которая изображается выше). Если Вы знаете о способе явно проверить выделенный /
пространство типа файловой системы Разделенное Волшебное использование и/или текущий статус того выделения, я был бы очень признателен за его. +1 для снимка экрана, все же.
– user66001
16.09.2013, 01:09
stat -f /
отчеты 4 909 Свободных Блоков (из 383 970), и 168011 Свободных Inodes (из 174 877).
– user66001
17.09.2013, 08:27
Как я и другие сказали в комментариях, Вы не должны использовать Разделенное Волшебство в качестве нормального распределения, оно не разработано для него и обязано иметь проблемы.
Так или иначе, однако, для проверки пространства, доступного, можно просто работать df
. Я не хочу покупать копию Разделенного Волшебства, из которого ОС для тестирования этого, но следующего является выводом df
на виртуальной машине, запускающей Ubuntu Живой CD:
Большинство из них является вещами стиля tmpfs (не их, фактические смонтированные разделы так или иначе), которые существуют в RAM. df
может все еще точно сообщить использование. Если Вы не видите a /
запись под Разделенным волшебством, я предполагаю, что они используют некоторое тайное именование. Другая подсказка, что Вы используете неправильный инструмент для задания.
df
. Это - то, что я вижу. P.S. "Я не хочу покупать копию Разделенного Волшебства ОС" - Разделенное Волшебство свободно. Я надеялся бы, что кто-то предоставляющий ответ сделает некоторое основное чтение на этом дистрибутиве, прежде, чем сделать так
– user66001
15.09.2013, 23:54
df
, и я не могу обесценить это, как мы прожили в начале этого вопроса, не влиял на мой выбор слов :(
– user66001
17.09.2013, 23:53
Я много лет сталкивался с этой проблемой на живых CD / DVD / USB-дистрибутивах, таких как Debian, Ubuntu, Mint, может быть, даже Fedora, если я помню. Память, используемая overlayfs (используемый в настоящее время fstype для live Mint / Ubuntu) и tmpfs, скрыта в кэшированной памяти free
(и неактивных записей / proc / meminfo) вместе с временными кэшами чтения с диска, так что это Непонятно, сколько памяти реально "бесплатно".
Я использую df
, чтобы сложить все пространство, используемое overlayfs & tmpfs, и вычитать его из свободной + буферов + кэшированной информации из бесплатно
. Я обязательно выделю это число рядом с вводящим в заблуждение "свободным бараном". Все размеры указаны в буквах К.
Если живая версия вашего дистрибутива не поддерживает df
, то я не знаю, где искать информацию о overlayfs / tmpfs. mount, / proc / mounts и / etc / mtab, похоже, показывают только максимальные размеры или их отсутствие, а не текущий размер, как df
.
Во-первых, для пространства, используемого overlayfs & tmpfs,
overlayfsused=$( df -t overlayfs --total |tail -n 1|tr -s [:space:]|cut -d " " -f 3 )
tmpfsused=$( df -t tmpfs --total|tail -n 1|tr -s [:space:]|cut -d " " -f 3 )
diskused=$(( overlayfsused + tmpfsused ))
FYI, df -t показывает только этот тип fs (можно поместить оба в один df), tail выдает только последнюю итоговую строку, tr сжимает пробелы до одного пространство, чтобы было легче вырезать нужное поле.
А для свободной оперативной памяти вы можете проанализировать вывод free
(возможно, проще) или прочитать из / proc / meminfo (я уже пробовал и набирал его таким образом):
free=$(grep MemFree < /proc/meminfo |tr -s [:space:]|cut -d " " -f 2)
buffers=$(grep Buffers < /proc/meminfo |tr -s [:space:]|cut -d " " -f 2)
cached=$(grep "^Cached" < /proc/meminfo |tr -s [:space:]|cut -d " " -f 2)
Затем соедините все вместе , скажем, для красивого вывода сценария, который conky может выполнять или выполнять каждую минуту или две:
realfree=$(( free + buffers + cached - diskused ))
echo "$(( realfree / 1024 )) MiB"
Я бы даже подумал, что if realfree <100M, затем отобразит предупреждающее сообщение, файлы del temp, звуковое предупреждение и т. д.
Что касается использования живого дистрибутива для повседневного использования, весь смысл живых версий Ubuntu (и многих других) состоит в том, чтобы опробовать дистрибутив для регулярного «ежедневного» использования в течение нескольких часов и посмотреть, понравится ли он вам. И многие онлайн-банки и статьи, посвященные вопросам безопасности, специально рекомендуют использовать живой дистрибутив для безопасного онлайн-банкинга и тому подобное. Тот факт, что живые дистрибутивы не понимают, когда у них действительно заканчивается оперативная память, является ошибкой IMO. Мне удалось разбить Live Mint, просто скопировав большие файлы в $ HOME и / tmp, поскольку они оба используют оперативную память, и оба имеют максимальный размер 1/2. К вашему сведению. В настоящее время у Mint есть, возможно, половина оперативной памяти, используемой каждым из / (overlayfs), / dev (devtmpfs? Используется только 4k, поэтому я предполагаю, что обычно он крошечный), / tmp, / run / shm
df
, только что узнав о/proc/mounts
псевдо файл, я нашел намного больше точек монтирования перечисленным в этом, чем какойmount
выводы (Включая/
/dev
/tmp
, и т.д.)... Какая-либо идея, почему? – user66001 16.09.2013, 10:01/
перечисленный сrw 0 0
флаги, в отличие от этого,/dev
точка монтирования, которая действительно указываетsize=1514228k
, следовательно, как Вы устанавливали выделение пространства rootfs на каждом тесте VM? И, есть ли способ контролировать использование/
tmpfs? В отношении того, что я выполняю, просто для уточнения, я не запускал многие программы / задачи, перечисленные в различных комментариях к этому вопросу/ответам друг одновременно с другом. – user66001 16.09.2013, 10:12size=
параметр. посмотрите монтирование (8) страница справочника. изменение значения по умолчанию вряд ли поможет Вам очень, если вообще - Вы будете все еще ограничены в общей сложности 2.93 ГБ, совместно использованными кем-либо, смонтировал tmpfs файловые системы, ядро (включая дисковый кэш), и все запускающие программы. – cas 16.09.2013, 10:22