Я использую Bash на Ubuntu для Windows на Windows 10.
Отказ от ответственности: я относительно новичок в Windows. Почти исключительно использовали Unix системы
Я загружаю ~ 1 мил изображений в группах до 100 тыс., Выполняя следующий скрипт в WSL ($ 1 - целевая папка, в которую загружаются изображения):
#!/bin/bash
SECONDS=0
cat "$1/pics.csv" | xargs -n 1 -P 10 wget -q -P "$1/"
echo "Elapsed $SECONDS seconds"
echo "Adding .jpg extentions"
mmv "$1/*_small" "$1/#1.jpg"
find "$1" -name pics.csv -type f -delete
Процесс порождает до 8 потоков для загрузки изображений, переименовывает их, а затем удаляет CSV, с которого были прочитаны URL-адреса. Первые пару раз сценарий запускается, он завершается, но затем он внезапно останавливается и приводит к BSOD.
Я запускал его несколько раз на своем Mac без сбоев. Я должен был перенести свой проект на Windows 10 и хочу использовать WSL, так как он должен иметь возможность запускать сценарии bash.
Я проверил Event Viewer на наличие журналов ошибок - источником, по-видимому, является DistributedCOM с ошибкой, но я не могу понять, как это могло быть, так как он работает нормально первые несколько раз.
Параметры разрешений для конкретного приложения не предоставляют разрешения локальной активации для приложения COM-сервера с CLSID {D63B10C5-BB46-4990-A94F-E40B9D520160} и APPID {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} пользователю DESKTOP-E01P1DA [ Имя пользователя] SID (S-1-5-21-2149831090-3283936149-3974900866-1001) с адреса LocalHost (с использованием LRPC), работающего в контейнере приложения. Недоступный SID (недоступен). Это разрешение безопасности можно изменить с помощью инструмента администрирования служб компонентов.
У кого-нибудь есть идея, что может быть причиной и решением для этого?