Что копировать при перемещении cygwin с одной машины на другую?
Я переустанавливаю все на моей машине, и среди них Cygwin. Я пытаюсь избежать переустановки, отчасти потому, что я даже не знаю, что я установил. Могу ли я просто переместить каталог Cygwin с одного компьютера на другой и ожидать, что все будет работать, или есть какие-то другие важные параметры, которые мне также необходимо переместить?
Насколько я видел, это довольно автономно, но никто не знает.
Ответы
Ответ 1
Оп! Действуй. Вы не столкнетесь с какими-либо проблемами.
Вы можете просто скопировать весь каталог cygwin на новую машину, открыть оболочку cygwin и все (пока вы только вызываете внутренние программы cygwin и все, что находится в пути) будет работать так, как если бы вы были работая на вашей старой машине.
Единственное, что вы потеряете, это каталог, в котором хранятся пакеты "уже загруженные и сжатые" для возможной переустановки. К счастью, этот каталог не является обязательным, поэтому нет проблем для перехода на другую платформу. Вы также можете скопировать этот каталог, но, скорее всего, все пакеты, которые у вас устарели, в любом случае, и запуск setup.exe все равно принесут новые версии...
Btw - так как кто-то сказал в точности противоположный реальный опыт: я часто использую эту функцию с успехом. Я скопировал свой каталог cygwin на USB-накопители и использовал его на компьютерах друзей. Я также скопировал его на ноутбук моего жениха, когда мы отправляемся на каникулы и берем с собой ноутбук.
Он всегда работал без любых проблем....
Ответ 2
Нет, вам нужно переустановить его из установщика cygwin, извините!
Самое главное, что вы захотите скопировать все из своего домашнего каталога (по умолчанию это c:/cygwin/home/), особенно что-либо с "." перед именем файла.
Что касается индивидуальных настроек приложения и т.д., вы можете их потерять, но если вы переустановите, пока у вас все еще есть доступ к своей старой машине, вы, вероятно, сможете получить до 90% своей предыдущей установки без особых проблем.
Ответ 3
Мой опыт копирования с одного cygwin64 (я не думаю, что есть разница) с другой машиной, что все символические ссылки были раздавлены:
В качестве примера:
Что раньше /usr/bin/cc -> /usr/bin/gcc.exe
(или что-то в этом роде)
После того, как copy/usr/bin/cc стал текстовым файлом, содержащим строку:
!<symlink>/usr/bin/gcc.exe
Мой метод копирования был просто cp -r /cygwin/c/cygwin64 <dest>
Мой dest был FAT32 FS, но я не думаю, что это имело какое-либо отношение к нему.
Были также символы 0x00 и 0xFF, посыпанные среди многих из этих "текстовых" файлов, так что они оказались бинарными.
Ответ 4
Краткий ответ: нет, вы не можете скопировать всю папку Cygwin. Вы просто копируете нужные файлы конфигурации (bash, vim и т.д.).
Длинный ответ: если вы скопируете всю папку Cygwin, в некоторых случаях она может работать, а в других - нет.
Причина в том, что вы потеряете file mode
файлов linux при копировании файлов в Windows. И это вызовет много неприятностей. Однако у вас могут не возникнуть проблемы, когда вы используете Cygwin, как обычную программу Windows (что означает, что вам не важен файловый режим и все, что с этим связано), и запускаете его как администратор Windows (что не требуется, если Cygwin установлен как обычно).
Кстати: вы можете экспортировать пакеты, которые вы установили с помощью cygcheck.exe -c
и установить их на новый Cygwin. Вы также можете установить/обновить пакеты Cygwin с помощью Cygwin setup-x86_64.exe
в командной строке, например:
setup-x86_64.exe -q -P package1,package2,package3