Mac

APFS 使用心得

[華語, cmn-Hant-TW] 從 10.13 High Sierra 開始,macOS 預設的檔案系統就從 HFS+ 變成 APFS 了,雖然說怕踩地雷所以沒第一時間更新,不過手上幾台更新倒是沒遇到啥問題,更新後用起來順順的也沒特別注意,一直到最近在移虛擬磁碟的時候才發現 APFS 其實是蠻妙的東西,網路上找了些資料,再實測之後的心得大致上有這些: APFS 有類似 zfs snapshot 的 localsnapshot,似乎是一定時間系統就會產生一個,然後把太舊的刪掉,用tmutil listlocalsnapshots / 可以列出目前根目錄下所有的 localsnapshot,還有一些操作例如手動新增或是刪除,也都是透過 tmutil 操作 用 time machine 備份的時候,如果遇到 APFS 卷宗的話,會先產生一個 localsnapshot 再開始備份 (細節不確定,似乎還會比對前一次下的 localsnapshot) 在 Terminal 用 df…

重建 OS X 的回復磁碟

[華語, cmn-Hant-TW] Mac 一直以來都有提供回復磁碟 (Recovery HD),用來修硬碟或是重灌用,很方便,後來這個磁區功能相對比較沒用了,因為新一點的機器可以直接透過 Internet 跑這個系統,只要能上網就能跑,更方便。當然限制還是有的,除了老機器不能用外,比較可能會遇到的狀況是 PPPoE 撥接,在當機時不方便上網的情況下,留一個 Recovery HD 就變成相對必要的了 不過畢竟是個老東西,官網只有提供給 10.7 Lion 跟 10.8 Mountain Lion 用的輔助工具,比較新的作業系統只能自己動手分割重灌磁區,或是用第三方工具 Recovery Partition Creator 來幫忙弄 用 Recovery Partition Creator 可以做不同版本作業系統用的回復磁碟,首先要在 App Store 下載對應版本的 OS X 安裝程式,然後照說明選擇要安裝的磁區,下一步下一步就完成了,不過這個工具軟體不支援多國語系,所以要用之前要先切到英文或是用 Language Switcher 直接指定語系 (只要 Recovery Partition…

OSX Open Directory 修復

[華語, cmn-Hant-TW] 有一台 Mac 跑 Server.app 提供一些簡單的服務,主要是 LDAP 帳號權限管理,某次升級之後就突然沒辦法登入了,不過因為網頁認證郵件之類的都還會動,所以也沒有特別在意,然後終於在 SSL 到期之後整個炸掉,所以只好開始找問題在哪,一開始以為是 SSL 的問題,想辦法簽一個新的結果發現 Open Directory 居然不吃新的 SSL,有人說是 SSL 需要 code signing 才吃,不過重點是關掉 SSL 應該還是要會動才是,因為其他用到的伺服器配合關 TLS 照樣可以連,看了好幾篇討論後來在這篇看到有人說要照這個說明跑一次 Rekerberize,試過之後果然可以,原來是之前的更新沒跑完整啊,難怪帳號明明就存在,但是 ssh 跟桌面就是不給登入,因為 OSX 的登入有用到 kerberos 啊! 是說後來完整修復也不是用這招,因為修修改改弄一弄就炸掉了,還好試之前有先封存 Open Directory 伺服器,就放心的整個砍掉 (連 /var/db/openldap 都砍了) 再從封存檔回復,結果這樣居然就一切正常,連本來不吃的…

OS X Server 5 的 Xcode 服務

[華語, cmn-Hant-TW] 有一台機器是用 OS X Server 4.x 架設的,上面提供基本的 redmine/git/svn 服務,使用上沒什麼問題,不過自從升級到 OS X Server 5 之後就變得怪怪的了,一開始除了 redmine 正常外 git/svn 完全不能動作,直接下 git 指令才發現是因為同時升級的 Xcode 7 要先同意條款才能使用,這個問題解決之後 redmine 裡面就可以正常瀏覽 git 跟 svn 檔案庫的內容了,不過奇怪的是遠端存取檔案庫的時候 svn 可以動,但是 git 就一直吃 503 Service Unavailable 看了一下才發現原來 Server 5…

ics 加不進去 Calendar

[華語, cmn-Hant-TW] OS X 10.10 Yosemite 不知道什麼時候開始,從 Lotus 發出來的開會通知 (ics 行事曆事件) 就加不進去 OSX 的 calendar 了,後來看到這篇有提到類似的狀況,對照一下 Console 的記錄也是有類似的訊息 6/21/2015 9:13:02.025 PM Calendar[88236]: CaliTIPHandler: request: Ignoring message because calendars exist, but they are all subscribed calendars: 9C11AA7490D36BB648257E66002F6C0E-Lotus_Notes_Generated 這看起來是一個 bug,啊我的行事曆用 iCloud,除了生日是訂閱的外其他都不是啊,所以就照那篇提到的方法,用文字編輯程式把 ics…

設定 Mac 的機器序號

[華語, cmn-Hant-TW] 設定一台老 MacBook Pro 結果發現 iMessage 跟 FaceTime 通通連不上,在網路上研究了老半天才發現問題是這台之前維修完序號不知道為什麼就不見了,然後這兩個服務一定要有序號才能連,一開始差點走 Hackintosh 的方式,畢竟之前碰過這塊想說反正也過保沒差,後來想一想正規 Mac 幹嘛用這種招而且沒弄好的話說不定還會不能開機,就再找看看有沒有什麼方法可用。 Apple 官網是說遇到這種問題拿回去 Apple 維修中心請他們寫回去,不過這台早就過保到不知道哪去了,而且當時螢幕是請副廠修的,真的拿回去大概也不會被收件,後來看到這篇裡面提供的一個可開機的光碟映象檔,裡面有工具程式可以把序號寫回去,不過只能寫不能改。 啊看了一下我的序號是空的,就來試看看,寫序號的時候非常小心,怕寫錯就改不了,程式也會再三確認,沒問題就一直接確認然後就寫入完成,重開機後 iMessage 跟 FaceTime 就自動跳出來要我設定,這樣就成功了,小插曲是本來可以用的嘸蝦米突然說安裝錯誤,要砍掉重裝才恢復正常,看來嘸蝦米也會參考這個序號在驗證。 總之這個狀況一般情況應該不會遇到,如果真的碰到了就用這招試看看,真的不行那只好拿回原廠去了。

MacBook Pro 送修

[華語, cmn-Hant-TW] 用一用突然螢幕閃了一下,先是花掉然後中間切一半冒出黑條,很明顯是顯示卡出問題了,就在想說八成是踩到 2011 MacBook Pro 顯卡地雷。 蓋上蓋子讓它睡一下畫面又恢復正常,然後又花掉,重覆幾次之後直接吃六國語言,當機。重開機之後直接卡白畫面,不送修也不行了,還好那時候有買 AppleCare (Apple 還沒承認這是製造上的瑕疵,只能用正常保固維修) 啊是怎樣,前一台 MacBook Pro 用 NV 的顯卡也是踩地雷,現在 AMD 的又踩一次,顯卡地雷是有沒有那麼多啊?   update 2014-06-16 維修完成,一如預期換掉了整個主機版,目前使用還算正常就是

Apple Mail 重建智慧型信箱

[華語, cmn-Hant-TW] Mail.app 在 10.9 整個翻修過,而且電子郵件帳號被整合到系統偏好設定的「Internet 帳號」裡,升級時光是讓帳號正常運作就花了不少時間,弄一弄至少還能正常收信就是。 信是可以收不過智慧型信箱就鳥掉了,網路上可以看到一堆人在抱怨沒即時更新跟找錯東西之類的問題,Apple 也放了好幾次的更新去修,拖了好幾個月終於在 10.9.2 比較穩定些了。 智慧型信箱炸掉其實還蠻困擾的。有些信在伺服器上就套用 sieve 規則儲存在各資料夾了,用智慧型信箱可以一次把所有資料夾的未讀信件集合起來一起看,很方便,如果沒有智慧型信箱那就得各別去注意每各資料夾的狀態看有沒有新信,很容易漏信,所以這個功能是非常需要的,不修好的話根本不能放心的收信。 結果更新完發現還是爛的,重建信箱也沒改善,上網查了一下找到了這篇,原來要重建的不只信箱,還有 Spotlight,依照那篇的講法,先關掉 Mail.app 再開 Terminal 跑這兩行 rm -rf ~/Library/Mail/V2/MailData/Envelope* mdimport ~/Library/Mailrm -rf ~/Library/Mail/V2/MailData/Envelope* mdimport ~/Library/Mail 跑完之後再開 Mail.app,因為 Envelope* 被刪掉他會完整的掃一遍所有資料夾,掃完之後該正常的東西通通都正常了。

Apple Mail 復原

[華語, cmn-Hant-TW] 在一次系統當掉之後,Mail.app 就叫我重新設定新的帳號,看來信件資料庫爛掉了,就以往的經驗這得從 Time Machine 手動復原。 首先把 ~/Library/Mail (要用 Finder 秘技 cmd + shift + G 才能進入這個隱藏關卡目錄) 倒回來,結果發現疑怎麼  ~/Library/Preferences/com.apple.mail.plist 不見了,網路上找了一下看到在這篇裡面有人提到 Mail.app 的設定檔在 10.8 Mountain Lion 因為 sandbox 的機制換了位置,現在要改成把 ~/Library/Containers/com.apple.mail 整個倒回來。 所以之後要救信就要複原這兩個目錄,記一下 ~/Library/Mail ~/Library/Containers/com.apple.mail~/Library/Mail ~/Library/Containers/com.apple.mail

手動刪 Time Machine 的備份

[華語, cmn-Hant-TW] Time Machine 的備份滿出來的時候會自己刪掉最舊的備份,如果想要自己選擇刪哪個備份的話比較麻煩,進入 Time Machine 的畫面之後切到想要刪掉的日期,在畫面上按右鍵會有刪掉備份的選項,確認後就會跳回桌面,然後等他慢慢刪… 用這個方法沒辦法知道要刪的備份佔多少空間,要更到位的操作就要用 tmutil 這個內建的命令列小工具 (需要 root 權限,請用 sudo 執行) 印出備份磁碟目錄 $ sudo tmutil machinedirectory$ sudo tmutil machinedirectory 列出所有的備份 $ sudo tmutil listbackups$ sudo tmutil listbackups 列出最新的備份 $ sudo tmutil latestbackup$ sudo tmutil latestbackup…