Windows 10(ビルド1803)をクリーンインストールしました。 MicrosoftストアからUbuntuをインストールし、Linuxサブシステムを有効にしました。私は過去にこれを何度か行ったことがありますが、次の問題は一度もありませんでした。c
ディレクトリは、シンボリックリンクのおかげですべて混乱しています。たとえば、dir
のcmd
とWSLのls
の出力を見てみましょう。
C:\Users\username>dir
Volume in drive C has no label.
Volume Serial Number is BC00-A6D5
Directory of C:\Users\username
05/25/2018 12:01 AM <DIR> .
05/25/2018 12:01 AM <DIR> ..
05/25/2018 12:01 AM <DIR> 3D Objects
05/25/2018 12:01 AM <DIR> Contacts
05/25/2018 01:19 AM <DIR> Desktop
05/25/2018 12:01 AM <DIR> Documents
05/25/2018 12:01 AM <DIR> Downloads
05/25/2018 12:01 AM <DIR> Favorites
05/25/2018 12:01 AM <DIR> Links
05/25/2018 12:01 AM <DIR> Music
05/25/2018 12:06 AM <DIR> OneDrive
05/25/2018 12:01 AM <DIR> Pictures
05/25/2018 12:01 AM <DIR> Saved Games
05/25/2018 12:01 AM <DIR> Searches
05/25/2018 12:01 AM <DIR> Videos
0 File(s) 0 bytes
15 Dir(s) 88,018,132,992 bytes free
name:/mnt/c/Users/username$ ls
ls: cannot read symbolic link 'Application Data': Permission denied
ls: cannot read symbolic link 'Cookies': Permission denied
ls: cannot read symbolic link 'Local Settings': Permission denied
ls: cannot read symbolic link 'My Documents': Permission denied
ls: cannot read symbolic link 'NetHood': Permission denied
ls: cannot read symbolic link 'PrintHood': Permission denied
ls: cannot read symbolic link 'Recent': Permission denied
ls: cannot read symbolic link 'SendTo': Permission denied
ls: cannot read symbolic link 'Start Menu': Permission denied
ls: cannot read symbolic link 'Templates': Permission denied
3D Objects NTUSER.DAT{c9e9d809-5fd7-11e8-a0cd-4e0bbe2b78ad}.TM.blf
AppData NTUSER.DAT{c9e9d809-5fd7-11e8-a0cd-4e0bbe2b78ad}.TMContainer00000000000000000001.regtrans-ms
Application Data NTUSER.DAT{c9e9d809-5fd7-11e8-a0cd-4e0bbe2b78ad}.TMContainer00000000000000000002.regtrans-ms
Contacts ntuser.dat.LOG1
Cookies ntuser.dat.LOG2
[...]
同じディレクトリを比較すると(左側がUbuntu、右側がcmd)、ls
が存在しないシンボリックリンクを一覧表示しようとしていることがわかります。私はこの問題を経験したことがなく、アクセス許可などを変更していないため、何が起こっているのかわかりません。誰かがこれを手伝ってくれる?
これはいくつかの有用な情報です:
マウントが与える
mount
rootfs on / type lxfs (rw,noatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,noatime)
none on /dev type tmpfs (rw,noatime,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,noatime,gid=5,mode=620)
none on /run type tmpfs (rw,nosuid,noexec,noatime,mode=755)
none on /run/lock type tmpfs (rw,nosuid,nodev,noexec,noatime)
none on /run/shm type tmpfs (rw,nosuid,nodev,noatime)
none on /run/user type tmpfs (rw,nosuid,nodev,noexec,noatime,mode=755)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noatime)
C: on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000)
そして、
id -u
1000
id -g
1000
私の/etc/wsl.conf
ファイルは最初は存在しなかったので、作成しました。しかし、mount
はc
が正しくマウントされていることを示しているため、これが問題を解決するための鍵ではないと思います。今はこれです
[automount]
enabled = true
私の質問の要約: cmdでsymlinks
を実行すると確認されたように、ディレクトリにdir
がないようです。しかし、Ubuntuコマンドラインにはシンボリックリンクが表示されます。何故ですか?また、許可が拒否されたため、(Sudo rm
を使用しても)それらを削除することはできません。これはちょっと迷惑です!
cmdで
dir
を実行して確認されたとおり。
これは何の種類も確認しませんでした。使用 /a
オプションをdir
コマンドに追加します。 Unix以外のLinux以外のオペレーティングシステムでdir
コマンドを使用する方法は、このWWWサイトの範囲を超えています。質問のこの基本的な前提が間違っていることを指摘した後、ここで停止します。
あなたが使用する場合、私はそれに気づきました:
ls --color=tty
/ mnt/cディレクトリに、次のエラーメッセージが表示されます。
ls: cannot read symbolic link 'Documents and Settings': Permission denied
ls: cannot access 'hiberfil.sys': Permission denied
ls: cannot access 'pagefile.sys': Permission denied
ls: cannot access 'swapfile.sys': Permission denied
ただし、単に/bin/ls
引数なしで、きれいなディレクトリリストを取得します。したがって、このコマンドがこれらのエラーメッセージをトリガーするディレクトリ内のファイルの種類を色付けしようとすることについて何かがあります。
Stderrを/ dev/nullにリダイレクトすると、エラーメッセージも抑制されます。
alias ls='ls --color=tty 2>/dev/null'
常に推奨されるわけではありませんが、ノイズをクリーンアップします。