Jeśli utworzysz plik w bash (dotknij /root/foo.txt), który pojawi się w ukrytych katalogach podczas AppData\Local\Lxss\
modyfikacji, nie zmienisz go w bash. Gorzej, jeśli zmienisz go ponownie w bash plik, który zmieniłeś przez explorer, zostanie zablokowany!
Czy jest jakiś prawdziwy punkt montowania C:\
?
Gdzie ukrywa się prawdziwy obraz? (jak w rzeczywistości system plików zapisuje plik obrazu w rzeczywistości?)
0:14:29 w tym https://channel9.msdn.com/Events/Build/2016/C906 wydaje się twierdzić, że będziesz mieć pełny dostęp z eksploratora. 0:16:30 pokazują, AppData\Local\Lxss\
ale nie wspominają, że twoje pliki nie będą synchronizowane tak, jak to opisałem.
cosmicdan
zdaje się mówić tylko to, co zrobiłem pod koniec komentarzy. Mac wydaje się teraz jeszcze ładniejszy.Odpowiedzi:
Nowe pliki tworzone za pomocą Eksploratora Windows prawdopodobnie nie pojawiają się w bash, ponieważ brakuje im specjalnych atrybutów LXSS NTFS.
Kiedy LXSS tworzy pliki w katalogu głównym LXSS, dołącza do nich dodatkowe informacje za pośrednictwem atrybutów NTFS, aby przechowywać rzeczy, których nie mogą reprezentować standardowe atrybuty NTFS, takie jak uprawnienia do plików w systemie Linux. Jeśli ich brakuje, pliki się nie wyświetlają.
Jest to obsługiwane przez fakt, że jeśli utworzysz plik bash, a następnie utworzysz jego kopię za pomocą Eksploratora Windows, pojawi się on w bash. Jest to prawdopodobnie spowodowane tym, że wszystkie specjalne atrybuty LXSS zostały zduplikowane z plikiem.
Warstwa systemu plików LXSS również wydaje się buforować system plików, więc wpisy katalogu w bash nie będą odzwierciedlały faktycznego stanu systemu plików, jeśli pliki zostaną dodane lub usunięte, dopóki wszystkie terminale bash nie zostaną zatrzymane (co kończy sesję LXSS w usłudze LXSS i stąd czyści pamięć podręczną).
źródło
Ok, wygląda na to, że
AppData\Local\Lxss\
można modyfikować i zsynchronizować ponownie z sesją bash Ubuntu.Musisz całkowicie zamknąć Bash. I nie możesz tworzyć nowych plików.
Dziwne, jak Microsoft twierdzi, że nie możesz.
Jednak poza denerwowaniem jest to wciąż mało przydatne, ponieważ tworzenie nowych plików nie działa.
Nie wiem, czy sesja bash umieszcza różne rzeczy w pamięci RAM, czy co, ale Microsoft może sprawić, że tak się stanie, to się pojawi. Jeśli tak zrobią.
źródło
Dla mnie działa kopiowanie za pomocą bash zamiast Eksploratora.
C-dysk jest w / mnt / c tak, aby skopiować folder C: \ tmp \ test1 do / tmp / w katalogu domowym bash zrobić:
cp -r /mnt/c/tmp/test1 ~/tmp
.źródło
Myślę, że znajdziesz to ... niezwykle pomocne. Jest tam sporo użytecznych informacji, ale można je podsumować, ponieważ mają zastosowanie tutaj w jednej sekcji:
W artykule omówiono także specyfikę systemu plików i rozszerzone atrybuty. Podsumowując, modyfikowanie plików WSL z systemu Windows nie jest żadnym problemem.
źródło
Dopóki się tego nie rozwiążą, zainstalowałem cygwin sshd dla widoczności w natywnym systemie plików NTFS i uruchomiłem s Ubd Ubuntu dla widoczności plików linuksowych lsxx. użyj apt-get, aby zainstalować sshfs i win-sshfs, aby wykonać montowania w każdy sposób. Jest to zwykły hack, ale na razie działa dla mnie.
Jeśli nie chcesz zadzierać z cygwin sshd, możesz użyć cygwin ssh do scpowania plików tam iz powrotem.
Korzystanie z cygwin sshd pomaga obejść problemy z uprawnieniami do plików, używając prawdziwego konta administratora w pliku .ssh / config. Miałem dziwne uprawnienia dostępu przez interfejs DevFS / NTFS.
źródło