在 Linux 上安装 Visual Studio Code

Visual Studio Code 在 Linux 上可通过官方的 Debian、RPM 和 Snap 软件包安装。此外,Arch Linux 和 Nix 还提供由社区维护的软件包。

在 Linux 上安装 VS Code

选择与您的 Linux 发行版相匹配的软件包安装方法。

Debian 和基于 Ubuntu 的发行版
  1. 下载 .deb 软件包

  2. 使用图形化软件中心安装该软件包,或从命令行安装

    sudo apt install ./<file>.deb
    
    # On older Linux distributions, run these commands instead:
    # sudo dpkg -i <file>.deb
    # sudo apt-get install -f # Install dependencies
    
    注意

    其他二进制文件可在 VS Code 下载页面获取。

.deb 软件包会提示安装 apt 软件源和签名密钥,这可以通过系统包管理器启用自动更新。

对于非交互式安装,请在安装 .deb 软件包之前运行以下命令,以自动安装 apt 软件源和签名密钥

echo "code code/add-microsoft-repo boolean true" | sudo debconf-set-selections

手动安装 apt 软件源

  1. 安装签名密钥

    sudo apt install wget gpg &&
    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft.gpg
    
  2. 创建包含以下内容的 /etc/apt/sources.list.d/vscode.sources 文件

    Types: deb
    URIs: https://packages.microsoft.com/repos/code
    Suites: stable
    Components: main
    Architectures: amd64,arm64,armhf
    Signed-By: /usr/share/keyrings/microsoft.gpg
    
  3. 更新软件包缓存并安装软件包

    sudo apt update &&
    sudo apt install code # or code-insiders
    
注意

由于手动签名流程和发布系统,Debian 软件源可能会延迟最多三小时,无法立即包含最新版本的 VS Code。

RHEL、Fedora 和基于 CentOS 的发行版

微软在 yum 软件源中为基于 RHEL、Fedora 和 CentOS 的发行版提供稳定的 64 位 VS Code 软件包。

  1. 安装密钥和 yum 软件源

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc &&
    echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null
    
  2. 在 Fedora 22 及更高版本上,使用 dnf 更新软件包缓存并安装软件包

    dnf check-update &&
    sudo dnf install code # or code-insiders
    

    在较旧版本上,请使用 yum

    yum check-update &&
    sudo yum install code # or code-insiders
    
注意

由于手动签名流程和发布系统,yum 软件源可能会延迟最多三小时,无法立即包含最新版本的 VS Code。

Snap 软件包

VS Code 作为 Snap 软件包官方发布在 Snap Store 中。

Get it from the Snap Store

使用以下命令安装 Snap 软件包

sudo snap install --classic code # or code-insiders

安装后,Snap 守护程序会在后台自动更新 VS Code。每当有新更新可用时,VS Code 都会显示产品内更新通知。

注意

如果您的 Linux 发行版中不可用 snap,请查看 安装 snapd 指南

官方 Snap 文档了解有关 snap 的更多信息。

openSUSE 和基于 SLE 的发行版

RHEL、Fedora 和 CentOS 面板中的 yum 软件源也适用于 openSUSE 和基于 SLE 的系统。

  1. 安装密钥和 yum 软件源

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc &&
    echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/zypp/repos.d/vscode.repo > /dev/null
    
  2. 更新软件包缓存并安装软件包

    sudo zypper install code
    
Arch Linux AUR 软件包

用于 VS Code 的 Arch 用户软件仓库 (AUR) 软件包由社区维护。

有关安装详情,请参阅 Arch Linux wiki 中关于安装 AUR 软件包的文章。

Nix 软件包

nixpkgs 软件源中的 VS Code Nix 软件包由社区维护。

使用 Nix 安装 VS Code

  1. 在您的 config.nix 中将 allowUnfree 选项设置为 true。

  2. 运行以下命令

    nix-env -i vscode
    
手动 RPM 软件包

当无法通过软件源安装时,手动下载并安装 VS Code .rpm 软件包。除非安装了软件源,否则自动更新将无法生效。

使用您的包管理器安装下载的 .rpm 软件包,例如使用 dnf

sudo dnf install <file>.rpm
注意

其他二进制文件可在 VS Code 下载页面获取。

更新说明

VS Code 每周发布新版本。如果正确安装了 VS Code 软件源,系统包管理器将像处理系统上的其他软件包一样处理自动更新。

注意

对于 Snap 软件包,更新是自动的并在后台运行。

将 VS Code 配置为默认文本编辑器

xdg-open

将 VS Code 设置为 xdg-open 使用的文本文件(text/plain)的默认文本编辑器

xdg-mime default code.desktop text/plain

Debian alternatives 系统

基于 Debian 的发行版支持通过 Debian alternatives 系统设置默认 editor,而无需关注 MIME 类型。使用以下命令将 VS Code 设置为默认编辑器

sudo update-alternatives --set editor /usr/bin/code

如果 VS Code 是通过 Snap 软件包安装的,请改用此命令

sudo update-alternatives --set editor /snap/bin/code

如果 VS Code 未显示为默认 editor 的替代项,请将其注册

sudo update-alternatives --install /usr/bin/editor editor $(which code) 10

使用自定义标题栏

自定义标题栏通过键盘导航和屏幕阅读器提供主题支持和更好的无障碍功能。由于 Linux 的桌面环境和窗口管理器各不相同,这些优势可能并不总能很好地体现在 Linux 上。因此,自定义标题栏在 Linux 上默认处于禁用状态。

为了在使用屏幕阅读器时改善无障碍体验,请在无障碍模式下运行时启用自定义标题栏。

