Mengapa, ketika saya membuat file dari dalam Windows misalnya, saya tidak dapat melihatnya di bawah sub sistem Linux di Windows 10 (bash.exe)
Tangkapan layar harus menjelaskan.
Folder: OMG dibuat dari dalam Windows Explorer. Folder OMGBash dibuat dari dengan sub sistem Linux bash.exe
Ketika folder ATAU file dibuat di luar bash.exe, saya tidak akan pernah melihatnya, terlepas dari izin dan kepemilikan.
Untuk menunjukkan informasi yang saya harus menggunakan Cygwin untuk menunjukkan izin file, saya juga telah mengubah izin untuk melihat apakah folder tersebut akan muncul. (Dua jendela perintah di bagian bawah)
Tangkapan layar yang memperlihatkan izin folder, bash.exe, dan Cygwin:
Saya mencoba untuk memindahkan semua skrip Cygwin saya ke subsistem Linux, tetapi saya tidak suka membuat ulang setiap file, kemudian harus menyalin dan melewati menggunakan bash, kemudian memformat ulang kemudian menggunakan Dos2unix (sangat panjang lebar).
Temukan ini di GitHub untuk subsistem Linux:
menyalin langsung ke subsistem Linux dari Windows tidak didukung, menurut diskusi pada tiket lainnya. Ada direktori di bawah AppData di suatu tempat (saya lupa di mana) yang tampaknya berisi file-file untuk sistem file WSL. Tetapi jika Anda meletakkan file baru di sana, atau memodifikasi file yang ada di sana, perubahan Anda tidak tercermin dengan benar di dalam WSL.
Dugaan terbaik saya adalah bahwa Linux perlu menyimpan metadata yang berbeda (dan lebih banyak informasi caching, dll, karena model disk-buffering juga berbeda) tentang file-file tersebut daripada Windows, dan bahwa ini saat ini diimplementasikan dengan menyimpan salinan utama struktur. dari sistem file Linux dalam suatu database, dan hanya menggunakan sistem file Windows sebagai BLOB-store yang nyaman untuk database itu.
Jika Anda benar-benar perlu melakukan ini, solusinya adalah dengan menulis skrip drag'n'drop .bat atau semacam itu yang melakukan bash.exe -c "mv% 1 / home / $ USER /". (Anda harus melakukan beberapa pekerjaan pintar dengan sed dan tr, mungkin, untuk menerjemahkan% 1 ke jalur WSL yang valid.)
Atau - dapatkah Anda meletakkan file Anda di direktori Windows dan, di dalam WSL, lakukan "cd ~; ln -s / mnt / c / path / ke / my / files" untuk membuatnya tampak berada di homedir WSL Anda?
cp -r --no-preserve=all
Untuk membatalkan izin sebelumnya. Namun, jika Anda ingin membuat perubahan besar, Anda tidak dapat menggunakan aplikasi windows untuk mengedit file di LinuxSubSystem, Anda harus mengeditnya, di Direktori windows Anda dan kemudian salin. Sekarang saya tahu ini, ini bisa diterapkan, TETAPI saya mendapat kesan bahwa Sistem Sub Linux lebih asli / terintegrasi ke dalam windows daripada OS Terisolasi
%LocalAppData%\Packages\<some-long-name-of-distro>\LocalState\rootfs
.