Cách cập nhật BIOS, UEFI hoặc Microcode từ Linux

Ảnh chụp chết hoặc ảnh hiển vi của Intel XEON E5

Bạn biết đấy cách cập nhật BIOS từ PC của bạn? Với các lỗ hổng như Spectre, Meltdown, và tất cả các biến thể của nó và các lỗ hổng bảo mật khác được phát hiện trong phần cứng, đặc biệt là trong CPU, bạn chắc chắn đã đọc nhiều lần rằng nhiều lỗ hổng được giải quyết bằng cách biết cách cập nhật BIOS hoặc UEFI của máy tính. ., vì cần có bản cập nhật hoặc bản vá cho vi mã được CPU sử dụng và do đó thay đổi cách hoạt động của Bộ điều khiển CPU để nó không dễ bị tổn thương trước các mối đe dọa đã nêu.

Ngoài các lỗ hổng, phần sụn có thể được cập nhật vì nhiều lý do khác, chẳng hạn như sự cố thiết bị phần cứng, lỗi liên tục không thể giải thích được trong phần mềm, cập nhật để thêm một số chức năng, v.v. Nhưng như tôi đã nói, trong những tháng gần đây, chúng ta đã nghe thuật ngữ này quá nhiều lần do các vấn đề bảo mật khá nghiêm trọng trong một số trường hợp và điều đó liên quan đến cách mà các bộ vi xử lý hiện đại xử lý một số bước nhảy, bộ nhớ cache, FPU và thực thi đầu cơ, mặc dù trong các trường hợp khác, chúng đã được phát hiện trong các phần khác của hệ thống như chipset hoặc bộ xử lý bảo mật nhất định được tích hợp trong các nền tảng này ...

Phần sụn là gì?

Chip BIOS của bo mạch chủ

Tất cả chúng ta đều khá rõ ràng về phần cứng (phần vật lý và có thể sờ thấy được của máy tính, tức là thiết bị điện tử) và phần mềm (phần logic không thể chạm vào: chương trình) là gì. Nhưng giữa phần cứng và phần mềm, hay nói đúng hơn là giữa phần cứng và hạt nhân của hệ điều hành có một cái gì đó khác: phần sụn. Phần mềm cơ sở có trong tất cả các thiết bị và bộ phận của máy tính, từ chuột, ổ đĩa quang, đến GPU và CPU hoạt động bằng mã vi mô.

Nhưng nó là gì? Vâng, bạn có thể nói rằng là mã, có nghĩa là, phần mềm và do đó là một thành phần hợp lý nhưng lần này nó không thể thay đổi được. Nó hoạt động ở mức thấp, và điều khiển trực tiếp các chức năng của mạch điện tử. Phần sụn này, với sự trợ giúp của bộ điều khiển hoặc trình điều khiển, cho phép khi hạt nhân hệ điều hành ra lệnh cho phần cứng thực hiện một tác vụ, nó sẽ thực thi nó. Chương trình hoặc mã này đã được nhà sản xuất thiết bị ghi lại trong bộ nhớ thường là flash, hoặc một số loại ROM như EEPROM.

Nhưng một trong những phần sụn mà chúng tôi quan tâm nhất trong bài viết này là BIOS hoặc UEFI của một hệ thống, vì nó là một phần sụn rất quan trọng có nhiều chức năng khác nhau trong quá trình khởi động và vận hành thiết bị. Ví dụ: mã này phụ trách việc kích hoạt máy trong quá trình khởi động, phát hiện ổ cứng hoặc phương tiện có sẵn hệ điều hành, thực hiện một số kiểm tra can thiệp vào phần sụn khác của các thành phần và thiết bị ngoại vi, đồng thời trao quyền kiểm soát cho hạt nhân khi hệ thống bắt đầu bắt đầu ...

Tại sao cập nhật nó lại ảnh hưởng đến CPU?

Chân CPU

