2015-08-03 3 views
0

Итак, у меня есть файлA.py на моей (Win7) системе. Я могу открыть его и отредактировать (с gVim) просто отлично.Не удается прочитать файлы, созданные из оболочки cygwin

В bash, я бегу cp fileA.py fileB.py.

На данный момент я не могу открыть fileB.py с помощью gVim и вместо этого получить ошибку [Permission Denied].

Хотя я не могу открыть его в gVim, я все еще могу cat fileB.py, чтобы прочитать его содержимое.

Затем я запускаю stat -c "%a %n" *.py, и я вижу, что и filesA.py, и fileB.py имеют одинаковые (bash) разрешения. Но можно открыть, а другой - нет. 70 fileA.py 70 fileB.py

Для того, чтобы двигаться вперед, я могу chmod 777 fileB.py. Это позволит мне отредактировать его в gVim. Конечно, мои права теперь установлены на 777, что не идеально.

Я получаю эту проблему только от файлов, созданных из моей оболочки cygwin (bash). Если я перейду в Проводник Windows и скопирую файлы, у меня таких проблем нет.

+0

Звучит как вопрос о разрешении/собственности. Вы пытались восстановить свою/etc/group и/etc/passwd? – AlG

+0

Нет. Как бы я это сделал? – PortMan

ответ

0

Возможно, ваши разрешения Cygwin не соответствуют вашим разрешениям Windows. Как и в системах * nix, вы должны быть уверены, что ваши /etc/passwd и /etc/group соответствуют вашим учетным данным Windows. Иногда вам нужно перестроить один или оба файла.

На базовом уровне это перестраивает файлы, но он не может делать все, что вам нужно:

mkpasswd -l [-d] > /etc/passwd 
mkgroup -l [-d] > /etc/group 

-l работы с локальной системой и -d вытягивает информацию о домене. Вы можете вытащить много счетов, если находитесь в домене. Лучше всего прочитать документацию по cygwin для mkpasswd и mkgroup, чтобы сузить область охвата.

После регенерации вам может потребоваться настроить право собственности на файлы Cygwin.

Смежные вопросы