Я переношу файловую систему NetApp на NTFS. Он установлен как на Windows, так и на Linux. Мой сценарий проверки в Powershell просматривает файловую систему и выполняет различные проверки того, что источник и цель совпадают. Например, он проверяет временные метки и контрольные суммы.
Он также сравнивает ACL с помощью sddl
собственность get-acl
. Однако некоторые файлы на самом деле являются символическими ссылками Linux. В этом случае все работает, но get-acl
вызов вызывает ошибку
Get-Acl: попытка выполнить несанкционированную операцию.
В этом случае безопасность действительно связана с целью ссылки, поэтому мне не нужно это проверять. Однако я не могу понять, как пропустить проверку этих файлов, так как не могу понять, как определить, что это символические ссылки Linux.
Есть ли способ определить, что файл является символической ссылкой Linux, чтобы я мог пропустить get-acl
чек?
Я бы просто использовал try
и catch
. Попытайтесь выполнить свою работу с файлом, если это не удается, изящно переходите к следующему.