... và điều này liên quan đến CPU, đủ tốt. Hóa ra CPU có một đơn vị điều khiển, Đơn vị điều khiển này là một mạch có trách nhiệm điều khiển phần còn lại của bộ vi xử lý hoặc CPU, chẳng hạn như giải mã các lệnh và làm cho dữ liệu với các toán hạng đi đến các thanh ghi thích hợp và sau đó kích hoạt một số đơn vị chức năng như ALU hoặc FPU và nó thực hiện một số thao tác trên dữ liệu tùy thuộc vào loại lệnh đang được thực thi. Các hướng dẫn này lần lượt đến từ chương trình hoặc mã phần mềm đang được xử lý tại thời điểm đó, vì như bạn nên biết, các chương trình được tạo thành từ một loạt các lệnh tuần tự.

Như bạn có thể tưởng tượng, bộ phận điều khiển này hoạt động theo cách mà nhà sản xuất hoặc nhà thiết kế đã tạo ra nó. Trong một số trường hợp cụ thể, đơn vị điều khiển có thể có dây, tức là, chúng thường khá nhanh nhưng không linh hoạt lắm, vì chúng được thực hiện trực tiếp với một mạch rất cụ thể. Mặt khác, cũng có những cái có thể lập trình được, tức là, một mạch "mở" hơn có thể hoạt động theo cách này hay cách khác theo một mã vi mô hoặc phần sụn. Do đó, nếu chúng ta thay đổi chương trình cơ sở hoặc mã vi mô, chúng ta có thể tạo đơn vị điều khiển và do đó CPU có thể hoạt động khác hoặc sửa một số lỗi hoặc lỗ hổng.

Tôi không muốn nói quá về kỹ thuật, tôi muốn bài viết này tiếp cận được càng nhiều người càng tốt và mọi thứ tôi muốn nói đều dễ hiểu ... Và trong nhiều máy, hóa ra mã này thường được tích hợp vào BIOS hoặc UEFI , mặc dù đôi khi hạt nhân có thể cập nhật vi mã trong mỗi lần khởi động, lưu bản cập nhật hoặc bản vá trong bộ nhớ dễ bay hơi, nghĩa là trong RAM, tránh sự cần thiết phải thay đổi BIOS / UEFI.

Làm cách nào để cập nhật BIOS / UEFI từ Linux?

Giao diện UEFI ASUS

Để cập nhật BIOS / UEFI từ Linux hoặc vi mã, hãy chia nhỏ cả hai thủ tục.

Trước khi thực hiện cập nhật vi mã, điều rất quan trọng là bạn phải cập nhật firmware BIOS / UEFIvì nếu không nó có thể không hoạt động. Vì vậy, hãy kiểm tra trang web của nhà cung cấp công ty của bạn như Phoenix, Award, v.v., hoặc trang web hỗ trợ kỹ thuật của mẫu bo mạch chủ của bạn, những trang web này thường có các gói cập nhật các hệ thống này.

Cập nhật BIOS / UEFI là một cái gì đó tế nhị như bạn có thể thấy trong phần cuối cùng về rủi ro. Đó là lý do tại sao tôi khuyên bạn không nên làm điều đó nếu bạn không chắc mình đang làm gì và nếu bạn muốn cập nhật hoặc bạn cần, nhưng bạn không có đủ kiến ​​thức, hãy luôn tham khảo ý kiến ​​của người có chuyên môn. Ngoài ra, tôi khuyên bạn nên xem qua các dự án như fwupd, BIOSDisck, Flashrom, v.v., đây là những công cụ rất thiết thực sẽ giúp chúng tôi trong quá trình này.

Một trong những cái tôi thích nhất là flashrom, nói về một gói cung cấp cho chúng tôi một công cụ cho phép xác định, đọc, ghi, xác minh và xóa các chip flash. Điều này không chỉ phục vụ để flash BIOS / UEFI / CoreBoot, nó còn phục vụ để sửa đổi các bộ nhớ flash khác của card mạng, GPU, v.v., trong các thiết bị khác có phần sụn có thể sửa đổi. Nó cũng hỗ trợ một số hệ điều hành và vô số bánh răng và mô hình thiết bị và bo mạch.

  • Cài đặt gói flashrom trong bản phân phối của bạn bằng trình quản lý gói mà bạn thường sử dụng, vì nó là một công cụ nằm trong số các kho lưu trữ các bản phân phối quan trọng nhất.
  • Hoa Kỳ root hoặc sudo, vì để sử dụng nó, bạn cần có đặc quyền là một cái gì đó tế nhị.
  • Xác định phần sụn mà chúng tôi sử dụng chỉ bằng cách thực hiện lệnh:
