Чому PowerShell не зможе оновити власний каталог?


1

Чому PowerShell не матиме доступу до власної довідкової служби?

PS C:\WINDOWS\system32> Update-Help
Update-Help : Failed to update Help for the module(s) 'Microsoft.PowerShell.Operation.Validation' with UI culture(s) {en-US} : Access to the path 'C:\Program
Files\WindowsPowerShell\Modules\Microsoft.PowerShell.Operation.Validation\1.0.1\en-US' is denied.
At line:1 char:1
+ Update-Help
+ ~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Update-Help], Exception
    + FullyQualifiedErrorId : UnknownErrorId,Microsoft.PowerShell.Commands.UpdateHelpCommand

Це встановлена ​​Windows 10 PowerShell. Немає en-USкаталогу під

C:\Program Files\WindowsPowerShell\Modules\Microsoft.PowerShell.Operation.Validation\1.0.1\

Є кілька інших en-USкаталогів.

C:\Program Files\WindowsPowerShell>dir en-us /s /b /a:d
C:\Program Files\WindowsPowerShell\Modules\PackageManagement\1.0.0.1\en-US
C:\Program Files\WindowsPowerShell\Modules\Pester\3.3.5\en-US
C:\Program Files\WindowsPowerShell\Modules\Pester\3.4.0\en-US
C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\en-US
C:\Program Files\WindowsPowerShell\Modules\PSReadline\1.1\en-US
C:\Program Files\WindowsPowerShell\Modules\PSReadline\1.2\en-US

Оскільки процес за замовчуванням має найнижчі можливі дозволи, якщо вони не підвищені адміністратором
Ramhound

PowerShell був запущений із "Запустити як адміністратор".
запалили

Погляньте на дозволи в цільовій папці. Навіть адміністратори не можуть мати дозволу на файл / папку.
Twisty Impersonator

Доступ заборонено? Ви переконалися, що він правильно встановлений у вашому Шляху? Відкритий термінал типу Шлях. Або навіть наберіть Path> path.txt, щоб ви могли простіше читати його в блокноті. Переконайтесь, що шлях правильний. У мене були проблеми з моїми в минулому, це єдина причина, яку я згадую про це.
ejbytes

Також мій шлях до PowerShell: C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \; Ви кинули своє як самостійне встановлення чи встановлення? І на моєму ПК ця папка порожня: C: \ Program Files \ WindowsPowerShell \ Modules (на моєму повністю порожнє). Здається, я щось змінив у минулому, але так давно не пам’ятаю.
ejbytes

Відповіді:


0

Якщо PowerShell все-таки стикається з помилкою, забороненою в доступі, під час роботи в якості адміністратора, адміністратори не мають достатнього доступу до відповідної папки.

Відкрийте вікно властивостей у каталозі найнижчого рівня, який існує у вашому шляху. Перейдіть на вкладку Безпека та натисніть Додатково. Якщо все позначено сірим кольором, візьміть право власності, використовуючи посилання Змінити у верхній частині, а потім ОК у діалоговому вікні розширених налаштувань безпеки, а потім знову відкрийте його. Тепер ви зможете редагувати його список контролю доступу.

Правильні дозволи для 1.0.1:

  • Повний контроль над цією папкою та папками до TrustedInstaller
  • Усі основні дозволи, за винятком повного контролю в цій папці, лише до системи SYSTEM
  • Повний контроль над папками та файлами лише до SYSTEM
  • Попередні два знову, але для адміністраторів - це ключ
  • Читання та виконання , Список вмісту папок та Прочитати у цій папці, папки та файли для користувачів
  • Попередній ще раз, але для ВСІХ ПАКЕТІВ ЗА ВИМОГИ, а також ВСІХ ОБМЕЖЕНИХ ПАКЕТІВ ЗАЯВКИ
  • Повний контроль над Папками та файлами лише ТВОРЧОГО ВЛАСНИКА

Як тільки ви закінчите, це має виглядати так:

остаточні розширені налаштування безпеки

Як правило, якщо дозволи на предмет виглядають неправильно, спробуйте скопіювати їх із робочої машини.

Після цього підвищений PowerShell зможе створити відповідні файли та папки.


Велике спасибі, Бен Н. Створюється враження, що він працює зараз. Я досі не знаю, як машина потрапила в цей стан. Я лише запустив встановлення Microsoft та оновлення Windows для налаштування PowerShell.
запалили

0

Я зіткнувся з цим питанням. Для мене підпапка культури (en-US) не існувала. Я вручну створив під-папку en-US і скопіював усі папки та файл у папку en-US, що знаходились у папці 1.0.1 (деякі були заблоковані). Після цього оновлення-довідка спрацювало.

Здається, щось змінилося, щоб хотіти культури, але цей модуль не відповідав цьому стандарту. Дата файлів і папок у цьому модулі - 18.03.2017, а опція поставила питання 18.04.2017.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.