
이사하기 전에 카탈로그를 확인해 보니 모든 것이 들어 있었습니다. 그런 다음 다음 명령을 사용하여 C 드라이브(WSL 사용)의 디렉터리로 이동했습니다.
sudo mv c_dir/ mnt/c/Users/L570/Documents/to_be_compiled/
cd
에 들어가 보니 to_be_compiled
분명히 거기에 있었다. 그러나 그것은 비어 있습니다.
다른 질문에서 이 명령을 찾았
chown erebus /mnt/c/Users/L570/Documents/to_be_compiled/c_dir/
지만 그것도 아무 것도 바뀌지 않았습니다.
시도해 보았지만 ls -a
실제로 파일이 없습니다.
Q: 모든 파일을 잃어버렸나요? 아니면 권한 문제인가요?
답변1
현재 정보를 바탕으로 우리 모두는 이 사건에서 정확히 무슨 일이 일어났는지 혼란스러워하고 있다는 의견을 말하는 것이 안전하다고 생각합니다. 도움이 된다면 다음 시나리오를 사용하여 WSL의 Ubuntu에서 문제를 재현할 수 없습니다.
cd /
sudo mkdir c_dir
cd c_dir
sudo touch abc 1 2 3
cd /
sudo mv c_dir/ mnt/c/Users/ntd/Documents/to_be_compiled
디렉터리 이름 이 올바른 위치의 디렉터리 /c_dir
로 변경(이동)되었으며 모든 파일이 존재합니다.to_be_compiled
즉, 가장 좋은 방법은 /
사용하는 상대 형식보다는 정규화된 디렉터리 이름( 로 시작)을 사용하는 것입니다. 명령을 실행할 때 이러한 파일이 작업 디렉토리를 기반으로 다른 곳에 있는지 궁금합니다 mv
.
실제 소유권과 권한에 주의하세요.~ 할 것이다에서 자동 마운트 설정을 변경했는지 여부에 따라 다릅니다 /etc/wsl.conf
.
기본 WSL 설치를 사용하면 이러한 파일은 귀하가 소유하게 됩니다.사용자Windows 드라이브로 이동하면 777 권한이 부여됩니다.
광산은 약간 변경되었으며 다음과 같습니다 /etc/wsl.conf
.
[automount]
options = "metadata,umask=22,fmask=11"
이 작업이 완료되면 WSL은 실제 Linux 소유권 및 권한을 모방하려고 시도하므로 파일은 권한 644를 사용 하여 root
(이동되었으므로 ) 소유하게 됩니다.sudo