Mv

嘗試“mv”目錄時權限被拒絕

  • October 4, 2017

情況:

  • 我正在為 Windows(10)使用帶有 Linux 子系統的 Bash ;我以root身份登錄。
  • 我目前目錄中的所有文件夾和文件都有rwxrwxrwx,後代文件和文件夾也是如此。
  • 我的目前目錄和後代中都沒有系統文件。
  • 沒有文件夾與git同步。

問題:

  • 我無法更改某個特定目錄的名稱。但是,我可以對每個其他目錄或文件執行此操作 - 無論是在目前目錄中,還是在相關的無法mv訪問的目錄中。

我可以將整個目錄複製到另一個目錄,然後隨意更改其名稱,或者我可以將其內容複製到具有所需名稱的文件夾中,這些解決方案是可以接受的,但使用 justmv會更容易。為了知識起見——作為一個bashLinux初學者——我真的很想了解這個問題。


根據要求提供附加資訊

root@MARVIN:/mnt/h/testing# mv test1.pl otherName
mv:無法將“test1.pl”移動到“otherName”:權限被拒絕
root@MARVIN:/mnt/h/testing# lsattr test1.pl
lsattr:在讀取 test1.pl/css 上的標誌時,設備的 ioctl 不合適
lsattr:讀取 test1.pl/fonts 上的標誌時,設備的 ioctl 不合適
lsattr:讀取 test1.pl/index.html 上的標誌時,設備的 ioctl 不合適
lsattr:讀取 test1.pl/index2.html 上的標誌時,設備的 ioctl 不合適
lsattr:在讀取 test1.pl/index3.html 上的標誌時,設備的 ioctl 不合適
lsattr:在讀取 test1.pl/index4.html 上的標誌時,設備的 ioctl 不合適
lsattr:讀取 test1.pl/index5.html 上的標誌時,設備的 ioctl 不合適
lsattr:在讀取 test1.pl/js 上的標誌時,設備的 ioctl 不合適
lsattr:讀取 test1.pl/notes.txt 上的標誌時,設備的 ioctl 不合適

鑑於我在分區目錄上執行的各種操作,我猜它不是只讀的,而是為了記錄:

root@MARVIN:/mnt/h/testing# mount
rootfs on / type rootfs (rw,relatime)
/sys 上的 sysfs 類型 sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
/dev/pts 上的 devpts 類型 devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=204320k,mode=755)
/run/lock 類型 tmpfs 上沒有 (rw,nosuid,nodev,noexec,relatime,size=5120k)
/run/shm 類型 tmpfs 上沒有(rw、nosuid、nodev、relatime)
在/執行/使用者類型 tmpfs 上沒有(rw,nosuid,nodev,noexec,relatime,size=102400k,mode=755)

解決方案 該目錄實際上被 Atom 編輯器阻止(安裝在Windows上而不是WSL上)。

細節

在此處輸入圖像描述

有問題的目錄是目錄 A。

  • 如果在編輯器中打開文件 Aa、Ab、Ac 之一,我可以mvDir A.
  • 如果打開文件 AAa … ABc 之一,我會得到Permission denied.
  • 如果 Dir A 的內容在 Atom 項目瀏覽器中可見,我可以mv
  • 如果在 Atom pb 中可以看到 Dir AA 或 Dir AB 的內容,我會得到Permission denied.

我認為windows的服務或程序可能正在使用或訪問同一個文件,當我第一次在windows 10上安裝linux子系統時,我曾經遇到過同樣的問題。

引用自:https://unix.stackexchange.com/questions/352819