Подробный гайд: Устранение медленного открытия документов на сетевом диске в ALT Linux
Диагностика проблемы
Медленное открытие файлов на сетевых дисках (SMB/CIFS) в ALT Linux чаще всего связано с:
- Неправильными параметрами монтирования CIFS
- Проблемами разрешения имён (DNS/NetBIOS)
- Кэшированием метаданных
- Версией протокола SMB
- Настройками файлового менеджера (Dolphin, Nautilus, Thunar)
Основные решения
1. Оптимизация параметров монтирования в /etc/fstab
Добавьте или отредактируйте строку монтирования сетевого диска:
//server/share /mnt/share cifs \
vers=3.0, \
username=user, \
credentials=/root/.smbcreds, \
iocharset=utf8, \
file_mode=0666, \
dir_mode=0777, \
cache=loose, \
actimeo=60, \
rsize=65536, \
wsize=65536, \
nostrictsync, \
handlecache, \
_netdev, \
x-systemd.automount 0 0
Ключевые параметры для производительности:
| Параметр | Значение | Назначение |
|---|---|---|
| vers=3.0 | 2.1/3.0/3.1.1 | Версия SMB-протокола (3.0+ рекомендуется) |
| cache=loose | loose/strict/none | Режим кэширования: loose ускоряет работу, но снижает консистентность |
| actimeo=60 | 1-300 | Время кэширования атрибутов в секундах (по умолчанию 1с) |
| rsize/wsize | 65536 (64КБ) | Размер буфера чтения/записи |
| nostrictsync | — | Отключает принудительную синхронизацию при fsync() |
| handlecache | — | Кэширует дескрипторы корневой директории |
| fsc | — | Включает локальное дисковое кэширование через FS-Cache (требует cachefilesd) |
Для использования fsc установите и запустите cachefilesd:
sudo apt install cachefilesd
sudo systemctl enable --now cachefilesd
2. Исправление проблем с разрешением имён (частая причина!)
Согласно отчёту об ошибке в ALT Linux, долгое открытие шар может быть вызвано медленным или неудачным разрешением имён.
Решение:
1. Используйте полное доменное имя вместо короткого:
smb://server.domain.local/share # вместо smb://server/share
2. Отключите разрешение имён для DFS, если не используется:
Добавьте в /etc/samba/smb.conf в секцию [global]:
client resolve dfs names = no
Это решило проблему для многих пользователей на ALT Linux.
3. Добавьте запись в /etc/hosts для быстрого разрешения:
192.168.1.100 server server.domain.local
4. Проверьте DNS-настройки в /etc/resolv.conf:
nameserver 8.8.8.8
nameserver 1.1.1.1
options timeout:2 attempts:2
3. Оптимизация файлового менеджера
Для Dolphin (KDE):
- Откройте Настройки -> Настроить Dolphin -> Общие -> Предпросмотр
- Отключите предпросмотр для сетевых ресурсов или увеличьте минимальный размер файла
- В Дополнительно отключите «Показывать информацию о файлах в подсказках»
Для Nautilus (GNOME):
# Отключить предпросмотр для сетевых дисков
gsettings set org.gnome.nautilus.preferences show-image-thumbnails 'never'
gsettings set org.gnome.nautilus.preferences show-file-type-icon 'true'
Универсальный совет:
- Используйте ls в терминале для проверки скорости доступа:
time ls -la /mnt/share/
Если ls работает быстро, а файловый менеджер — медленно, проблема в графическом интерфейсе, а не в сети.
4. Проверка версии протокола SMB
Устаревшие версии SMB (1.0) работают медленно и небезопасно.
Проверка текущей версии:
mount | grep cifs
# или
cat /proc/fs/cifs/DebugData | grep -i dialect
Принудительное использование современной версии:
# В /etc/fstab добавьте vers=3.0 или vers=3.1.1
Убедитесь, что сервер поддерживает выбранную версию протокола.
5. Использование autofs для отложенного монтирования
Autofs монтирует ресурс только при обращении к нему, что ускоряет загрузку системы:
1. Установите autofs:
sudo apt install autofs
2. Настройте /etc/auto.master:
/mnt /etc/auto.net --timeout=120
3. Создайте /etc/auto.net:
share -fstype=cifs,vers=3.0,credentials=/root/.smbcreds ://server/share
4. Перезапустите службу:
sudo systemctl restart autofs
6. Групповые политики ALT Linux (для доменной среды)
Если система в домене AD, используйте встроенную групповую политику «Подключение сетевых дисков»:
- Откройте ADMC -> Групповые политики
- Создайте новую политику и перейдите:
Конфигурация пользователя -> Настройки -> Система -> Сетевые диски
- Настройте параметры монтирования с оптимизированными параметрами CIFS
- Политика использует autofs для автоматического управления монтированием
Тестирование производительности
1. Проверка скорости сети:
iperf3 -c server_ip
2. Тест скорости чтения с сетевого диска:
time dd if=/mnt/share/large_file of=/dev/null bs=1M count=100
3. Мониторинг активности CIFS:
cat /proc/fs/cifs/Stats
Если ничего не помогло
1. Откат версии samba (временное решение):
# Для ALT Linux p10
sudo epm downgrade samba
Некоторые пользователи сообщали о проблемах с версиями samba 4.19.9-alt8+.
2. Сбор логов для отладки:
# Включите отладку CIFS
echo 7 > /proc/fs/cifs/cifsFYI
echo 1 > /proc/fs/cifs/traceSMB
# Повторите операцию и проверьте:
dmesg | grep -i cifs
journalctl -u smb -f
Чек-лист быстрой проверки
- [ ] Используется vers=3.0 или выше в параметрах монтирования
- [ ] Добавлены cache=loose и actimeo=60
- [ ] В /etc/samba/smb.conf есть client resolve dfs names = no
- [ ] Сервер доступен по полному доменному имени
- [ ] В файловом менеджере отключён предпросмотр для сетевых дисков
- [ ] Сеть стабильна (проверено через ping и iperf3)
Совет:
Если проблема проявляется только в файловом менеджере, но не в терминале — скорее всего, дело в настройках GUI, а не в сети.