开机启动模式

  • 进入grub

先使用ls命令,找到Ubuntu的安装在哪个分区:

 $ grub>ls

会罗列所有的磁盘分区信息,比方说:
(hd0,1),(hd0,5),(hd0,3),(hd0,2)
然后依次调用如下命令: X表示各个分区号码

如果/boot没有单独分区,用以下命令:

ls (hd0,X)/boot/grub

如果/boot单独分区,则用下列命令:

ls (hd0,X)/grub

正常情况下,会列出来几百个文件,很多文件的扩展名是.mod.lst.img,还有一个文件是grub.cfg。假设找到(hd0,5)时,显示了文件夹中的文件,则表示Linux安装在这个分区。

如果找到了正确的grub目录,则设法临时性将grub的两部分关联起来,方法如下:

grub>set root=(hd0,5)
grub>set prefix=(hd0,5)/boot/grub

然后调用如下命令,就可以显示出丢失的grub菜单了。

grub>normal

然后会出来启动的图形界面,点击进入Linux中,对grub进行修复。
进入ubuntu之后,在终端执行:

sudo update-grub

sudo grub-install /dev/sda

sda是你的硬盘号码,千万不要指定分区号码,例如sda1,sda5等都不对)
重启测试是否已经恢复了grub的启动菜单。

自动进入文本模式

$ systemctl get-default

输出 graphical.target or multi-user.target

设置
$ systemctl set-default multi-user.target

1.修改/etc/default/grub文件

/etc/default/grub

//图形模式
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

//文本模式
GRUB_CMDLINE_LINUX=”
改为 GRUB_CMDLINE_LINUX=”text”

GRUB_TERMINAL=console

//修改文版模式的分辨率
GRUB_GFXMODE=640x480

2.运行update-grup更新启动项

$>sudo update-grub
$>sudo systemctl set-default multi-user.target
$>sudo reboot

3.手动启动图形模式

$>sudo systemctl start lightdm
$>sudo systemctl start gdm

4.字体设置

$>sudo vim /etc/default/console-setup

自动进入GUI桌面

  • 禁用开机时启动GUI桌面设置
sudo systemctl set-default multi-user
  • 启用开机时启动GUI桌面设置
sudo systemctl set-default graphical
  • 从命令行手动启动GUI
sudo systemctl start gdm3

参考文献:悟空的修炼笔记

Display Enivronment

  • gdm3_sddm_lightdm

gdm3kdmlightdm均为display managers。它们提供图形登录并处理用户身份验证。

  • gdm3

gdm3gdm的继任者,后者是GNOME显示管理器。较新的gdm3使用最小版本的gnome-shell,并提供与GNOME3会话相同的外观。你可以安装它:

$ sudo apt-get install gdm3
$ sudo pacman -S gdm3
$ sudo systemctl enable gdm3
$ sudo systemctl start gdm3

或删除它

sudo apt-get remove gdm3
sudo pacman -R gdm3
sudo systemctl disable gdm3
  • kdm_sddm

kdm是KDE的显示管理器。但它在KDE5中已被弃用,而SDDM更有能力作为显示管理器,因此Kubuntu默认使用它。

你可以安装它:

sudo apt-get install sddm 

或删除它

sudo apt-get remove sddm
  • lightdm

LightDM是Canonical的显示管理器解决方案。它应该是轻量级的,默认情况下是Ubuntu,Xubuntu和Lubuntu。它是可配置的,提供各种迎宾主题。

你可以安装它:

sudo apt-get install lightdm lightdm-gtk-greeter
sudo pacman -S lightdm lightdm-gtk-greeter

或删除它

sudo apt-get remove lightdm lightdm-gtk-greeter
sudo pacman -R lightdm lightdm-gtk-greeter

显示管理切换

如果安装了多个显示管理器,则可以使用以下方法在它们之间进行选择

sudo dpkg-reconfigure gdm3

您可以在上面的命令中使用任何显示管理器的名称代替gdm3,它允许您在它们之间进行选择。您必须重新启动才能使更改生效。

sudo systemctl unmask gdm.service
sudo mv /etc/systemd/system/display-manager.service . -i
sudo systemctl enable gdm.service
sudo systemctl start gdm.service

要检查当前正在使用哪个显示管理器,请运行以下命令:

cat /etc/X11/default-display-manager

参考文献:啊里个东

Desktop Environment

