Собственно, при копировании файлов чтение и запись файла идёт через буфер buf, размер которого зашит в программе и равен 8К (см. mc-4.8.16/src/filemanager/file.c, строка 1799):
while (TRUE)
{
char buf[BUF_8K];
/* src_read */
if (mc_ctl (src_desc, VFS_CTL_IS_NOTREADY, 0))
n_read = -1;
else
while ((n_read = mc_read (src_desc, buf, sizeof (buf))) < 0 && !ctx->skip_all)
Собственно, почему такой, и не маловат ли?
Интерес мой возник в связи с использованием mc на GlusterFS: с некоторых пор очень медленно копирует (см. http://darksoft.org/webbzr/mydocs/trunk/annotate/head:/Administration/Server/...):
midnight-commander have very small copy buffer and for this reason performs really bad
Может, стоит увеличить размер буфера? Я сделал себе 2М и скорость копирования больших файлов возросла почти на 2 порядка :)