flashrom

  • Tôi khuyên bạn nên làm một sao lưu ROM hiện tại của bạn, trong trường hợp bạn thấy rằng bản cập nhật mới không hoạt động và bạn muốn quay lại. Cho nó:
flashrom -r copia_seguridad.bin

  • Vâng, tôi biết chúng tôi có ROM mới mà chúng tôi đã tải xuống từ nguồn ĐÁNG TIN CẬY, chúng tôi có thể sử dụng lệnh sau để flash, ví dụ: nếu bản cập nhật mới của chúng tôi có tên uefi-sm.bin:
flashrom -wv uefi-sm.bin

Để biết thêm thông tin, hãy tham khảo hướng dẫn sử dụng với người đàn ông flashrom.

Cập nhật vi mã:

Để cập nhật vi mã của CPU của chúng tôi, mà không cần chạm vào BIOS / UEFI, nghĩa là, với một sửa đổi đơn giản trong nhân Linux, bạn có thể chọn cài đặt các gói cần thiết cho CPU của mình. Ví dụ: nếu bạn có một CPU AMD hiện đại, thường cài đặt gói gọi amd64-vi mãvà đối với Intel, gói mã vi mô intel (nếu bạn sử dụng openSUSE, SUSE, RHEL, CentOS, v.v., gói được gọi là vi mã_ctl, và đối với Arch intel-ucode hoặc amd-ucode ...) mà bạn có thể tìm thấy trên các trang web đáng tin cậy ... (nghĩa là, nếu đó là máy x86, nếu là ARM hoặc khác, hãy truy cập trang web của nhà sản xuất). Insisto a pesar de parecer un pesado, no descargues este tipo de paquetes desde fuentes desconocidas, es muy importante. Bien, ahora que ya lo tenemos descargado e instalado, puede que el procedimiento sea diferente en cada distribución y que implique activar algunos paquetes o actualizaciones restringidos como los propietarios…

Với các gói đó được cài đặt và cài đặt hệ thống tham chiếu đến các bản cập nhật được cấu hình tốt, lcác bản cập nhật bảo mật riêng cài đặt hệ điều hành sẽ bao gồm loại bản vá này cho mã vi mô nếu một số lỗ hổng nghiêm trọng đã được phát hiện, chẳng hạn như Spectre, Meltdown, v.v.

Nếu muốn, bạn có thể lấy thông tin vi mã từ bản phân phối của mình bằng cách sử dụng:

dmesg | grep microcode

Và với điều đó, chúng tôi sẽ có được chi tiết vi mãTrên thực tế, nếu chúng ta đã thực hiện lệnh này trước khi cài đặt các gói mà tôi đã đề cập trước đó (sau khi cài đặt cần phải khởi động lại) và sau đó, chúng ta sẽ thấy rằng nó hiển thị cho chúng ta những thay đổi nếu có bản cập nhật có sẵn đã được cài đặt.

Đôi khi AMD, Intel và các nhà sản xuất hoặc nhà thiết kế CPU khác cung cấp tarball với các đốm màu nhị phân để cập nhật vi mã hoặc chương trình cơ sở. Nếu bạn đã tải xuống một trong các gói này từ một nơi đáng tin cậy, hãy làm theo hướng dẫn do nhà phân phối cung cấp hoặc tham khảo các tệp README.

Nguy hiểm và mẹo trước khi cập nhật BIOS

Bo mạch chủ để tái chế

Cập nhật vi chương trình cơ sở hoặc vi mã của CPU có nghĩa là trong hầu hết các trường hợp, cập nhật các mã đã đóng được cung cấp bởi các nhà cung cấp CPU mà chúng tôi có, các trình điều khiển hạt nhân đã đóng (các đốm màu nhị phân), v.v. Tôi muốn làm rõ điều này, vì nội dung và cách thức hoạt động của nó vẫn chưa được biết và có vẻ hợp lý mà bạn nên biết. Về nguyên tắc, nếu bạn không sử dụng phần cứng miễn phí, bạn không có lựa chọn nào khác ngoài việc tin tưởng nhà sản xuất hoặc nhà thiết kế CPU hoặc bo mạch chủ của bạn, nhưng có, đừng bao giờ tải xuống vi mã hoặc phần sụn từ các trang web không chính thức, vì đó là một điều gì đó rất tế nhị.

