Centos

無法在 CentOS 5.6 上創建符號連結 - 文件存在錯誤

  • August 10, 2016

我正在嘗試在我的 CentOS 5.6 機器上設置一個符號連結以dev_crmpicco/指向~/vhosts/dev/dev_crmpicco/web/

我正在使用以下命令:

[crmpicco@devel dev]$ ln -s ~/vhosts/dev/dev_crmpicco/web/ dev_crmpicco/

但是,我收到此錯誤:

ln: creating symbolic link `dev_crmpicco/web' to `/home/crmpicco/vhosts/dev/dev_crmpicco/web/': File exists

我知道該文件存在,因為我想dev_crmpicco/指向它。

基本上,我的 DOCROOT 曾經在其中,dev_crmpicco/但現在它都被移到了一個web/目錄中,我不想改變我所有的 Apache 配置,如果可能的話,我寧願通過符號連結來完成。

您應該檢查是否dev_crmpicco/web存在之前的連結嘗試(或複製而不是移動)。如果它存在(無論是文件、連結還是目錄),您必須將其刪除,因為這是您的命令嘗試創建的內容。

檢查後嘗試:

ln -s ~/vhosts/dev/dev_crmpicco/web/ dev_crmpicco

沒有/@Johan 建議的尾隨。

如果您明確指定一個目錄作為目標(例如,通過在/之後提供尾隨dev_crmpicco/,就像您在範例中所做的那樣,那麼將在該目錄中創建具有相同名稱(在本例中為 web)的連結(並且缺少的目錄是這種情況下的錯誤)

ln -s 路徑/目標連結/

將創建

連結/目標 -> 路徑/目標

dev_crmpicco如果您想成為原始連結,請不要提供尾部斜杠。在這種情況下,連結將被命名dev_crmpicco,如果存在具有該名稱的文件或目錄,則為錯誤。

無論哪種方式,您都必須在創建連結之前重命名或刪除現有文件/目錄。

ln -s 路徑/目標連結

將創建

連結 > 路徑/目標

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