1 điểm bởi GN⁺ 2024-12-15 | 1 bình luận | Chia sẻ qua WhatsApp
  • Trên macOS 15.2, chức năng sao chép HĐH của Apple bị hỏng khiến các công cụ như SuperDuper! không thể hoàn tất việc sao chép HĐH sang ổ đĩa khác
  • Lỗi xảy ra vào cuối quá trình sao chép volume Data, tại điểm có vẻ là bước sao chép Preboot hoặc Recovery, và xuất hiện lỗi Resource Busy
  • Trước đây có thể lách lỗi Resource Busy bằng cách ngăn hệ thống chuyển sang chế độ ngủ, nhưng với lỗi lần này thì trên hầu hết hệ thống hầu như không có cách khắc phục thực tế
  • Do cấu trúc buộc công cụ bên thứ ba phải phụ thuộc vào mã của Apple để sao chép HĐH, nên bản sao chép có kèm HĐH sẽ không hoạt động cho tới khi Apple sửa lỗi
  • Giải pháp tạm thời là dùng “Backup - all files” và “Smart Update” trong SuperDuper! để sao lưu các mục không bao gồm HĐH, sau đó cài đặt sạch và khôi phục trong quá trình khởi động đầu tiên

Sao chép HĐH bị hỏng trên macOS 15.2

  • Sau khi macOS 15.2 được phát hành, replicator của Apple không còn hoạt động bình thường nên tác vụ sao chép HĐH bị thất bại
  • Điểm lỗi dường như nằm ở cuối quá trình sao chép volume Data
    • Có vẻ vấn đề xảy ra ở bước cố sao chép Preboot hoặc Recovery
    • Lỗi hiển thị là Resource Busy
  • Các lỗi Resource Busy trước đây có thể được lách bằng cách giữ cho hệ thống không ngủ
  • Nhưng lỗi lần này khó lách trên đa số hệ thống, và quá trình sao chép bị dừng hẳn

Vì sao SuperDuper! không thể tự sửa

  • Apple đã lấy lại chức năng sao chép HĐH từ bên thứ ba, khiến trách nhiệm sao chép HĐH bị ràng buộc vào mã của Apple
  • Các công cụ như SuperDuper! phải phụ thuộc vào mã của Apple nếu muốn sao chép HĐH
  • Trên macOS 15.2, đoạn mã đó bị hỏng hoàn toàn nên cho tới khi Apple sửa, việc sao chép HĐH sẽ không hoạt động
  • Trước đây vẫn có thể lách các lỗi khác trong đoạn mã này, nhưng khi nó hỏng hoàn toàn như lần này thì chỉ còn cách tránh dùng replicator

Các cách lách hiện có

  • Cho tới khi Apple sửa lỗi, người dùng SuperDuper! nên dùng “Backup - all files” và “Smart Update
  • Cách này sẽ sao chép các mục không bao gồm HĐH
    • ứng dụng
    • dữ liệu
    • cài đặt
    • các tệp người dùng khác
  • Volume System về thực chất chính là HĐH và ở chế độ chỉ đọc nên người dùng không thể thay đổi
  • Nếu cài đặt sạch, volume System sẽ trở về trạng thái ban đầu, sau đó có thể khôi phục bản sao lưu từ lời nhắc xuất hiện trong lần khởi động đầu tiên

Lỗi cần Apple sửa

  • Mã lỗi để chuyển cho người nội bộ Apple hoặc người có thể liên hệ với Apple là FB16090831
  • Vấn đề này phía SuperDuper! không thể tự khắc phục và cần Apple sửa

Sự bất tiện vào dịp cuối năm

  • Sự cố xảy ra đúng vào dịp cuối năm, thời điểm Apple gần như không phát hành cập nhật mới cho tới trước năm mới
  • Người dùng SuperDuper! trong thời gian này sẽ phải dùng quy trình sao lưu không bao gồm HĐH và khôi phục sau khi cài đặt sạch, thay vì sao chép đầy đủ cả HĐH