Trong thực tế không chỉ nó tinh tế vì lý do bảo mật, vì bạn cũng có thể làm cho thiết bị hoàn toàn không sử dụng được. Ngay cả khi bạn đã tải xuống chương trình cơ sở từ một trang web có uy tín, có thể xảy ra sự cố trong quá trình này, chẳng hạn như mất điện và dẫn đến việc cài đặt bản cập nhật và chương trình cơ sở bị hỏng hoàn toàn, điều đó có nghĩa là bạn có thể đã nghĩ đến việc bỏ tiền ra mua. một bo mạch chủ mới.

Đây là những gì được gọi bằng thuật ngữ gạch trong tiếng lóng phần cứngTức là để phần cứng của bạn như một cục gạch, không có bất kỳ loại tiện ích nào. Với điều này, tôi muốn nói với bạn rằng hãy thận trọng và chúng tôi không chịu trách nhiệm về những gì có thể xảy ra nếu bạn quyết định cập nhật bất kỳ chương trình cơ sở nào hoặc flash BIOS / EFI. Nhưng hãy cẩn thận, điều này không phải lúc nào cũng tiềm ẩn rủi ro, như tôi đã nói với bạn trước đây, không phải lúc nào cũng cần phải "đụng" đến BIOS / EFI, cũng có những bản cập nhật chỉ dừng lại ở mức OS và không bao hàm những rủi ro đó .. .

Tôi hy vọng hướng dẫn này hữu ích, bất kỳ câu hỏi hoặc góp ý, đừng quên để lại của bạn bình luận...


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Ruben Horace Specogna dijo

    xin chào buổi sáng, tôi muốn cài đặt xubuntu 14 trên sổ ghi chép của mình, và tải xuống các tệp, cài đặt chúng nhưng khi nó yêu cầu khởi động lại từ khóa usb, tôi nhập bios và tôi không thể tìm thấy bộ nhớ flash trong menu khởi động, ai đó có thể giúp đỡ tôi, Từ đã cảm ơn bạn rất nhiều.

  2.   Joseph Louis Mateo dijo

    Xin chào bạn bè:

    Tôi nghĩ rằng bài báo là xuất sắc mặc dù "nguy hiểm" đối với những người trong chúng ta, những người mới và sợ hãi.

    Tôi đã bỏ lỡ một bài báo hay trong một thời gian dài giúp chúng ta hiểu cách một hệ thống máy in đa chức năng như của tôi (Canon MG 7150) hoạt động qua Wifi.

    Với Linux, tôi chưa bao giờ làm cho nó hoạt động hoàn toàn. Tôi đã cố gắng làm cho máy in được kết nối bằng USB hoạt động, nhưng không bao giờ máy quét, không bằng wifi hay bằng cáp.

    Đó là lý do tại sao hôm nay tôi đưa ra chủ đề này, đồng thời tôi cảm ơn các bạn đã cung cấp cho chúng tôi những bài báo có chất lượng như hiện tại; nhưng đồng thời, tôi muốn một người biết cách làm điều đó, giúp chúng tôi dễ dàng hơn trong việc làm cho hệ thống nói trên hoạt động.

    Cảm ơn và Trân trọng

  3.   Gabriel dijo

    Trước tiên, hãy xem trong BIOS nếu có tùy chọn MULTIBOOT (nơi bạn phải kích hoạt nó), nếu không, nó tồn tại, để khởi động bằng USB nói chung khi bật PC, bạn phải giữ phím F8 một lúc (trong các máy tính khác nó thường là F12) và ở đó menu khởi động nhảy hiển thị các tùy chọn: đĩa cứng, CD, USB. Trong trường hợp có UEFI, USB phải được tạo bằng tùy chọn UEFI nếu không sẽ không nhận dạng được