Я установил Chocolatey, но я хотел бы, чтобы он устанавливал программы на другой диск, а не на C. C - это только небольшой SSD, но у меня есть другие диски, на которые я обычно устанавливаю программы.
Есть идеи?
Я установил Chocolatey, но я хотел бы, чтобы он устанавливал программы на другой диск, а не на C. C - это только небольшой SSD, но у меня есть другие диски, на которые я обычно устанавливаю программы.
Есть идеи?
Для каждого приложения вам нужно знать ключ командной строки, используемый во время установки, чтобы изменить каталог установки и передать его с помощью --installArgs
. См. Команду установки (установка choco) и Переопределение каталога установки по умолчанию или другие расширенные концепции установки.
Другой способ обеспечить другой диск - это переместить ваши Program Files
на другой диск. Вы можете посмотреть это; это можно сделать.
Мы добавили вездесущий переключатель установки! Если вам нужно переопределить каталог установки и вы не хотите выполнять всю работу, чтобы определить, что это за переключатель, у вас есть возможность использовать один переключатель с опцией Chocolatey - Ubiquitous Install Directory (только для лицензионных выпусков).
ПРИМЕЧАНИЕ. Нам нужно как-то обеспечить долговечность сообщества Шоколад, то есть иметь модель FOSSium (freemium). Профессиональная версия стоит 8 долларов в месяц (96 долларов в год), она обходится вам дешевле, чем раз в месяц питаться вне дома, предоставляет вам отличные возможности и гарантирует, что инфраструктура сообщества продолжает обеспечивать отличное обслуживание и совершенствование. Пока вы пользуетесь бесплатным сервисом (репозиторий сообщества, он же https://chocolatey.org/packages), он не может быть бесплатным. Таким образом, мы выбираем определенные премиальные функции, чтобы войти в эти версии, чтобы обеспечить достаточную стоимость, чтобы стоить цену.
Похоже, что Chocolatey теперь создал повселокальный переключатель:
Опция Ubiquitous Install Directory (только для лицензионных выпусков)
У меня не было возможности использовать это лично, но, похоже, это сработает. Если небольшое руководство по применению.
Я нашел еще один простой трюк: установите choco как обычно, и сразу после установки переместите каталог c:\programdata\chocolatey
в любом месте, а затем обновите переменную среды ChocolateyInstall
, а также обновите переменную среды PATH
, чтобы choco\bin вложенная папка найдена после ее перемещения.
Конечно, я не знаю, хорошо ли это с любыми другими пакетами, но я просто установил 7zip и докер-машину без проблем, поэтому, похоже, работает.
Вы можете переместить каталог Chocolatey в другое место, а затем создать жесткую символическую ссылку из расположения по умолчанию - см . Полное руководство по созданию символических ссылок (символические ссылки AKA) в Windows.
Т.е. mklink/JC: /ProgramData/chocolatey D: /my/new/location
Но не забудьте создать обычные резервные копии, точки восстановления и т.д., Прежде чем делать что-либо.
Для пакета MSI (который чаще всего встречается в Windows) используйте:
choco install package-name --% -ia INSTALLDIR="c:\intall\path"
Чтобы увидеть, является ли пакет MSI, на странице пакета Chocolatey в разделе "Файлы" найдите chocolateyInstall.ps1
а затем найдите:
fileType = 'msi'
Это было проверено с клубничным Perl.
Конечно, вы всегда можете использовать платный шоколад и воспользоваться преимуществом повселокального установки.
Добавляя к ответу @antonio, я хотел бы поделиться своими выводами с другими случаями для установки каталога установки.
Для fileType = 'exe'
кажется, есть два типа инсталляторов, которые вы можете отличить по заданным silentArgs
(также в chocolateyInstall.ps1
).
До сих пор я находил /S
как silentArgs и некоторые более длинные вещи, начинающиеся с /VERYSILENT/NORESTART
(который, похоже, является установщиком InnoSetup).
/S
: После длительного тестирования я обнаружил, что это работает (7zip в качестве примера): choco install 7zip.install -y -ia "\/D\=D:\Destination\\"
/VERYSILENT/NORESTART...
: в соответствии с документами CLI установщика InnoSetup переключатель должен быть /DIR=<path>
хотя я не уверен, как его применить. Многие установщики также не используют ничего из вышеперечисленного. VirtualBox, например, ожидает определенных параметров установки, пакет jdk8 имеет параметры для установки каталога таким образом и т.д. Если вы не можете сопоставить silentArgs
и fileType
с вышеприведенным, вам придется провести небольшое исследование.
Для VirtualBox я запустил установщик с /?
и получил всплывающее окно, объясняющее параметры, которые могут быть добавлены.
Для Mozilla Firefox я нашел сообщение сообщества, в котором объяснялось, какие флаги и переключатели были разрешены для установщика.