2016-06-14 114 views
41

我已經下載了Xcode 8 beta .xip文件。我無法解壓縮。打開該文件只是坐在那裏好幾個小時說「驗證......」「未找到中央目錄簽名末尾」。當安裝Xcode 8 beta xip文件

如果我的命令行,我得到了以下嘗試...

Downloads unzip Xcode_8_beta.xip 
Archive: Xcode_8_beta.xip 
    End-of-central-directory signature not found. Either this file 
    is not a zipfile, or it constitutes one disk of a multi-part archive.   

    In the latter case the central directory and zipfile comment will be 
    found on the last disk(s) of this archive. unzip: cannot find 
    zipfile directory in one of Xcode_8_beta.xip or Xcode_8_beta.xip.zip, 
    and cannot find Xcode_8_beta.xip.ZIP, period. 
+5

嘗試再次下載文件。聽起來像是損壞了。你能比較一下它在下載網站上的散列嗎? – TylerH

+1

檢查你的OSX版本它應該是最新的w.r.t Xcode版本。 – kamleshwar

+0

Xcode_8_beta_6只需要更新到OSX 10.11.5,我有15 GB的可用磁盤空間。 –

回答

29

的XIP文件(到位提取物)僅僅是一個驗證與蘋果公司不存檔的特殊檔案。在2014年的MacBook Pro i7上,Xcode 8二進制文件花費了30分鐘時間來提取。如果文件在接近一個小時後沒有取得很大進展,請重新下載存檔並再次嘗試提取。

此外,Xcode 8.0 beta需要運行macOS 10.11.4或更高版本的Mac。確保您的系統版本受支持。

的Xcode 8 Beta 2的註釋:MACOS 10.11.5或以後需要安裝貝塔2.

+3

原來我錯過了El Capitan的更新,它不允許我前進,也從不拋出錯誤。 –

+0

@chrisP啊好電話,我會將這些信息添加到我的答案中,以幫助未來的訪問者。 – JAL

+0

它只花了2分鐘在2015 MacBook Pro 2.9Ghz i5上。 – sleepwalkerfx

57

.xip文件格式包含一個歸檔和存檔的簽名(含有一個gzip歸檔和元數據XAR)。 簽名很重要,因爲之前的Xcode下載已被更改(例如XcodeGhost)以將惡意代碼注入應用程序。因此,像跳過驗證(xattr -d com.apple.quarantine Xcode_8_beta.xip)這樣的方法似乎是不負責任的。

強烈鼓勵您嘗試在您的finder中用Archive Utility.app打開它。如果簽名檢查不起作用,請嘗試重新下載。

如果你想調查.xip是否進行了有效簽名或者出於某種原因想擴大它沒有存檔工具,你可以使用pkgutil

pkgutil --check-signature Xcode_8_beta.xip 

輸出應該是這樣的:

Package "Xcode_8_beta.xip": 
     Status: signed Apple Software 
     Certificate Chain: 
     1. Software Update 
      SHA1 fingerprint: 1E 34 E3 91 C6 44 37 DD 24 BE 57 B1 66 7B 2F DA 09 76 E1 FD 
      ----------------------------------------------------------------------------- 
     2. Apple Software Update Certification Authority 
      SHA1 fingerprint: FA 02 79 0F CE 9D 93 00 89 C8 C2 51 0B BC 50 B4 85 8E 6F BF 
      ----------------------------------------------------------------------------- 
     3. Apple Root CA 
      SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60 

如果該簽名不是由您的鑰匙串中的Apple Root CA簽署的,那麼您應該停在那裏。如果所有的已經很不錯了,你就可以運行下面的命令:

xar -xf Xcode_8_beta.xip 
sudo tar zxvf Content 
+1

您確定'xattr -d com。 apple.quarantine'跳過驗證?我懷疑這個簽名應該放在檔案裏面。另外我不認爲你必須通過sudo調用tar。 – Zorg

+3

Archive Util是唯一對我有用的解決方案。謝謝! – gutte

+0

我不得不跳過驗證才能解開這個東西。聳聳肩。 (pkgutil噓這是一個有效的簽名) –

5

打開終端

1.cd拖放您的Xcode(用於路徑),然後進入

2.xattr -d com.apple.quarantine Xcode-beta.xip輸入

+2

這完全繞過了xip文件上的簽名檢查,破壞了這種存檔格式的用途。 – sgonzalez

+7

