Чому установки msi використовують повільніші накопичувачі над швидшими у Windows 7?


7

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

Налаштування, в якому я останній раз бачив це, було запущено Windows 7 із такими накопичувачами:
Sata:
240 Гб SSD NTFS ~ 515 МБ / с Привід операційної системи
1 ТБ NTFS ~ 110 МБ / с Брандмауер
:
4 ТБ ExFAT ~ 80 МБ / с

Я думаю, що Windows обирає найшвидший диск із наявним місцем для тимчасових файлів. Але він замість цього вибере зовнішній привід з найменшою швидкістю передачі. Я також міг зрозуміти вибір 1 ТБ для того, щоб не бути ssd, намагаючись зберегти довговічність ємності запису на ssd. Чому це відбувається? Чи є спосіб змусити ці установки використовувати накопичувач ОС або певний привід?


2
Windows використовує ваш системний диск, якщо ви не змінюєте розташування тимчасових файлів.
Тамара Війсман

4
Я думаю, що Windows вибирає диск з більш вільним простором незалежно від будь-якого іншого. Чи можете ви підтвердити, що в накопичувачі 1 ТБ є більше вільного місця?
fmanco

@TomWijsman: Тимчасові місця розташування файлів не змінені. У цьому випадку він працював над оновленнями Windows під час нового встановлення.
Джошуа C

@criziot: Це правильно, зовнішній має найбільше місце.
Джошуа C

Відповіді:


11

Коли MSI виконується, він бачить, чи змінна ROOTDRIVE визначена внутрішньо в MSI. Якщо він не визначений в msi для звичайної установки, він встановить його на локальний диск з найбільшим вільним простором (і зазвичай більші диски повільніші).

Якщо ви виконуєте інсталяцію адміністратора (Адміністратор зазвичай використовується лише для встановлення за допомогою групової політики), він додає ще один крок до описаного раніше процесу. Він використовуватиме перший доступний мережевий накопичувач, який записується замість найбільшого локального накопичувача спочатку, тоді, якщо його немає, він спробує використати найбільший локальний диск.

Ви можете встановити параметр ROOTDRIVE, запустивши msi за допомогою наступної команди

msiexec /i package.msi ROOTDRIVE="C:\"

Однак якщо всередині msi автор msi встановив шлях ROOTDRIVE в сценарії встановлення, то зміна змінить налаштування, встановлене в командному рядку.


If ROOTDRIVE is not defined it uses the first network drive it can find that is writable.Джерело? Дуже дивно використовувати мережу для встановлення ...
Тамара Війсман

1
@TomWijsman - Посилання, яке він надав, є достатньо доказовим. Я процитую це для вас "Під час адміністративної установки інсталятор встановлює ROOTDRIVE на перший підключений мережевий диск, на який він знаходить, що можна записати. Якщо це не адміністративна установка, або якщо інсталятор не може знайти мережевих накопичувачів, він встановлює ROOTDRIVE на локальний диск, який може бути записаний на найбільш вільне місце. " Я чекаю більше від когось із твоєю репутацією.
Рамхаунд

@TomWijsman Причиною цього є адміністративні встановлення, які ви зазвичай все-таки встановлюєте масово через мережу, і ви точно не знали б, що є можливість витягти тимчасові файли на комп'ютері призначення. Я вважаю, що це логіка цієї політики. Я сумніваюся, що Джошауа робить адміністративну установку, я переформулював свою відповідь, щоб зробити це більш зрозумілим.
Скотт Чемберлен

@Ramhound: Я не очікував нічого іншого від когось із твоїм іменем / віком. Я просто шукаю пояснення / міркування для такого вибору, тут немає нічого поганого. Перестаньте вибирати молодших людей, дякую ...
Тамара Війсман

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