Ubuntu22.04办公环境初始设置记录

发布时间 2023-04-09 17:28:12作者: jayant97

1 前言

这周末刚从Windows办公环境切换到 Ubuntu 22.04,有些东西还是比较折腾,记录一下便于以后查找。

2. 安装时的分区设置

从一块完整的新硬盘安装Ubuntu单系统时,只需要以下分区:

  1. ESP分区(EFI System Partition),设为200MB即可,是GPT分区表存储的位置。UEFI引导的系统都需要这个分区。
  2. 根分区/:懒人可以直接把硬盘的剩余部分全部设为根分区,就结束了,可以直接安装了;
  3. 用户分区/home:谨慎一点的人可能需要把系统和用户文件分成两个区,这样的好处是,如果哪天Linux系统不小心被玩崩了,可以直接把系统分区格式化重新装一个Linux,然后还能继续用原来的/home。如果要这样做的话,挂载点/就只需要大约40GB的分区即可,剩余部分再设一个新的分区用于挂载/home

3. NVIDIA显卡相关

3.1. 显卡驱动

sudo apt install nvidia-driver-525

我这里安装的是闭源版本的驱动,除此之外还有开源(-open)和服务器(-server)版本的驱动。

3.2. 外接显示器

​ 一般来说Ubuntu会自动管理外接显示器。但是我是使用了一个外接显卡坞(eGPU),于是就产生了多显卡交火的问题。需要自己改X11配置,还很复杂,并且有两种选项(用内置显卡管理显示还是外置显卡管理显示),见https://wiki.archlinux.org/title/External_GPU。

​ 好在有个开源项目,可以在开机时自动检查外接显卡有没有连接,并根据检查结果自动选择是否要修改X11配置文件。

​ 见:https://github.com/hertg/egpu-switcher

​ 按照其说明安装配置即可。

3.3. 外接数字音频

我在显示器上挂了一个音响,音频应该从DP输出到显示器。但是不知道是不是eGPU的问题,声音设置里总是只能选内置音响。外置音响没有声音。

看到一个讨论说可能是电源管理的问题,把Nvidia自动电源管理关掉就好了:https://forums.developer.nvidia.com/t/no-option-for-audio-over-displayport-hdmi/175889/2

/lib/udev/rules.d/里找到nvidia的配置,把auto全改成on,然后sudo update-initramfs -u即可。

这只是个Workaround,如果驱动更新了,文件会被覆盖,要重新设置一遍。

4. OneDrive

Onedrive Linux客户端:https://github.com/abraunegg/onedrive

这个客户端的图形化界面:https://github.com/bpozdena/OneDriveGUI

装好客户端后再装GUI,然后直接启动GUI配置即可。

注意这个客户端的认证方式是先弹出一个页面,登陆微软账号后,会跳转到一个空白页面。这个空白页面的url含有token,直接把整个url拷贝下来粘贴回客户端就可以了。命令行和GUI都是这样认证的。

接下来的问题是开机自启动。由于这是个GUI程序,不要用systemd去做自启动,更不要用那些什么放到~/.bashrc里面自启动的方法。

直接命令行输入gnome-session-properties,在弹出的窗口中添加图形化开机自启动项即可。

GUI本身还有很多可以设置的项目,比如静默启动,启动时同步文件等,可自行设置。

5. Edge

Windows上面Edge用习惯了,继续使用:https://www.microsoft.com/en-us/edge/business/download?form=MA13FJ

6. 善用商店

Ubuntu目前的Snap Store估计是想做成App Store或者微软商店那样的形式。总之一些图形化软件在这里面安装比较好,统一管理,也方便省级。

目前我安装的有:

  • Outlook客户端:Prospect Mail,注意这个只能用于Microsoft 365,不能用其他邮箱。

  • IMAP/SMTP邮件客户端:Thunderbird

  • Thunderbird的托盘插件:BirdTray。装这玩意的时候还会又装个旧版的Thunderbird,真的离谱。在它的Advance设置里面,把Thunderbird的路径改成/snap/bin/thunderbird,就是snap商店里下的了

  • 办公即时通讯:Teams for linux

  • MQTT客户端:MQTT Explorer

  • HTTP API测试客户端:postman

  • 代码编辑器:VS Code

  • 外观设置:tweaks 和 Extensions,本文不多介绍了

7. 修复汉字错误

当系统是英文时,显示中文会出现错误,因为有些字会变成日文。需要调整汉字字体匹配的顺序。修复方式见:https://blog.csdn.net/qq_46753404/article/details/118061311

8. DNS设置

科学的工具,不能多说。只记录。

由于用TUN,不用系统代理。Linux DNS服务器要设成本地:

/etc/systemd/resolved.conf

DNS=127.0.0.1
FallbackDNS=114.114.114.114
DNSStubListener=no 

剩下的就看:https://www.xkww3n.cyou/2022/02/08/use-clash-dns-anti-dns-hijacking/

9. 其他开发环境

sudo apt install build-essential
sudo apt install git
sudo apt install cmake
sudo apt install default-jre # SES的Configuration Wizard 以及 STM32CubeMX需要Java运行环境

10. zsh

比较喜欢用zsh,插件很方便(自动显示git状态等)

安装zshoh-my-zsh

sudo apt install zsh

sh -c "$(wget https://gitee.com/Devkings/oh_my_zsh_install/raw/master/install.sh -O -)"

安装插件并自动拷贝到oh-my-zsh下

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

配置

vim ~/.zshrc

修改配置

ZSH_THEME="ys"
plugins=(git sudo zsh-autosuggestions zsh-syntax-highlighting)

zsh-syntax-highlighting必须位于最后