如何在 Ubuntu 18.04 上更新固件
固件
![](/data/attachment/album/201809/11/101654yjcgatrggtpccoc1.jpg)


通常，Ubuntu 和其他 Linux 中的默认软件中心会处理系统固件的更新。但是如果你遇到了错误，你可以使用 `fwupd` 命令行工具更新系统的固件。


我使用 [Dell XPS 13 Ubuntu 版本](https://itsfoss.com/dell-xps-13-ubuntu-review/)作为我的主要操作系统。我全新[安装了 Ubuntu 18.04](https://itsfoss.com/install-ubuntu-dual-boot-mode-windows/)，我对硬件兼容性感到满意。蓝牙、外置 USB 耳机和扬声器、多显示器，一切都开箱即用。


困扰我的一件事是软件中心出现的一个[固件](https://en.wikipedia.org/wiki/Firmware)更新。


![Updating firmware in Ubuntu](/data/attachment/album/201809/11/101719xayw37jo21by3ss2.png)


单击“更新”按钮会在几秒钟后出现错误。


![Updating firmware in Ubuntu](/data/attachment/album/201809/11/101719gu00s88q9fpx37sh.jpg)


错误消息是：



> 
> Unable to update “Thunderbolt NVM for Xps Notebook 9360”: could not detect device after update: timed out while waiting for device
> 
> 
> 


在这篇文章中，我将向你展示如何在 [Ubuntu](https://www.ubuntu.com/) 中更新系统固件。


### 在 Ubuntu 18.04 中更新固件


![How to update firmware in Ubuntu](/data/attachment/album/201809/11/101720sznuwxe8sngrc8oo.png)


有一件事你应该知道 GNOME Software（即 Ubuntu 18.04 中的软件中心）也能够更新固件。但是在由于某种原因失败的情况下，你可以使用命令行工具 `fwupd`。


[fwupd](https://fwupd.org/) 是一个开源守护进程，可以处理基于 Linux 的系统中的固件升级。它由 GNOME 开发人员 [Richard Hughes](https://github.com/hughsie/fwupd) 创建。戴尔的开发人员也为这一开源工具的开发做出了贡献。


基本上，它使用 LVFS —— <ruby> Linux 供应商固件服务 <rt>  Linux Vendor Firmware Service </rt></ruby>。硬件供应商将可再发行固件上传到 LVFS 站点，并且多亏 `fwupd`，你可以从操作系统内部升级这些固件。`fwupd` 得到了 Ubuntu 和 Fedora 等主要 Linux 发行版的支持。


首先打开终端并更新系统：



```
sudo apt update && sudo apt upgrade -y
```

之后，你可以逐个使用以下命令来启动守护程序，刷新可用固件更新列表并安装固件更新。



```
sudo service fwupd start
```

守护进程运行后，检查是否有可用的固件更新。



```
sudo fwupdmgr refresh
```

输出应如下所示：



```
Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz
Downloading…                         [****************************]
Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc
```

在此之后，运行固件更新：



```
sudo fwupdmgr update
```

固件更新的输出可能与此类似：



```
No upgrades for XPS 13 9360 TPM 2.0, current is 1.3.1.0: 1.3.1.0=same
No upgrades for XPS 13 9360 System Firmware, current is 0.2.8.1: 0.2.8.1=same, 0.2.7.1=older, 0.2.6.2=older, 0.2.5.1=older, 0.2.4.2=older, 0.2.3.1=older, 0.2.2.1=older, 0.2.1.0=older, 0.1.3.7=older, 0.1.3.5=older, 0.1.3.2=older, 0.1.2.3=older
Downloading 21.00 for XPS13 9360 Thunderbolt Controller…
Updating 21.00 on XPS13 9360 Thunderbolt Controller…
Decompressing…    [***********]
Authenticating…      [***********] 
Restarting device… [***********]
```

这应该处理了在 Ubuntu 18.04 中的固件更新。我希望这篇文章可以帮助你在 Linux 中进行固件更新。


如果你有任何问题或建议，请在下面的评论栏留言。




---


via: <https://itsfoss.com/update-firmware-ubuntu/>


作者：[Abhishek Prakash](https://itsfoss.com/author/abhishek/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


OK
![Warp Terminal](/assets/images/warp-terminal.webp)


![Warp Terminal](/assets/images/warp-terminal.webp)

You know how to [update your Ubuntu system for all the software](https://itsfoss.com/update-ubuntu/). You might wonder about updating firmware in Ubuntu.

Like the software, Ubuntu also provides firmware updates for all the supported hardware through various channels. Some firmware updates come through the manufacturer like Intel while some come from the community. This is what I have seen with my [Dell XPS laptops](https://itsfoss.com/dell-xps-13-ubuntu-review/).

*Usually, the default software center in Ubuntu and other Linux distributions handle the update of the firmware of your system. But if you encounter errors with it, you can use fwupd command line tool for updating the firmware of your system.*

I’ll show both methods to you in this tutorial.

## Method 1: Updating firmware in Ubuntu and other Linux via Software Center

**If you are using a laptop, keep it on AC power otherwise some firmware updates will refuse to be installed.**

Open the **Software Center** application on your distribution and go to the Updates tab. You might see both software and firmware updates listed here. The firmware updates are under the ‘**Device Firmware**‘ section.

You just have to click on the **Update** button in front of the available firmware updates.

![Firmware updates in Ubuntu software center](https://itsfoss.com/content/images/wordpress/2021/04/firmware-updates-ubuntu-800x524.png)

It takes some time to install the firmware updates and you may see errors like ‘unable to update’ or ‘device cannot be used’ or something similar.

*Unable to update “Thunderbolt NVM for Xps Notebook 9360”: could not detect device after update: timed out while waiting for device*

![Updating firmware in Ubuntu](https://itsfoss.com/content/images/wordpress/2018/08/ubuntu-firmware-update-error-2.jpg)

Please do not panic just yet. I have noticed that despite the error message, the firmware is updated.

Now, the important thing to know is that the firmware updates are installed when you [restart your Linux system](https://itsfoss.com/schedule-shutdown-ubuntu/). You’ll see messages about firmware updates on the power on screen. If there were more than one firmware update, they will be installed one by one.

![Firmware update in progress in Ubuntu](https://itsfoss.com/content/images/wordpress/2021/04/firmware-update-in-progress-ubuntu.jpg)

Once it completes, your system should turn off. You can turn it on again afterwards and enjoy your systems with the latest firmware.

## Method 2: Updating firmware in Ubuntu via command line

The software center in Ubuntu is capable of updating the firmware. But in situations when it fails for some reasons, you can use the command line tool fwupd.

[fwupd](https://fwupd.org/?ref=itsfoss.com) is an open source daemon that handles firmware upgrades in Linux based systems. It is created by GNOME developer [Richard Hughes](https://github.com/hughsie/fwupd?ref=itsfoss.com). Developers from Dell also contributed to the development of this open source tool.

Basically, it utilizes the LVFS, Linux Vendor Firmware Service. Hardware vendors upload redistributable firmware to the LVFS site and thanks to fwupd, you can upgrade those firmware from inside the operating system itself. fwupd is supported by major Linux distributions like Ubuntu and Fedora.

### Step 1: Check if your system is supported by LVFS

Since LVFS depends upon hardware vendors, it’s a good idea to check if your system manufacturer supports this feature or not.

Find out your system model and then go to this web page and see if it’s listed:

[Check if your system uses LVFS](https://fwupd.org/lvfs/devicelist?ref=itsfoss.com)

### Step 2: Using fwupd for updating fimrware

Normally, fwupd should already be installed on your Linux system. If not, install it using the package manager of your distribution.

Open a terminal and update your system first (commands applicable for Debian and Ubuntu-based distributions):

`sudo apt update && sudo apt upgrade -y`


After that you can use the following commands one by one to start the daemon, refresh the list of available firmware updates and install the firmware updates.

`sudo service fwupd start`


Once the daemon is running, check if there are any firmware updates available.

`sudo fwupdmgr refresh`


The output should look like this:

Fetching metadata https://cdn.fwupd.org/downloads/firmware.xml.gz

Downloading… [****************************]

Fetching signature https://cdn.fwupd.org/downloads/firmware.xml.gz.asc

After this, run the firmware update:

`sudo fwupdmgr update`


The output of the firmware update could be similar to this:

No upgrades for XPS 13 9360 TPM 2.0, current is 1.3.1.0: 1.3.1.0=same

No upgrades for XPS 13 9360 System Firmware, current is 0.2.8.1: 0.2.8.1=same, 0.2.7.1=older, 0.2.6.2=older, 0.2.5.1=older, 0.2.4.2=older, 0.2.3.1=older, 0.2.2.1=older, 0.2.1.0=older, 0.1.3.7=older, 0.1.3.5=older, 0.1.3.2=older, 0.1.2.3=older

Downloading 21.00 for XPS13 9360 Thunderbolt Controller…

Updating 21.00 on XPS13 9360 Thunderbolt Controller…

Decompressing… [***********]

Authenticating… [***********]

Restarting device… [***********]

This should handle the firmware update in Ubuntu. I hope this quick tip helped you with firmware updates in Linux.

If you have questions or suggestions, please feel free to use the comment section below.