Как иметь только папку Windows на 20 ГБ SSD?

1511
NatoBoram

Я знаю, что установить Linux на несколько дисков очень просто, но в Windows я никогда раньше этого не видел. Я хочу загрузиться с 20 ГБ SSD, а все остальное - на 1 ТБ HDD. Это будет выглядеть так:

C:\ Windows  D:\ Program Files Program Files (x86) ProgramData Users 

Альтернативой может быть использование точки монтирования для всего, кроме папки Windows, но я понятия не имею, возможно ли это. Это было бы мое предпочтительное решение, так как оно наиболее близко к Linux.

C:\ [SSD] Windows Program Files [MOUNT POINT HDD] Program Files (x86) [MOUNT POINT HDD] ProgramData [MOUNT POINT HDD] Users [MOUNT POINT HDD] 

Вопрос в том, как?

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

Простое решение для Linux, которому я завидую: как загружаться с SSD, но иметь установки и домашнюю папку на HDD

Связанная статья о реестре: https://support.microsoft.com/en-ca/kb/933700

Связанная статья о соединении: https://en.wikipedia.org/wiki/NTFS_junction_point

Связанная статья о точках монтирования: https://support.microsoft.com/en-ca/kb/280297

3

2 ответа на вопрос

1
Anand S

Следуйте следующим инструкциям, чтобы перенести соответствующие папки на другой диск:

Предупреждение: прочтите эту статью, чтобы понять, почему перемещение пользовательских профилей может представлять угрозу, если вы планируете обновить свою ОС ... Более подробная информация ниже:

  • Папка «Пользователи» :

На этом этапе важны две вещи: 1) вы должны использовать правильные буквы дисков и 2) вы должны использовать точные параметры для Robocopy. Если вы испортите 1), вы не сможете войти в систему, и если вы испортите 2), то вы сможете войти, но у вас будут другие проблемы.

Выполните следующие действия, чтобы скопировать C: \ Users в D: \ Users. Опять же, имейте в виду, что буквы дисков переназначаются:

X:> D:
D:> robocopy / copyall / mir / xj Users E: \ Users

Параметр / mir удалит все файлы в целевой папке, если они не существуют в источнике. Следовательно, если у вас уже есть D: \ Users и вы хотите сохранить файлы, используйте параметр / E:

D:> robocopy / copyall / E / xj Users E: \ Users

Опять же, здесь D: есть C: в действительности, а E: есть D: в действительности. Среди опций robocopy, если вы пропустите / copyall, то он не будет копировать информацию о разрешениях, и после входа ваши приложения Windwos 8 будут аварийно завершать работу при запуске. Убедитесь, что вы получили 0 для ошибочного столбца в выводе результатов robocopy.

Убедившись, что ошибок не было, выполните следующие действия, чтобы удалить исходный каталог C: \ Users:

D:> Пользователи rmdir / S / Q

Создание символической ссылки
Это последний шаг, создание символической ссылки в C: \ Users, которая указывает на D: \ Users. Здесь снова появляется буква диска. Так как символическая ссылка будет использоваться в реальном сеансе Windows, вы должны использовать фактическую букву диска D:в качестве цели. Таким образом, вы заканчиваете тем, что делаете символическую ссылку в D: \ Users (буква командной строки - C: в действительности), целью которой также является D: \ Users. Так как вы уже находитесь в D:, используйте следующее, чтобы не вводить в заблуждение:

D:> mklink / J Users D: \ Users

Соединение создано для пользователей << === >> D: \ Users
Я не пробовал другие варианты, но, если вы не используете опцию / J (Junction), вам придется взломать реестр.

Вы можете проверить ссылку с помощью команды dir. Ты увидишь:

<JUNCTION> Users [D:\Users]

Во всяком случае, это все. Когда вы выходите и перезагружаетесь (выберите «Продолжить для Windows 8»), вы сможете войти в систему, а когда вы откроете проводник, вы увидите, что C: \ Users - это символическая ссылка, которая указывает на D: \ Users .:

D:> выход

  • 'Программные файлы :

Как переместить папку Program Files Даже если у вас твердотельный накопитель емкостью 128 ГБ, вы скоро наполните его приложениями. К этому моменту уже слишком поздно устанавливать их на другой жесткий диск, если только вы не хотите проходить, удалять и переустанавливать программы по отдельности. Можно переместить папку C: \ Program Files на другой жесткий диск, но мы не рекомендуем этого, поскольку папка жестко подключена к Windows, и будут проблемы, если она не там, где Windows ожидает ее. Плюс, это очень глубокий процесс, чтобы сделать это правильно, используя символические ссылки. Для программ, которые уже установлены на вашем диске C :, возможно переместить их подпапки, которые хранятся в C: \ Program Files. Дон» не стоит забывать, что если вы перенесете программы с SSD на жесткий диск, то при запуске этой программы вы потеряете преимущество в скорости SSD. Храните наиболее часто используемое программное обеспечение на SSD, чтобы оно загружалось и работало быстро, когда вам это нужно.

