0. 現象
Could not create temporary directory: Permission denied
1. 問題起因
在 /Users/username/Library/Caches/
目錄下,有以下兩個檔案, 可以看到,他們兩個的使用者是不一樣的,一個是root
一個username
, 一般來說,我是以username
來使用我的mac的。就是因為這兩個檔案的使用者不一樣,導致了更新失敗。
drwxr-xr-x 6 username staff 204B Jan 17 20:33 com.microsoft.VSCode
drwxr--r-- 2 root staff 68B Dec 17 13:51 com.microsoft.VSCode.ShipIt
2. 解決方法
注意
: 先把vscode 完全關閉
// 1. 這一步是需要輸入密碼的
sudo chown $USER ~/Library/Caches/com.microsoft.VSCode.ShipIt/
// 2. 這一步是不需要輸入密碼的, 如果不進行第一步,第二步會報錯
sudo chown $USER ~/Library/Caches/com.microsoft.VSCode.ShipIt/*
// 3. 更新xattr
xattr -dr com.apple.quarantine /Applications/Visual Studio Code.app
3. 開啟vscode
Code > Check for Updates, 點選之後,你會發現Check for Updates
已經變成灰色了,那麼你需要稍等片刻,馬上就可以更新,之後會跳出提示,讓你重啟vscode, 然後重啟一下vscode, 就ok了。