1 bình luận

 
GN⁺ 2024-12-15
Ý kiến trên Hacker News
  • Tôi không rõ bài này đang nói trong ngữ cảnh nào. Tôi thắc mắc replicator trong “Apple đã làm hỏng replicator” là gì, và “Backup - all files” với “Smart Update” được dùng ở đâu

    • Đây là chuyện về công cụ sao lưu SuperDuper. SuperDuper là công cụ có thể tạo bản sao lưu khởi động được của hệ thống macOS, nhưng Apple đã tước khả năng cho công cụ bên thứ ba sao chép/thao tác hệ điều hành sang phân vùng hoặc ổ đĩa khác, và buộc chỉ được làm bằng tiện ích của chính họ
      Nhưng có vẻ tiện ích đó không hoạt động đúng trên 15.2, nên SuperDuper không còn tạo được bản sao lưu có thể khởi động một cách gọn gàng
    • Người viết có vẻ là thành viên của nhóm SuperDuper, một tiện ích sao chép và sao lưu đĩa Mac
      https://www.shirt-pocket.com/SuperDuper/SuperDuperDescriptio...
    • Giải pháp sao lưu mặc định của Apple là Time Machine, nhưng từ khi ra mắt cách đây 10 năm nó đã rất tệ, qua nhiều bản phát hành hệ điều hành độ tin cậy cũng không cải thiện đáng kể, và nhìn chung vẫn khá dở
      Tác giả blog này phát triển một ứng dụng tạo bản sao lưu tốt trên macOS, nhưng ứng dụng đang bị hỏng vì những hạn chế đáng ngờ của Apple
      Vấn đề có ba điểm: Apple đang biến macOS ngày càng giống iPhone, làm tổn hại cạnh tranh, và vì Apple không có động lực để cải thiện nên cuối cùng người dùng chịu thiệt
  • Chuyện này khá nghiêm trọng. Gần đây tôi làm hỏng hệ thống khá nặng nên định xóa và khôi phục bằng Time Machine, nhưng nhiều lần thất bại vì bản sao lưu 1,45TB lớn hơn SSD trong máy 1TB
    Tôi phát hiện nếu tự ý cắt tỉa bản sao lưu Time Machine thì có thể làm hỏng nó, và sau vài ngày liên tục khôi phục thất bại rồi tìm hiểu, tôi tìm ra rằng vẫn có thể khởi động từ SSD ngoài
    Cuối cùng tôi mua SSD 2TB, khôi phục vào đó, khởi động từ SSD đó rồi dọn dữ liệu không cần thiết và di chuyển sang MacBook; mỗi lần thất bại và mỗi lần tìm hiểu đều mất vài giờ, tổng cộng mất 3 ngày
    Tôi cũng liên hệ hỗ trợ Apple, nói rằng mình từng là quản trị hệ thống và muốn nói chuyện với chuyên gia, thì họ bảo “hãy quên việc khôi phục toàn bộ đi, không được đâu. Cài mới rồi tự chép file từ Time Machine”, còn một người khác thì bảo mua Mac mới có SSD 2TB rồi khôi phục vào đó
    Trước đây tôi từng khôi phục vào SSD ngoài bằng Carbon Copy Cloner nên hỏi cách đó, nhưng họ nói không thể khuyến nghị ứng dụng bên thứ ba và không khuyên dùng
    Vài năm trước tôi nghe nói macOS mới nhất không hỗ trợ khởi động từ SSD ngoài, nên lúc đầu tôi không nghĩ đến lựa chọn đó, nhưng thực ra nếu làm thêm vài bước thì vẫn có thể
    Nếu việc này không khả thi, có lẽ tôi đã phải mất 2 tuần để khôi phục, hoặc mua một chiếc Mac 2TB khác chỉ để khôi phục bản sao lưu
    Tôi đã chi gần 5.000 euro cho một chiếc MacBook Pro cấu hình tối đa với 64GB RAM và cả Apple Care, nên không muốn mua thêm một chiếc Mac chỉ để khôi phục sao lưu
    Tất cả chuyện này xảy ra ngay trước một buổi thuyết trình rất quan trọng, khiến tôi bị kẹt với laptop Windows dùng cho công việc, thiếu các công cụ cần thiết nên năng suất giảm khoảng 90%. Tôi cũng rút ra bài học rằng không nên làm hỏng máy chính ngay trước một mốc quan trọng

    • Bài học rút ra từ câu chuyện khổ sở này có vẻ gần với việc đừng đầu tư vào một hệ sinh thái khiến các thao tác tiêu chuẩn trở nên khó khăn
    • Thật sự dễ nhận thấy chất lượng phần mềm của Apple đã từ từ đi xuống sau Snow Leopard. Ngày trước xem mã nguồn còn thấy thích thú khi đọc
      Giờ thì mệt mỏi vì phải khởi động lại Xcode nhiều lần mỗi ngày để né lỗi. Xcode vốn luôn có vấn đề, nhưng chưa bao giờ tệ như bây giờ
      Hơn nữa, “dữ liệu hệ thống” trên MacBook Pro của tôi đang chiếm 80% SSD, tức 800GB, và dù xóa thủ công cache với dữ liệu phái sinh thì vẫn vậy
      Có vẻ giờ họ không còn quan tâm đến kiểu tay nghề làm code nữa, còn văn hóa “cứ thế là chạy” thì vẫn giữ thói quen không đưa ra thông báo debug hữu ích
      Rắc rối gần đây là một phần của AppKit gọi trực tiếp [NSApplication _crashOnException:] bất kể thiết lập NSApplicationCrashOnExceptions, và cũng không gọi [NSApplication reportException:]. Vì vậy ngoại lệ biến mất hoàn toàn, khiến việc tìm nguyên nhân crash rất khó
    • “Cài mới rồi tự chép từng file từ Time Machine” xưa nay vẫn là câu trả lời duy nhất tỉnh táo
      Nếu muốn tiết kiệm thời gian, năng lượng và sức khỏe tinh thần thì đừng nâng cấp hệ điều hành; hãy xóa sạch và cài từ đầu. Khi chuyển từ Windows 3.1 lên Windows 95 đã vậy, và OSX ngày nay cũng thế
    • Lần gần nhất khôi phục từ Time Machine, tôi có thể chọn các thư mục cần khôi phục. Tôi có thể khôi phục trước những phần quan trọng, còn dữ liệu lớn thì để lại trên ổ sao lưu rồi khôi phục thủ công sau
      https://support.apple.com/en-us/102551
    • Tôi không rành Time Machine, nhưng không hiểu vì sao khôi phục toàn bộ lại cần nhiều dung lượng hơn ổ gốc. Với một giải pháp sao lưu ổn thì chẳng phải khôi phục toàn bộ về cơ bản chỉ nên khôi phục trạng thái hệ thống cuối cùng, chứ không phải toàn bộ lịch sử hay sao
  • Hơi lạc đề một chút nhưng là thông tin hữu ích. Tôi đã trải qua một tuần ác mộng với chiếc 2018 Mac Mini ở văn phòng
    Một nhân viên cố cập nhật lên Sequoia nhưng sau lỗi thì rơi vào vòng lặp chỉ thử lại liên tục, nên tôi thử các tùy chọn khôi phục; thấy quá trình khôi phục báo mất 8 tiếng nên chuyển sang cài bằng USB
    Do các hạn chế của T2, cần bật cho phép khởi động trong menu tiện ích khôi phục, nhưng thật đáng ngạc nhiên là không thể làm việc này nếu không có một bản cài đặt đang hoạt động bình thường và tài khoản quản trị viên
    Vì vậy tôi cố cài hệ điều hành mặc định của máy đó rồi khởi động lại, nhưng trong lúc cài đặt Mini bị treo, không có tiếng chuông cũng không có đèn, tưởng như đã chết hẳn
    Tôi rất bực vì một chiếc máy hoàn toàn ổn lại bị biến thành cục gạch bởi quy trình khôi phục chậm chạp và đầy lỗi. 8 tiếng cơ đấy—Apple không có tiền mua thêm tốc độ máy chủ Akamai, hay họ cố tình làm hỏng quy trình để bắt mua máy mới?
    Cách giải quyết là dùng một sợi cáp không được khuyến nghị, USB2-to-USB-C, tức cáp chuột Logitech có truyền dữ liệu, để vào chế độ DFU. Phải vừa giữ nút khởi động vừa cắm dây nguồn, và đầu USB-C phải cắm vào cổng Thunderbolt đầu tiên sau ngõ HDMI
    Khi đó kết nối hiện lên như phép màu trong Finder trên máy Mac chủ, sau khi khôi phục firmware T2 thì có thể cài đặt từ USB như bình thường và hồi sinh chiếc Mini
    Tôi đã gom từng mảnh thông tin từ các diễn đàn sửa phần cứng khắp nơi để giải quyết. Nếu gọi cho bộ phận “hỗ trợ” của Apple thì quy trình quá rõ rồi: kiểu như bảo đến cửa hàng để mua thêm

  • Bài viết khá mơ hồ. “Sao chép” có thể mang nhiều nghĩa khác nhau tùy người
    Những thứ như cp -r / /Volumes/Clone vốn chưa từng hoạt động, còn tôi tò mò liệu rsync --acls --archive --hard-links --one-file-system --sparse --xattrs / /Volumes/CLONEsudo bless -folder /Volumes/CLONE/System/Library/CoreServices có vẫn dùng được không
    Tôi cũng không biết kiểu sao chép theo khối như sudo dd if=/dev/rdisk2 of=/dev/rdisk4 bs=1m conv=notrunc có còn dùng được không

    • Tôi nhớ là trong một bài blog cũ có tài liệu hóa việc này; có vẻ để sao chép bản cài hệ điều hành thì dùng tiện ích asr
      Vì có nhiều phân vùng cấu thành bản cài macOS nên chỉ cp hay rsync là không đủ. dd thì có thể được, nhưng không thể sao lưu sang đĩa nhỏ hơn, không chọn được tệp, và cũng mất rất nhiều tính linh hoạt về tốc độ
  • Nếu tắt nguồn màn hình ngoài nhưng vẫn cắm HDMI, hoặc để một thiết bị xuất HDMI đã tắt nguồn kết nối, cũng gây kernel panic
    Đó là một trải nghiệm đầu tiên tuyệt vời với chiếc MacBook Pro mới

    • Để tham khảo, trong môi trường của tôi thì không có hiện tượng tương tự. Tôi cắm một TV lớn vào CalDigit TS3+, chỉ bật tắt khi xem phim, vừa thử lại thì vẫn hoạt động tốt
    • Dĩ nhiên không nên có kernel panic, nhưng tôi tò mò liệu bạn đã xem dump để tìm nguyên nhân chưa. Cũng đáng thử cáp khác hoặc thiết bị HDMI khác
      Vẫn là lỗi, nhưng cũng có thể do cáp hoặc thiết bị HDMI không tuân thủ đúng chuẩn
    • Điều tệ nhất khi mua MacBook Pro mới là nó đã được “nâng cấp” lên macOS 15
      Trong 1 giờ đầu tôi đếm được 12 lỗi
      Đến mức muốn lập một công ty máy tính luôn
    • Việc phối hợp với màn hình ngoài, ít nhất là màn hình bên thứ ba, có vẻ là điểm yếu của Apple
  • Máy tính tiếp theo của tôi có lẽ sẽ không phải Mac. Dùng thì vẫn ổn, nhưng mức độ lock-in cứ ngày càng quá đáng

    • Cả Mac lẫn Windows giờ đều có lựa chọn thay thế tốt hơn: Linux. Nhờ các nhà sản xuất phần cứng và Valve, Linux rõ ràng đã trở thành một lựa chọn desktop tốt hơn
  • Khi macOS 15.1 chặn hoàn toàn phần mềm “không đáng tin cậy”, không có nhiều lời phàn nàn lắm
    Trước đây, dù popup “Move to Trash” hiện lên, vẫn có thể Cmd+click vào binary, hoặc về sau thì gỡ chặn trong menu cài đặt Quyền riêng tư & Bảo mật
    Nhưng từ 15.1 trở đi thì hết cách. Binary chưa ký hoặc không được tin cậy sẽ không chạy trên macOS, dù người dùng có tin tưởng đến đâu
    Đây là vấn đề lớn với ngành âm nhạc, nhiều ngành khác, và phần mềm tiêu dùng như trình cài đặt game GOG. Cài mới xong là không mở được luôn
    Tôi đã nổi giận khoảng 15 phút với Apple vì thay đổi phá vỡ tương thích ở không gian người dùng như vậy
    Việc này giống như siết chặt hơn khu vườn đóng kín hơn là bảo vệ người dùng, và là một thay đổi khó chịu được âm thầm đưa vào trong một bản phát hành nhỏ
    May là tôi tìm được cách xử lý bằng xattr -d com.apple.quarantine ~/binary, nhưng nếu cách này cũng không còn hoạt động thì tôi không biết phải làm gì
    Tôi rất thích chip M1~M4 và cũng không muốn nghe tiếng quạt nữa, nhưng nếu tình hình tiếp tục tệ đi, tôi sẽ chuyển sang bản phân phối đầu tiên hỗ trợ đúng phần cứng này
    macOS dù có vấn đề vẫn là một hệ điều hành đẹp và đủ dùng, nhưng Apple mỗi năm lại chỉnh sửa từng chút và nhìn chung làm nó tệ hơn. Snow Leopard muôn năm

    • Tôi vẫn chưa cập nhật lên 15, nhưng cứ tưởng họ chỉ bỏ chức năng chạy phần mềm chưa ký bằng cách nhấp chuột phải rồi Open. Tôi hiểu là phải phê duyệt thủ công trong System Settings thông qua Gatekeeper
      Việc Apple đang từ từ “luộc ếch” theo hướng khóa macOS như iOS thì đúng 100%. Máy tính cá nhân của tôi đã chuyển sang Linux, và dấu hiệu đã lộ ra từ khi cơ chế notarization được công bố năm 2017
    • Thêm bối cảnh: hộp thoại hiển thị như sau
      “App” Not Opened
      Apple could not verify “App” is free of malware that may harm your Mac or compromise your privacy. [ Done ]
      Nút ? ở góc trên bên phải mở https://support.apple.com/guide/mac-help/apple-cant-check-ap..., trong đó nói rằng nếu muốn, người dùng có thể mở ứng dụng bằng cách tự vượt qua trong cài đặt Quyền riêng tư & Bảo mật
      Sau khi vào liên kết cài đặt, phải cuộn xuống để tìm bản sao thứ hai của cùng thông báo và bấm “Open Anyway”, rồi cảnh báo thứ ba sẽ hiện ra
      “Open ‘App’?”
      Apple is not able to verify that it is free from malware that could harm your Mac or compromise your privacy. Don’t open this unless you are certain it is from a trustworthy source. [ Done ] [ Open Anyway ]
      Để tiếp tục thì cần xác thực, và prompt xác thực hiển thị cảnh báo thứ tư: “You are attempting to open an app that may harm your Mac or compromise your privacy.”
      Theo https://developer.apple.com/support/compare-memberships/, để notarize ứng dụng thì cần là thành viên chính thức của Apple Developer Program giá $99/năm
    • Có thể tắt Gatekeeper, hoặc vào System Settings rồi bấm “Open Anyway”. Tất nhiên là phiền phức
    • Rốt cuộc, chuyển sang Asahi Linux cũng có vẻ là một lựa chọn
  • Tôi cập nhật iPhone 15 từ 17 lên 18.1 thì Safari bị crash, và Handoff từ iPhone sang MacBook không hoạt động. Chiều ngược lại thì chạy hoàn hảo. Cả hai đều thật sự gây bực bội

  • Điều buồn cười nhất khi nâng lên Sequoia là việc chạy chương trình trong debugger của Apple làm hỏng quá trình thiết lập kết nối mạng cục bộ
    Tôi có thể giao tiếp với thiết bị kết nối trực tiếp qua Ethernet khi chạy binary bình thường, nhưng dưới lldb thì không được. Cũng không có prompt nào xin phép kết nối mạng hiện lên
    Tôi mất hơn nửa ngày mới nhận ra rằng chỉ cần dùng debugger LLVM upstream là được

  • “Điều này thật tệ. Chúng tôi cũng nghĩ nó tệ, và các bạn cũng nghĩ nó tệ. Nhưng chúng tôi không thể sửa được. Apple phải sửa.”
    Vì vậy vài năm trước tôi đã từ bỏ macOS và chuyển sang Linux
    Đây không phải là chuyện hệ điều hành nào tốt hơn hay tệ hơn. Mọi phần mềm đều có lỗi. Điểm cốt lõi là khi những lỗi không thể tránh khỏi xuất hiện, thay vì chờ bản sửa từ bên trên, người dùng có quyền làm điều gì đó hay không

    • Về lý thuyết, trên Linux có thể làm cho Bluetooth, Wi‑Fi và chế độ ngủ sâu hoạt động, nhưng nếu hỏi thực tế tôi có tự sửa được không thì không. Không phải vì tôi chưa thử
      Nếu xét đến khả năng thực sự khắc phục khi máy tính dùng hằng ngày gặp vấn đề, tôi vẫn cho rằng macOS vượt trội áp đảo
    • Không chỉ vậy, nếu một bản cập nhật Linux làm hỏng cài đặt, ta có thể xác định cái gì bị hỏng và quay về phiên bản trước
      Trên macOS hay Windows, việc hoàn tác cập nhật thực tế không phải là một tính năng đúng nghĩa; rất khó nếu không cài lại toàn bộ, và ngày nay thậm chí còn không chắc có bộ cài phiên bản cũ hay không
    • Tôi cũng đang đi theo hướng này ở một mức độ nào đó. Tôi đã mua một chiếc M1 cũ và chỉ chạy Asahi Linux. Chủ yếu là để dùng OpenGL/Vulkan và bộ nhớ hợp nhất cho LLM cục bộ
      Tôi vẫn đang tìm các ứng dụng thay thế để chuyển hẳn khỏi chiếc Mac cũ
      Đặc biệt, tôi muốn tìm một công cụ sao lưu xuất sắc như SuperDuper. Tôi đã dùng nó 16 năm và trong thời gian đó cũng đã vài lần khôi phục toàn bộ. Cảm ơn các nhà phát triển đã tạo ra một công cụ đáng tin cậy
      Hình như tôi cũng từng dùng nó để di chuyển laptop, nhưng trên macOS mới nhất chắc những việc như vậy cũng đã trở nên rắc rối hơn
      Dù sao thì tôi hy vọng Apple sẽ sớm sửa lỗi này. Nếu không, tôi sẽ chờ đến ngày nào đó được mua giấy phép Linux của SuperDuper
    • Tôi đang nín thở chờ đến ngày có thể chạy Linux tăng tốc phần cứng đầy đủ trên MacBook Pro hoặc một laptop có chất lượng tương đương
      Nhìn khắp thế giới công nghệ, vì những phần mềm tệ bị áp đặt bởi các hành vi phản cạnh tranh, tiềm năng trở thành những sản phẩm tuyệt vời đang bị chặn lại ngay trước tầm tay
      Apple là công ty giàu nhất hành tinh. Làm ơn hãy cho phép các thiết bị “Pro” được dùng cho công việc chuyên nghiệp
      Hiện tôi đang ở nước ngoài, và thực tế là tôi đang viết bài này trên một mini PC AMD, còn MacBook Pro được dùng như màn hình phụ điều khiển qua ứng dụng chia sẻ chuột và bàn phím dựa trên mạng
      MBP đã bị nerf bằng phần mềm khiến tôi không thể dùng nó cho mọi công việc của mình, nên lời hứa về tính di động bị tổn hại nghiêm trọng. Việc phải mang theo máy tính thứ hai thật sự rất đau