none
移动winsxs文件夹到非系统盘后,更新总是失败。 RRS feed

答案

  • 你可以通過複製下列代碼, 觀察其執行結果, 來更好的理解硬鏈接特性
    注意, 因為用到 fsutil 命令, 所以下列代碼需要以管理員身份執行
    示例中的目錄名和文件名, 可做任意修改

    執行方法:

    1. 複製下列代碼
    2. 然後以管理員身份運行命令提示符
    3. 在該命令提示符獲得焦點後, 按 Alt+Space 鍵, 按 E 鍵, 按 P 鍵以粘貼代碼
    4. 然後按一下 Enter 鍵

     

    REM Begin
    
    cd /d c:
    mkdir \sxs\f1
    cd \sxs\f1
    fsutil file createnew a0.txt 0
    mklink /h ..\a0.txt a0.txt
    cd ..
    REM 編輯 c:\a0.txt
    REM 添加文字 1
    echo 1 > c:\sxs\a0.txt
    REM 然後用命令 type 查看
    type c:\sxs\a0.txt
    type c:\sxs\f1\a0.txt
    REM 你可以注意到兩個 a0.txt 的內容都是 1
    mkdir d:\sxs\f1
    move f1\*.* d:\sxs\f1
    rmdir /s/q f1
    mklink /j c:\sxs\f1 d:\sxs\f1
    REM 然後再次編輯 d:\sxs\f1\a0.txt
    REM 替換內容為 2
    echo 2 > d:\sxs\f1\a0.txt
    REM 再次用 type 觀察
    type c:\sxs\a0.txt
    type c:\sxs\f1\a0.txt
    type d:\sxs\f1\a0.txt
    REM 可以看到位於 a0.txt 同 f1\a0.txt 的文件內容不一致, 前者是 1, 後者是 2
    REM 然後刪除 c:\sxs\a0.txt 文件, 並嘗試通過 mklink 重建
    del c:\sxs\a0.txt
    mklink /h c:\sxs\a0.txt d:\sxs\f1\a0.txt
    REM 可以看到系統報錯 "系统无法将文件移到不同的磁盘驱动器。"
    
    REM End

    2011年8月13日 1:47
  • 同時你也可以閱讀下面這篇 TechNet 文章以對硬鏈接(hardlink) 有進一步了解, 以及我較早前回复的一個與你問題類似的帖子

    Fsutil:hardlink
    http://technet.microsoft.com/en-us/library/cc772756(WS.10).aspx

    更新失败!错误代码80070011
    http://social.technet.microsoft.com/Forums/zh-CN/window7betacn/thread/e4ba2f06-579e-4d29-bb2b-5498d115f377/


    Folding@Home
    2011年8月13日 1:59

全部回复

  • 沒有解決更新失敗的方法, 因為 winsxs 依賴於 NTFS 文件系統的硬鏈接功能, 而硬鏈接有一個特性就是不能跨卷.
    將 winsxs 從系統卷遷移到其他卷, 那就意味著放棄更新功能.
    Folding@Home
    2011年8月13日 0:50
  • 你可以通過複製下列代碼, 觀察其執行結果, 來更好的理解硬鏈接特性
    注意, 因為用到 fsutil 命令, 所以下列代碼需要以管理員身份執行
    示例中的目錄名和文件名, 可做任意修改

    執行方法:

    1. 複製下列代碼
    2. 然後以管理員身份運行命令提示符
    3. 在該命令提示符獲得焦點後, 按 Alt+Space 鍵, 按 E 鍵, 按 P 鍵以粘貼代碼
    4. 然後按一下 Enter 鍵

     

    REM Begin
    
    cd /d c:
    mkdir \sxs\f1
    cd \sxs\f1
    fsutil file createnew a0.txt 0
    mklink /h ..\a0.txt a0.txt
    cd ..
    REM 編輯 c:\a0.txt
    REM 添加文字 1
    echo 1 > c:\sxs\a0.txt
    REM 然後用命令 type 查看
    type c:\sxs\a0.txt
    type c:\sxs\f1\a0.txt
    REM 你可以注意到兩個 a0.txt 的內容都是 1
    mkdir d:\sxs\f1
    move f1\*.* d:\sxs\f1
    rmdir /s/q f1
    mklink /j c:\sxs\f1 d:\sxs\f1
    REM 然後再次編輯 d:\sxs\f1\a0.txt
    REM 替換內容為 2
    echo 2 > d:\sxs\f1\a0.txt
    REM 再次用 type 觀察
    type c:\sxs\a0.txt
    type c:\sxs\f1\a0.txt
    type d:\sxs\f1\a0.txt
    REM 可以看到位於 a0.txt 同 f1\a0.txt 的文件內容不一致, 前者是 1, 後者是 2
    REM 然後刪除 c:\sxs\a0.txt 文件, 並嘗試通過 mklink 重建
    del c:\sxs\a0.txt
    mklink /h c:\sxs\a0.txt d:\sxs\f1\a0.txt
    REM 可以看到系統報錯 "系统无法将文件移到不同的磁盘驱动器。"
    
    REM End

    2011年8月13日 1:47
  • 同時你也可以閱讀下面這篇 TechNet 文章以對硬鏈接(hardlink) 有進一步了解, 以及我較早前回复的一個與你問題類似的帖子

    Fsutil:hardlink
    http://technet.microsoft.com/en-us/library/cc772756(WS.10).aspx

    更新失败!错误代码80070011
    http://social.technet.microsoft.com/Forums/zh-CN/window7betacn/thread/e4ba2f06-579e-4d29-bb2b-5498d115f377/


    Folding@Home
    2011年8月13日 1:59
  • 谢谢REPL的帮助,原来这样,硬链接被我破坏了。早知这样就不移动了,想其它办法了。官网怎么能放这样的链接:http://technet.microsoft.com/zh-cn/library/ee939313.aspx  标题还挺吸引人的说是可以加快系统还能减肥。可是带来的负面影响真的很大。


    2011年8月13日 7:47
  • 这些文章是网友写的,只是作为技术文章被微软中国公司的TechNet收录了,但这样随意修改系统文件的做法是不受官方支持的。
    黄俊伟(wbpluto) MSN: hjw@live.cn Blogs: http://blog.wbpluto.com http://blogs.itecn.net/blogs/wbpluto
    2011年8月13日 16:42