使用 Window: Title Bar Style ( window.titleBarStyle 在 VS Code 中打开 在 VS Code Insiders 中打开 ) 设置配置标题栏

  • custom:使用自定义标题栏。
  • native:使用操作系统标题栏。

通过 WSL 在 Linux 上进行开发

使用 VS Code 进行 Linux 开发的另一种选择是使用装有 Windows Subsystem for Linux (WSL) 的 Windows 机器。

通过 WSL,可以在 Windows 上安装和运行 Linux 发行版,以便在 Windows 机器上进行本地工作的同时,在 Linux 上开发和测试源代码。WSL 支持从 Microsoft Store 获取的 Linux 发行版,例如 Ubuntu、Debian、SUSE 和 Alpine。

配合 WSL 扩展,VS Code 能够在 WSL 上的 Linux 发行版上下文中运行时提供编辑和调试支持。

请参阅 在 WSL 中开发 文档以了解更多信息,或尝试 在 WSL 中工作 入门教程。

安装之后

安装 VS Code 后,完成开发工作流的设置

常见问题

未安装 git 软件包

当包管理器的列表过时时,安装过程中可能会出现此错误。更新包管理器并重新安装

# For .deb
sudo apt-get update

# For .rpm on Fedora 21 and earlier
sudo yum check-update

# For .rpm on Fedora 22 and later
sudo dnf check-update
与来自其他软件源的 VS Code 软件包冲突

某些发行版(例如 Pop!_OS)提供了它们自己的 code 软件包。为确保使用官方的 VS Code 软件源,请创建一个名为 /etc/apt/preferences.d/code 的文件,其内容如下

Package: code
Pin: origin "packages.microsoft.com"
Pin-Priority: 9999
Debian 与将文件移至回收站

如果在 Debian 上的 VS Code 资源管理器中删除文件失败,则可能是缺少 VS Code 所使用的回收站实现。

运行以下命令安装缺失的软件包

sudo apt-get install gvfs libglib2.0-bin
“Visual Studio Code 无法监视此大型工作区中的文件更改”(错误 ENOSPC)

此通知表明 VS Code 文件监视器的文件句柄耗尽。打开包含许多文件的工作区时,通常会发生这种情况。在调整平台限制之前,请将大型文件夹(例如 Python .venv)添加到 files.watcherExclude 在 VS Code 中打开 在 VS Code Insiders 中打开 设置中。其他正在运行的应用程序也可能会消耗文件句柄,因此关闭其他应用程序可能会有所帮助。

通过运行以下命令查看当前限制

cat /proc/sys/fs/inotify/max_user_watches

通过编辑 /etc/sysctl.conf 并将此行添加到文件末尾,将限制提高到最大值。Arch Linux 和 Ubuntu 24.10 及更高版本使用 /etc/sysctl.d/*.conf 中的文件。

fs.inotify.max_user_watches=524288

加载新值

sudo sysctl --system

每个文件监视占用 1,080 字节。如果耗尽全部 524,288 个监视,上限约为 540 MiB。在内存受限的环境中,请选择较低的值。

另一个选择是使用 files.watcherExclude 在 VS Code 中打开 在 VS Code Insiders 中打开 设置 从 VS Code 文件监视器中排除特定的工作区目录。默认的 files.watcherExclude 在 VS Code 中打开 在 VS Code Insiders 中打开 值排除了 node_modules 以及 .git 下的一些文件夹。请添加 VS Code 不应跟踪的其他目录。

"files.watcherExclude": {
    "**/.git/objects/**": true,
    "**/.git/subtree-cache/**": true,
    "**/node_modules/*/**": true
}
我在 Ubuntu 中看不到中文字符

打开应用程序菜单,然后选择 文件 > 首选项 > 设置。在 Text Editor > Font 部分中,将 Font Family 设置为 Droid Sans Mono, Droid Sans Fallback

要直接编辑 settings.json 文件,请设置 editor.fontFamily 在 VS Code 中打开 在 VS Code Insiders 中打开

"editor.fontFamily": "Droid Sans Mono, Droid Sans Fallback"
在 Ubuntu 上,code bin 命令无法将窗口带到前台

当 VS Code 已在当前目录中打开时,在 Ubuntu 上运行 code . 不会将 VS Code 带到前台。这是可以通过 ccsm 更改的操作系统行为。

# Install
sudo apt-get update
sudo apt-get install compizconfig-settings-manager

# Run
ccsm

General > General Options > Focus & Raise Behavior 下,将 Focus Prevention Level 设置为 Off。此操作系统设置适用于所有应用程序,而不仅仅是 VS Code。

无法安装 .deb 软件包,因为出现“/etc/apt/sources.list.d/vscode.list: No such file or directory”错误

sources.list.d 不存在或当前用户没有权限创建文件时,可能会发生此错误。创建该文件夹和一个空的 vscode.list 文件

sudo mkdir /etc/apt/sources.list.d
sudo touch /etc/apt/sources.list.d/vscode.list
在 X 转发远程窗口时无法移动或调整窗口大小

如果使用 X 转发远程使用 VS Code,请使用原生标题栏来操作窗口。将 window.titleBarStyle 在 VS Code 中打开 在 VS Code Insiders 中打开 设置为 native

软件源更改了其 origin 值

如果出现类似以下内容的错误

E: Repository '...' changed its 'Origin' value from '...' to '...'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

使用 apt 代替 apt-get,并在提示时接受 origin 更改

sudo apt update
English 한국어 中文(简体) 中文(繁體)
© . This website operates independently and is not affiliated with or endorsed by Microsoft. All brand names, logos, and trademarks are the property of their respective owners.