Медленный список каталогов при просмотре разделов Windows

У нас есть клиент Linux с использованием mount cifs -t, а просмотр между каталогами происходит крайне медленно, иногда 1-3 минуты, чтобы перечислить папки.

Этот ресурс находится на сервере Windows. У клиентов Windows это не проблема.

Мы можем воспроизвести проблему, если мы установим новую версию Ubuntu на виртуальную машину.

Следует отметить, что этот пользователь подключается через MPLS из удаленного офиса в наш центр обработки данных через соединение 100 Мбит / с.

Задержка составляет 50 мс.

Можно ли что-нибудь сделать, чтобы решить эту проблему? Предложения?

Первоначально у нас были проблемы с производительностью, заблокированной со скоростью 1 Мбайт / с для скорости передачи; однако, если мы добавили vers = 3.02 к команде mount cifs, скорость передачи может достигать 11 Мбит / с.

Единственная проблема, остающаяся в этом вопросе - это медленное переключение между папками.

Если мы запустим ls из терминала, у него есть такое же отставание, иногда 2 минуты, чтобы показать листинг ls.

Если мы запустим sudo ls, список каталогов мгновен, не уверен, почему или что-то еще мы можем сделать, чтобы смягчить проблему.

Запуск ls -R действительно показывает проблему. sudo ls -R в основном почти мгновен.

Если мы установим другую карту в другое место в нашей сети MPLS с задержкой в ​​25 мс проблема исчезла, и просмотр моментален.

Помогите пожалуйста.

0
задан 23 August 2017 в 05:35

2 ответа

Полная ls документация (info '(coreutils) ls invocation' или онлайн-версия) имеет вероятное решение:

Note that using the ‘--color’ option may incur a noticeable performance penalty when run in a directory with very many entries, because the default settings require that ‘ls’ ‘stat’ every single file it lists. However, if you would like most of the file-type coloring but can live without the other coloring options (e.g., executable, orphan, sticky, other-writable, capability), use ‘dircolors’ to set the ‘LS_COLORS’ environment variable like this, eval $(dircolors -p | perl -pe \ 's/^((CAP|S[ET]|O[TR]|M|E)\w+).*/$1 00/' | dircolors -) and on a ‘dirent.d_type’-capable file system, ‘ls’ will perform only one ‘stat’ call per command line argument.

Если вы добавляете сетевые издержки в stat, все в целом каталоге, ваша задержка начинает становиться понятной.

Или вы можете использовать вызов ls с --color=off или no --color.

0
ответ дан 18 July 2018 в 08:04

Полная ls документация (info '(coreutils) ls invocation' или онлайн-версия) имеет вероятное решение:

Note that using the ‘--color’ option may incur a noticeable performance penalty when run in a directory with very many entries, because the default settings require that ‘ls’ ‘stat’ every single file it lists. However, if you would like most of the file-type coloring but can live without the other coloring options (e.g., executable, orphan, sticky, other-writable, capability), use ‘dircolors’ to set the ‘LS_COLORS’ environment variable like this, eval $(dircolors -p | perl -pe \ 's/^((CAP|S[ET]|O[TR]|M|E)\w+).*/$1 00/' | dircolors -) and on a ‘dirent.d_type’-capable file system, ‘ls’ will perform only one ‘stat’ call per command line argument.

Если вы добавляете сетевые издержки в stat, все в целом каталоге, ваша задержка начинает становиться понятной.

Или вы можете использовать вызов ls с --color=off или no --color.

0
ответ дан 24 July 2018 в 18:59
  • 1
    Протестировал еще один RHEL-сервер с настольной опцией, ls с цветами - это мгновенная рабочая станция RHEL, Ubuntu, Fedora, OpenSUSE все из коробки, то же самое с ls с цветом - 20 + секундная задержка. Я запускал тип ls на серверной версии, и он соответствует другим дистрибутивам Картирование через графический интерфейс все еще очень медленное, даже если используется сервер ISO для RHEL. Я не уверен, почему ls с цветами будет вести себя по-другому от сервера к редакции RHEL для рабочих станций. Есть идеи? Или как ускорить работу графического интерфейса? – Ubuntu Guy 25 August 2017 в 06:26

Другие вопросы по тегам:

Похожие вопросы: