Да "-B 1024", помешать это не может но кое где ситуацию исправит.
По поводу "прочих трат" не понимаю все же. Мне нужно записать модуль в папку, я проверяю df свободное место в папке, если его больше чем размер модуля, то модуль записать можно. При чем здесь прочие траты. Единственный момент, что система встанет если занять все место, но сколько нужно оставить не вычисляется можно просто установить этот предел. 100 мегабайт там или в % от РАМ.
Второе что у вас не учтено это swap, он тоже часть виртуальной памяти. Например команда которую я вам привел показывает у меня, что свободно 12гиг, при том, что RAM 8 гиг. И я таки могу записать туда 12гиговый файл, просто он частично будет в своп.