Вы не можете просто перетащить папки программ на другой диск. Что вы должны сделать, это создать то, что называется символической ссылкой. Это немного похоже на ярлыки программ, папок и веб-сайтов, которые засоряют рабочий стол, но они более мощные. Когда Windows или любая другая программа пытается получить доступ к папке, символическая ссылка перенаправляет ее в новое место. Он полностью прозрачен для программного обеспечения и Windows.
Символьные ссылки могут быть созданы вручную, и есть инструмент командной строки под названием mklink. Опытные пользователи могут открыть окно командной строки и ввести mklink, чтобы увидеть параметры. Нет необходимости прибегать к сложным командам. хотя и есть простая и бесплатная утилита, которая сделает все за вас. Перейдите на mobasoftware.com и загрузите SymMover.

  • «ProgramData» :

Путь по умолчанию - C: \ ProgramData. Хранится здесь:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\ProgramData

ОПЦИИ:

1) Вы можете изменить путь к ProgramData по умолчанию, чтобы использовать его как альтернативный диск. Несмотря на это, все новые пользователи, которые будут созданы, будут использовать новый путь программных данных. Таким образом, вы можете получить две папки ProgramData в конце данных.

2) В качестве альтернативы вы можете использовать «точки соединения NTFS». Не многие знают об этом, но точка соединения - это способ заставить все программы, которые пишут по пути (c: \ programdata), перенаправляться в (D: \ ProgramData). Именно так старые программы, разработанные для XP, могут легко работать с новыми папками Vista и Windows 7 (документы и настройки заменены пользователями).

Таким образом, вы можете создать точку соединения специально для каталога tmp, который создается GR. mkdir D: \ ProgramData robocopy / XJ / MIR "C: \ ProgramData" "D: \ ProgramData" mklink / J "C: \ ProgramData" "D: \ ProgramData"

Недостатком является то, что обновление Windows не работает с данными программы на отдельном диске. http://support.microsoft.com/kb/949977

Внимание: Microsoft не рекомендует перемещать системные каталоги, так как это помешает любым обновлениям Windows, исправлениям, обновлениям работать должным образом (это приведет к сбою!)

Пожалуйста, действуйте с осторожностью!

Пожалуйста, процитируйте основные части ответа по ссылочной ссылке (ссылкам), так как ответ может стать недействительным, если связанные страницы изменятся. DavidPostill 8 лет назад 0
ОК, я сделаю это! Спасибо! Anand S 8 лет назад 0
Я в порядке с перемещением каждой отдельной папки в папке / users /. Я пытался отредактировать реестр, чтобы установить новые ProgramData и Program Files в D: \, но некоторые программы по-прежнему используют диск C: \, как программы Adobe. Человек, которому я помогаю, нуждается в Creative Cloud, но если реестр отредактирован, он не работает вообще. Не редактируя реестр, я могу сказать Adobe CC установить его в D: \, но он все равно загружает установщик в C: \, и установка завершается неудачно из-за недостатка места. После использования всех этих опций (реестр и перемещение пользовательских файлов) мне все еще не достаточно NatoBoram 8 лет назад 0
-1
PunctualEmoticon

Вы должны иметь возможность установить Windows обычным способом * без каких-либо дополнительных шагов. Windows 7, 8 и 10 требуют 16 ГБ для 32-разрядной установки или 20 ГБ для 64-разрядной установки, что просто входит в ваши требования. Вот пост в блоге Windows, в котором немного объясняется, как работает автоматическое сжатие в Windows 10, если вам интересно.

Windows 10, вероятно, ваш лучший вариант, поскольку он позволяет вам выбрать другой диск для размещения пользовательских файлов и папок (это простая опция в приложении «Настройки»). Чтобы установить программы на жесткий диск, просто создайте папки Program Files и Program Files (x86) вручную и сообщите программам, которые нужно установить на них. Единственные инсталляторы, которые я когда-либо видел, которые не позволят вам выбрать, - это программы, которые не работают на другом диске, но это довольно редко.

Если вы хотите использовать более старую версию Windows, просто создайте свои собственные пользовательские папки на жестком диске и поместите их туда, а не в пользовательские папки диска C: \. Попытка переместить официальные пользовательские папки C: \ drive, как указал Ананд, может что-то сломать, поэтому просто игнорируйте их.

* Под «обычным способом» я имею в виду использование / создание загрузочного DVD или флешки и установка оттуда. Вы не сможете выполнить обновление, так как не хватит места для старых и новых операционных систем.