​ 早期的 Linux 系统都是不带界面的,只能通过命令来管理,比如运行程序、编辑文档、删除文件等。Linux 中的桌面环境也是一个程序,它和内核不是绑定的,两者的开发也不是同步的;给不带界面的 Linux 系统安装上一个桌面环境,你就能看到各种漂亮的窗口,并能用鼠标点击它们了。每个Linux发行版都有自己的桌面环境,这意味着我们在网络上有很多选项可以替代默认的Linux桌面环境。

  • 查看桌面环境
echo $DESKTOP_SESSION

gnome

​ GNOME(the GNU Network Object Model Environment, GNU网络对象模型环境)是另一个流行的Linux桌面环境。 GNOME于1999年首次发布,现已成为许多Linux发行版默认的桌面环境(不过用得最多的是Red Hat Linux)。GNOME 被用作 Fedora 中的默认桌面环境,提供在几款流行的 Linux 发行版中,比如 Ubuntu、Debian、OpenSUSE 等。

​ GNOME 的特点是简洁、运行速度快,但是没有太多的定制选项,用户需要安装第三方工具来实现。GNOME 甚至不包括一些简单的调整选项,比如更改主题、更改字体等,就这两种基本的调整而言,用户都需要安装第三方工具。所以,GONME 适合那些不需要高度定制界面的用户。

​ 2011 年,GNOME 3 进行了重大更新,不再采用传统的 Windows 风格的界面,而是进行了全新的设计,惊艳了很多用户。GNOME 3 的这种行为也导致部分用户和开发人员不满,他们又开发了多款其他的桌面环境,比如 MATE 和 Cinnamon。

  • GNOME 优缺点:

  • 优点:简单易用,可通过插件来扩展功能。

  • 缺点:对插件的管理能力比较差,也缺少其它桌面环境拥有的许多功能。

GNOME 3.36 将在Ubuntu 20.04 LTS中使用.

  • 安装 gnome桌面
# ubuntu
sudo apt install ubuntu-gnome-desktop
sudo dpkg-reconfigure gdm3
sudo apt install gnome-tweaks 
# Archlinux
sudo pacman -S gnome gnome-tweaks
sudo pacman -S gdm
sudo systemctl disable sddm.service 
sudo systemctl enable gdm.service
sudo pacman -S gnome-shell
sudo pacman -S gnome-browser-connector 
  • 安装 gnome 扩展
    gnome插件主页
  • TopIcons
  • Google Earth Wallpaper
  • Clipboard Indicator
  • Workspace Indicator # included
  • Dash to Dock

更改系统主题

方法一:使用 gsettings 切换图标主题

运行以下命令更改图标主题(假设你要切换到 Adwaita 图标主题):

gsettings set org.gnome.desktop.interface icon-theme 'Adwaita'

如果你想切换回 breeze

gsettings set org.gnome.desktop.interface icon-theme 'breeze'

方法二:图形化界面更改主题

  1. 打开 “GNOME Tweak Tool”(如果没有安装,可以通过 sudo apt install gnome-tweaks 安装)。
  2. 在“外观”选项卡下,找到“图标”一项。
  3. 选择你喜欢的图标主题。

更改默认图标

🖼️ 改变所有 .py 文件的图标(文件属性图标)

🔍 1. 检查当前图标主题

gsettings get org.gnome.desktop.interface icon-theme

例如输出为 'Adwaita'

获取 .csv 文件的 MIME 类型

xdg-mime query filetype example.csv

常见输出是:

text/csv

🔧 2. 添加自定义图标

假设你使用的是 Adwaita 图标主题,图标路径可能在:

/usr/share/icons/Adwaita/

图标命名规范是:

mimetypes/text-csv.png (或 svg)

命名规则是:

MIME 类型中的 / 替换为 -
例如

MIME 类型 图标文件名
text/plain text-plain.png
text/csv text-csv.png
application/pdf application-pdf.png

示例步骤

  1. 准备一张 48x48 或 64x64 像素的图标,比如 python.png
  2. 将图标复制到对应目录:
sudo cp python.png /usr/share/icons/Adwaita/48x48/mimetypes/text-csv.png
  1. 更新图标缓存:
sudo update-icon-caches /usr/share/icons/Adwaita

✅ 覆盖优先级说明:

优先级顺序为:

  1. ~/.local/share/icons/<theme>/mimetypes/
  2. /usr/share/icons/<theme>/mimetypes/
  3. /usr/share/pixmaps/(备用图标)

更改默认打开程序

⚙️ 设置 .py 文件的默认打开程序