@sgonzalez是啊...我們有些人需要在某個時間點上班。如果蘋果能夠以一種不需要我在4個小時內嘔吐的方式來部署內容,那麼我會非常喜歡它,尤其是在我嘗試做的所有事情之前。但也許一個免責聲明會很好。 – mpowered

+0

+1這個。我有一種感覺,我將來會更經常需要它。等待30分鐘看「驗證檔案」的原因是什麼? –

0

即使我運行最新的el capitan(10.11.5),我也遇到了同樣的問題。基於克里斯P的評論,我重新安裝OS X從恢復(https://support.apple.com/en-us/HT204904),然後一切正常。很顯然,我之前從App Store更新過的東西中沒有正確安裝。

2

重新啓動我的系統對我來說很有用。

0

我得到這個錯誤,我做了以下內容:

簡單的辦法是升級您的Mac OS X版本10.11.5並嘗試使用歸檔實用程序解壓縮文件,它會提取「XIP」文件。

我升級了我的mac os,這幫了我。我能夠擺脫解壓錯誤。

希望這會有所幫助!

+0

正確!支持配置 - 「Xcode 8測試版需要運行macOS Sierra beta 3或更高版本的Mac或OS X El Capitan 10.11.5或更高版本的Mac。 「 –

2

我也收到此錯誤

  1. 更新我的Mac OS X版本10.11.6。我認爲10.11.4是Xcode 8將運行的最低OS X版本。

  2. 請確保您有40 GB最小空間解壓Xcode_8_beta_5.xip或 Xcode_8_beta_2.xip

然後解壓縮。這Xcode版本將需要更多的空間,然後其他人。

0

檢查您的Xcode版本,它應該是最新的或按照Xcode版本。希望這能解決你的問題。

30

我不確定爲什麼Archive Utility對這些檔案有太多的麻煩,但只要你的下載本身沒有損壞,手動解壓縮應用程序包對我來說一直工作。順便說一句,我是10.12轉基因種子(16A320)。

Xcode.app包位於CPIO存檔中,該存檔爲xz'd,然後打包到v2(即Yosemite)PBZX流(如Yosemite/Sierra安裝包中的有效內容)。結果流是與某些元數據捆綁在一起,然後簽署分發。從混亂中解脫並不難,但需要一點努力。

(如果你想看看這是什麼樣子,我的here's a recording做剛纔,完整的文件大小和證書SHA1哈希值。)

  1. 驗證簽署的簽名和證書鏈檔案。

    pkgutil --verbose --check-signature ./Xcode_8_GM_seed.xip 
    
  2. 從存檔中提取PBZX流。

    xar -xf ./Xcode_8_GM_seed.xip 
    
  3. 獲得一個PBZX v2解包器,並...解壓縮包裝的東西。

    curl -O https://gist.githubusercontent.com/pudquick/ff412bcb29c9c1fa4b8d/raw/24b25538ea8df8d0634a2a6189aa581ccc6a5b4b/parse_pbzx2.py 
    python parse_pbzx2.py Content 
    
  4. 解壓檔案(應該只有一個塊,「part00」)。

    xz -d Content.part00.cpio.xz 
    
  5. 解壓CPIO存檔爲特權用戶(因爲該設備框架有奇怪的符號鏈接,使cpio否則抱怨,並且需要將其通過根無論如何擁有)和移動所產生的Xcode應用束引入/Applications

    sudo cpio -idm < ./Content.part00.cpio 
    sudo mv ./Xcode.app /Applications/ 
    

應該提示你做安裝後在第一次啓動的設置步驟。

+6

謝謝。 同樣在第3步之後,您可以使用」The Unarchiver「應用程序解壓縮Content.part00.cpio.xz。 – krafter

+2

當您的系統上沒有xz工具時,你可以用「sudo cpio -izmdu 0 konran

+0

執行「sudo cpio - izmdu 0 NinjaCoder

0

重新啓動系統爲我工作。請檢查它。或者嘗試關閉所有應用程序,Xcode,模擬器等。 確保Mac OS 10.11.5以上。

0

使用

這裏就是我所做的:

  • 使用歸檔工具在10.12上提取
  • 複製Xcode-beta.app到10.11
  • Xcode-beta.app似乎在10.11正常工作。

在El Capitan上,當我嘗試提取使用歸檔實用程序在macOS Sierra上提取的相同下載的.xip文件時,歸檔實用程序掛起。

4

我一直收到關於存檔被損壞的錯誤消息,因爲我使用The Unarchiver作爲我的解包程序。無論出於何種原因,它都無法處理數字簽名檢查,因此選擇使用Archive Utility打開.xip文件爲我排序問題。

enter image description here