Permissions

遷移到新的使用者首頁

  • June 24, 2022

我在目前使用者的配置方面遇到了多個問題。在一個新的使用者帳戶下,這些都解決了。現在我想將舊使用者的所有數據移動(不是複制,因為磁碟空間)到新使用者。我還想有選擇地將一些沒有問題的應用程序設置文件轉移給新使用者。

為此,如何使舊使用者的整個使用者文件夾對新使用者可讀寫?

將主目錄的所有權更改為chown新使用者。

chown -R newuser:newuser /home/olduser

我猜測“多個問題”實際上與特定於應用程序的配置有關。普通帳戶不應該有任何依賴於主目錄位置的東西。

但是,您所描述的問題很難在不涉及任何問題的情況下解決。複製非“dot”文件以及標準 shell 啟動文件可能是一個好的開始,但您仍然可能會錯過重要的 dot 文件或攜帶過多的文件。這將不得不是一個反複試驗的解決方案。

假設您已經創建了新帳戶。為方便起見,我將使用變數來辨識新舊使用者目錄。執行所有這些root

olduser=olduser          # For example, « olduser=sarah »
newuser=newuser

oldgroup=oldgroup        # For example, « oldgroup=sarah » or « oldgroup=users »
newgroup=newgroup

oldhome=/home/olduser    # For example, « oldhome=/home/sarah »
newhome=/home/newuser

將文件從舊目錄移動到新目錄:

mv "$oldhome"/* "$newhome/"
mv -f "$oldhome"/.{bashrc,bash_profile,profile,ssh} "$newhome/"

查看剩餘的文件,並移動 ( mv) 您要保留的文件:

ls -RA "$oldhome"

最後,更改新使用者的所有權和組:

find "$newhome" -user "$olduser" -exec chown "$newuser" {} +
find "$newhome" -group "$oldgroup" -exec chgrp "$newgroup" {} +

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