✅ 方法:使用 MIME 类型关联 .py → 对应程序

🔍 1. 找到 .py 的 MIME 类型

运行:

xdg-mime query filetype test.py

输出应该是:

text/x-python

🔧 2. 设置默认程序(以 VS Code 为例)

假设你想用 code 打开 .py 文件:

xdg-mime default code.desktop text/x-python

如果你想用其他程序(比如 Gedit):

xdg-mime default org.gnome.gedit.desktop text/x-python

.desktop 文件通常位于 /usr/share/applications/~/.local/share/applications/

✅ 3. 验证是否成功

xdg-mime query default text/x-python

注销或重启图形界面以生效

图标更改通常在你注销/重新登录后生效,或按下列方式刷新图形环境:

killall nautilus
nautilus &

或者重启桌面:

gnome-shell --replace &

xfce4

和 KDE 很像的一个桌面,但少了很多图像以适应低内存环境. 熟悉的桌面,极少的性能损失. Xfce是一种轻量级的桌面环境,它使用极少的系统资源。

  • 安装 xfce4桌面
sudo apt install xfce4
sudo apt-get install lightdm

sudo dpkg-reconfigure gdm3 % switch between lightdm
cat /etc/X11/default-display-manager % check current status
  • 设置 xfce4桌面
  • dock plankcairo-dock
    plank 设置 ctrl + 鼠标任意位置右击
    参考文献:TheGreatMaxwell
  • 亮度调节
# 亮度调节
sudo apt install xfce4-power-manager-data
sudo apt install  xfce4-power-manager*
  • 主题
# 美化
download a theme and mv to .themes % themes
sudo add-apt-repository -u ppa:snwh/ppa % icons
sudo apt install moka-icon-theme faba-icon-theme faba-mono-icons wallpapers
  • 终端
# 终端
sudo apt install terminator
cp .config/terminator/config .config/terminator/config_backup
# 编辑以下内容
vim .config/terminator/config
# -------------------------------------------
[global_config]
title_font = Ubuntu Mono 14[keybindings]
[keybindings]
[layouts]
[[default]]
    [[[child1]]]
    parent = window0
    type = Terminal
    [[[window0]]]
    parent = ""
    type = Window
[plugins]
[profiles]
[[default]]
    background_color = "#002b36"
    background_darkness = 0.91
    background_image = None
    background_type = transparent
    font = Ubuntu Mono 20
    foreground_color = "#e0f0f1"
    show_titlebar = False
    use_system_font = False
# -------------------------------------------
  • 卸载 xfce4桌面
sudo apt purge xfce4
sudo apt autoremove        

sudo apt remove nautilus gnome-power-manager gnome-screensaver gnome-termina* gnome-pane* gnome-applet* gnome-bluetooth gnome-desktop* gnome-sessio* gnome-user* gnome-shell-common compiz compiz* unity unity* hud zeitgeist zeitgeist* python-zeitgeist libzeitgeist* activity-log-manager-common gnome-control-center gnome-screenshot overlay-scrollba* && sudo apt-get install xubuntu-community-wallpapers && sudo apt-get autoremove

sudo dpkg-reconfigure lightdm
  • xfce默认壁纸的位置
/user/share/backgrounds/xfce
  • xfce4快捷键设置
settings -> keyboard -> application shortcuts -> add 
  • xfce桌面背景
/user/share/backgrounds/xfce

[Ref]

KDE 桌面系统

KDE(K Desktop Environment,K桌面环境)是基于Qt开发的,最初于1996年作为开源项目发布,现在 KDE 几乎是排名第一的桌面环境了,它会生成一个类似于Microsoft Windows的图形化桌面环境。KDE 和 Windows 比较类似,各位初学者相信都是 Windows 的用户,所以切换到 KDE 也不会有太大的障碍。许多流行的 Linux 发行版都提供了 KDE 桌面环境,比如 Ubuntu、Linux Mint、OpenSUSE、Fedora、Kubuntu、PC Linux OS 等。

KDE 项目组还还发了大量的可运行在 KDE 环境中的应用程序,包括 Dolphin(文件管理工具)、Konsole(终端)、Kate(文本编辑工具)、Gwenview(图片查看工具)、Okular(文档及PDF查看工具)、Digikam(照片编辑和整理工具)、KMail(电子邮件客户软件)、Quassel(IRC客户软件)、K3b(DVD刻录程序)、Krunner(启动器)等,它们都是默认安装的。

