Назад | Перейти на главную страницу

Общая установка Cygwin

Я пытаюсь настроить OpenSSH на нескольких компьютерах с Windows Server 2003 в автоматическом режиме. Моя цель - иметь возможность сделать это с помощью одной версии Cygwin, установленной на сетевом диске, вместо того, чтобы вручную устанавливать ее на каждой машине.

Я могу установить cygwin нормально, но начинаю сталкиваться с проблемами, когда пытаюсь запустить ssh-host-config.

$ ssh-host-config
bash: /usr/bin/ssh-host-config: Permission denied 

Хорошо, ничего страшного. Я chmod 555 все в / usr / bin.

$ ssh-host-config
/usr/share/csih/cygwin-service-installation-helper.sh: line 689: /usr/bin/awk: cannot execute binary file

Вот где я застреваю. Бег

petters@BTSOTTSTBAL507 /usr/bin
$ awk
bash: /usr/bin/awk: cannot execute binary file

Вот содержимое awk:

!<symlink>gawk.exe

В качестве примечания, я могу нормально запустить gawk.exe и попытался установить Cygwin с установленной переменной среды CYGWIN = winsymlinks.

Я также заметил следующее -

petters@BTSOTTSTBAL507 /usr/bin
$ ls -l
total 366592    
-rwxr-xr-x 1 ???????? ????????   54798 Feb  4 19:02 [.exe
-rwxr-xr-x 1 ???????? ????????   23566 May 18  2010 addftinfo.exe
-rwxr-xr-x 1 ???????? ????????  165806 May 18  2010 afmtodit
-rwxr-xr-x 1 ???????? ????????    1786 May 17  2010 apropos
-rwxr-xr-x 1 ???????? ????????   47118 Feb  4 19:01 arch.exe
-rwxr-xr-x 1 ???????? ????????    8206 Apr 29 00:43 ascii.exe

Другими словами, данные о собственности испорчены.

У меня сложилось впечатление, что cygwin 1.7.x был переносимым, но, может быть, нет? Любая помощь приветствуется!

Вы столкнулись с двумя проблемами.

Прежде всего, это разница между posix-y взглядом Cygwin на разрешения и владение и Windows. Ты хочешь прочитать Использование безопасности Windows в Cygwin. В ???????? отображается, потому что файлы принадлежат пользователю, который не определен на локальном компьютере. Если вы находитесь в домене, вы, вероятно, можете запустить mkpasswd и mkgroup и используя вывод для создания соответствующих /etc/passwd и /etc/groups. Тем не менее, они будут включать только учетные записи для конкретных компьютеров хоста, на котором они были созданы.

Что хорошо подходит ко второму вопросу:

Cygwin сохраняет большую часть своих настроек конфигурации в или под /etc. Так делиться /etc через несколько хостов очень сложно. Точно так же большинство процессов Cygwin предполагают /tmp и /var также зависят от машины.

Вы мощь иметь возможность заставить это работать, создавая локальные каталоги на каждой машине, например: c:\cygwin\etc, c:\cygwin\tmp, и c:\cygwin\var. Вам нужно будет заполнить etc и var ожидаемыми файлами и каталогами. Затем вам нужно создать файл / etc / fstab, который объединит все это в единую файловую систему. Ты хочешь прочитать Отображение имен путей подробнее об этом.

Также имейте в виду, что каждый раз, когда ваш сетевой диск недоступен, любые запущенные процессы Cygwin могут зависать, давать сбой или просто вести себя странно.