对 KDE 优缺点的总结:

  • 优点:KDE 几乎是最先进最强大的桌面环境,它外观优美、高度可定制、兼容比较旧的硬件设备。

  • 缺点:Kmail 等一些组件的配置对新手来说过于复杂。

  • 卸载kde桌面

sudo pacman -Rsc plasma kde-applications

Unity 桌面环境

Unity 是由 Ubuntu 的母公司 Canonical 开发的一款外壳。之所以说它是外壳,是因为 Unity 运行在 GNOME 桌面环境之上,使用了所有 GNOME 的核心应用程序。Unity 使用了不同的界面风格,如果你用的是 Ubuntu Linux 发行版,你会注意到 Unity 与 KDE 和 GNOME 桌面环境有些不一样。

Unity 在左边有一个启动器,位于启动器顶部的是搜索图标,又叫“Dash”。在 Dash 上搜索文件时,不仅会给出来自硬盘的搜索结果,还会给出来自在线来源的搜索结果,比如 Google Drive、Facebook、Picasa、Flick 及其他。

Unity 很简单、运行速度快,但 Unity 在系统设置下却没有定制桌面的太多选项,要想安装主题或者定制另外不同的选项,比如系统菜单是否应该总是可见,或者“从启动器图标一次点击最小化”,用户需要安装第三方工具。

对 Unity 优缺点的总结:

  • 优点:界面简洁直观,可以通过第三方工具来深度定制,而且使用了平视显示器(HUD)等新技术。
  • 缺点:默认的定制功能比较差劲,通知机制一般。

常见问题

重建标准用户目录

ubuntu 的 home 目录下,Desktop等目录消失不见

1. 重新创建标准用户目录

运行以下命令重新创建默认的英文目录:

mkdir -p ~/{Templates,Public,Documents,Music,Pictures,Videos,Downloads,Desktop}

然后再次运行:

xdg-user-dirs-update

这样它会重新识别这些目录,而不是将它们映射到 $HOME

2. 检查 ~/.config/user-dirs.dirs 配置文件

cat ~/.config/user-dirs.dirs

确保内容类似这样(路径应为英文):

XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Videos"

如果文件不存在或内容错误,可以手动创建/修改:

nano ~/.config/user-dirs.dirs

粘贴上述内容,保存后运行:

xdg-user-dirs-update

3. 强制重置为标准英文目录

如果仍然有问题,可以强制重置:

LANG=en_US xdg-user-dirs-update --force

这会重新生成所有标准目录(如 DocumentsMusic 等)。

4. 检查 locale 设置

确保你的系统语言环境是英文(避免乱码):

locale

如果 LANG 不是 en_US.UTF-8,可以临时设置:

export LANG=en_US.UTF-8
xdg-user-dirs-update --force

或者永久修改:

sudo nano /etc/locale.conf

写入:

LANG=en_US.UTF-8

然后重启或重新登录。

5. 最终验证

检查目录是否恢复:

ls ~

应该能看到:

Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

如果没有,可以手动创建缺失的目录,然后再次运行 xdg-user-dirs-update

总结

问题 解决方法
目录被删除,xdg-user-dirs-update 重置到 $HOME 手动创建 ~/Documents 等目录,再运行 xdg-user-dirs-update
user-dirs.dirs 配置错误 手动编辑 ~/.config/user-dirs.dirs
语言环境导致乱码 设置 LANG=en_US.UTF-8 并强制更新
目录仍未恢复 手动创建目录后运行 xdg-user-dirs-update --force

这样你的用户目录(DocumentsMusic 等)就会恢复为英文名称,并且 xdg-user-dirs-update 不会再误判它们为“已删除”。

dpkg无法找到软件包

无法找到软件包 xxx 的文件名列表文件

方法一:重新获取包内容配置信息 ,这样一步步重新安装下去 很快就可以解决这个问题了

$ sudo dpkg --configure -a
$ dpkg -l | grep ^ii | awk '{print $2}' | grep -v xxx | xargs sudo apt-get reinstall 

方法二:重新安装全部软件,会全部刷新info目录 不过这个方法就要多花点时间等待执行结果

$ sudo apt-get --reinstall install `dpkg --get-selections | grep '[[:space:]]install' | cut -f1`

自动挂载U盘

在 Debian Linux 中,自动/禁止 U 盘自动挂载,可以通过以下方法实现,适用于使用 GNOME 桌面或非图形环境:

  1. 打开终端

  2. 执行以下命令禁用自动挂载:

    gsettings set org.gnome.desktop.media-handling automount false
    gsettings set org.gnome.desktop.media-handling automount-open false
    
    • automount false:插入设备时不自动挂载
    • automount-open false:不自动在文件管理器中打开挂载的设备
  3. 验证设置:

    gsettings get org.gnome.desktop.media-handling automount
    gsettings get org.gnome.desktop.media-handling automount-open
    

windows访问

XRDP(最佳选择之一,类似远程桌面)

XRDP 是一个开源工具,它让 Linux 能够使用微软的 RDP(Remote Desktop Protocol)协议进行远程连接。这意味着你可以直接使用 Windows 自带的 远程桌面连接 工具来连接 Linux,获得非常流畅的体验。

适用场景: 无论是本地虚拟机、云服务器还是局域网内的 Linux 主机都非常适合。体验接近 Windows 远程桌面。

在 Linux (Ubuntu/Debian 为例) 上安装和配置:

  1. 更新软件包列表:
sudo apt update
  1. 安装 XRDP:
sudo apt install xrdp
  1. 启动 XRDP 服务并设置开机自启:
sudo systemctl enable xrdp --now
  1. (重要)配置防火墙允许 RDP 端口(默认 3389):
sudo ufw allow 3389

在 Windows 上操作:

  1. 按下 Win + R 键,输入 mstsc 并回车,打开“远程桌面连接”工具。

  2. 在“计算机”一栏输入你的 Linux 机器的 IP 地址。

    • 查找 Linux IP 地址: 在 Linux 终端输入 ip ahostname -I
  3. 点击“连接”。

  4. 在登录界面,选择 Xorg 作为会话类型(Session),然后输入你的 Linux 用户名和密码 登录。

单个应用图形界面

X11 Forwarding(通过 SSH 转发图形界面).

这种方法非常特别,它不像前两种那样传输整个桌面,而是通过加密的 SSH 连接,将单个应用程序的图形界面转发到你的 Windows 电脑上显示。

适用场景: 只需要运行 Linux 上某个带界面的程序(如 gedit, firefox),而不需要整个桌面环境。非常安全(基于 SSH),但延迟可能较高。

必要条件: Windows 上需要一个 X Server 程序来接收和显示图形界面。

步骤:

  1. 在 Windows 上安装 X Server

    • 推荐使用免费开源的 Xming, VcXsrvX410(微软商店付费,体验更好)。

    • 安装并启动 VcXsrv(XLaunch),在设置中勾选 “Disable access control” 以允许任何客户端连接。

  2. 在 Windows 上启用 SSH 客户端的 X11 转发功能:

    • 如果你使用 PowerShell 或 CMD,需要安装 OpenSSH 客户端(现代 Win10/Win11 通常已自带)。

    • 更推荐使用 Git Bash 或 Windows Subsystem for Linux (WSL),它们自带完整的 SSH 工具链。

  3. 通过 SSH 连接并转发 X11:

    • 在 Windows 终端(PowerShell, CMD, Git Bash)中使用以下命令连接:
ssh -X username@linux_host_ip
(-X 参数启用信任的 X11 转发)
  1. 在 SSH 终端中启动图形程序:

连接成功后,在终端里输入任何图形程序的名字,例如:

gedit &
firefox &

它们的窗口就会神奇地出现在你的 Windows 桌面上。

方法对比与总结

特性 XRDP (RDP) VNC X11 Forwarding (SSH)
体验 非常好,高效压缩,流畅 尚可,取决于配置和网络 尚可,适合单个程序
功能 传输整个桌面 传输整个桌面或单个窗口 仅传输单个应用程序
安全性 好(可基于 SSL 加密) 一般(依赖配置和密码强度) 极好(通过 SSH 加密隧道)
设置难度 简单 中等 中等(需在 Windows 装 X Server)
适用场景 日常远程桌面使用 通用远程访问 开发、调试单个GUI程序
  • 对于大多数用户,想要获得完整的远程桌面体验,首选 XRDP。它设置简单,并且利用 Windows 自带工具,体验最佳。
  • 如果你使用的是 Gnome 或 KDE 等主流桌面环境,并且只是想快速临时访问,可以使用系统自带的 VNC/Screen Sharing 功能。
  • 如果你是开发者,只需要偶尔在 Windows 上运行一个 Linux 的 GUI 程序(比如调试一个界面),X11 Forwarding 是最安全、最轻量的选择。