打造Ubuntu的办公环境


对于经常需要和各种服务器打交道的工程师来说,windows显然不是一个很好的选择。无奈囊中羞涩,没有办法体验MacOS。相比而言,Ubuntu是一个不错的选择。Ubuntu20.04/22.04也已经发布了,结合之前Ubuntu版本的使用经历,目前更换了新的PC,已经将办公环境升级到了Ubuntu22.04,现在综合写下如何在Ubuntu20.04/Ubuntu22.04环境下打造办公环境。

01-系统安装

从官网上下载Ubuntu LTS版本的镜像,刻录到优盘,直接安装就可以了。
注意两点:
1)安装过程中尽量选择英文安装
2)如果可以的话,将系统盘安装在SSD上,配置一个SATA 盘用于存放数据,这个会在后续说明。原因在于万一碰到几次意外断电等情况导致系统盘启动不了,最起码代码、文档等重要的数据放在SATA盘丢失嗯几率比较小。
3)针对配置的SATA盘,我个人的习惯是划分几个不同的目录配置在/etc/fastab文件中,比如Documents、Download等目录。如果是磁盘在1TB 以及以上的话,如果拷贝文件的时候明明有很多空间,但是就是提示"No Space left"可以查看以下inode是不是达到限制了(使用df -i命令)。

02-IP配置

系统安装完毕之后,先进行IP 的配置,确保机器可以上网,因为后续软件的安装等很多都需要联网才能进行。
IP配置比较简单,右上角的Settings-Network,根据网络规则进行配置就可以了。

03-系统优化之一

03-01 root密码配置

首先使用sudo passwd命令配置root用户的密码

03-02 系统更新

因为LTS发布之后还会有软件更新,因此安装系统完毕之后,先获取最新的软件,更新一下

sudo apt-get update
sudo apt-get upgrade

这个时候会提示机器需要重启,先忽略,一会再进行重启。

03-03 关闭当前用户sudo操作输入密码

上述操作过程中执行sudo操作时都需要输入密码,很不方便。
使用当前普通用户执行 cat /etc/sudoers得到的结果是:
cat: /etc/sudoers: Permission denied
这个时候首先切换到root用户下,修改/etc/sudoers文件内容,
在 %sudo ALL=(ALL:ALL) ALL行的下面增加一行
当前用户名 ALL=NOPASSWD:ALL
然后保存退出。
这个时候再使用当前用户执行sudo cat /etc/sudoers就能到看到文件的内容了,并且也不需要输入密码了。
(这个时候编辑/etc/sudoers可能会发现使用vi编辑不是很方便,别着急,一会再说说vim的安装和配置)

03-04 重启测试

系统更新之后提示需要重启操作一直没有进行,这个时候可以重启一下机器,看看启动是否正常,设置的密码是否生效。

04-中文输入法配置

在办公环境下,毕竟中文输入法还是非常有必须要的。之前在Ubuntu 16.04 或者Ubuntu18.04环境中都是使用的搜狗输入法,但是目前既然有官方背书的百度输入法,那就使用官方背书的好了(搜狗输入法也可以安装,请自行搜索)。
这里需要说明的是截至2023年12月8号,ubuntu20.04环境并不支持百度输入法
(2025-02-11重新安装22.04的时候发现使用sogoupinyin中文输入法也不错,反倒是百度输入在ubuntu22.04.04系统上安装出现异常)

04-01 ubuntu20.04 百度输入法配置

百度输入法下载地址:
https://srf.baidu.com/site/guanwang_linux/index.html
将下载的zip文件解压,然后按照《Ubuntu下百度Linux输入法安装方法.docx》里面的指导进行安装就好了。

重要:输入法安装完毕之后需要重启

安装过程不会有大的问题,主要麻烦的地方在于配置。通常中文输入法都是使用shift来进行中英文切换,但是这种方式针对大部分时候需要输入各种Linux命令,并且大小写、各种下划线,以及常用的$ %等符号时,就显得特别不方便。

当重启之后,首先会有百度输入法的设置,这里我们在设置中将“按键” - “中英文切换” 设置为“不使用快捷键”,也就是在中文输入场景下,不需要输入英文字符。

点击右上角的图标,选择ConfigFctix进入Input Method Configuration对话框,

  • 进入的Input Method界面后,选择+号
  • 进入到Add input method界面,将下面的Only Show Current Language 点掉(重要),在搜索栏搜索百度拼音,选中之后进行添加(建议不要把中文输入法移动到第一位)
  • 进入到Global Config界面,将Trigger Input Method设置为Lctl和 Empty,将 Scroll between Input Method设置为 CTRL_SHIFT 这样使用Ctrl来进行输入法的切换。(之前在Ubuntu 16.04习惯使用Ctrl+Tab来进行输入法的切换,无奈这里多次尝试都不能达到次效果,只能作吧。 如果你知道如何设置成Ctrl+Tab来进行输入法的切换,请告知,多谢!)

04-02 ubuntu22.04 中文输入法配置

之前提到在ubuntu22.04环境中还不支持百度输入法,但是系统提供了自带的中文输入。
这里直接在网上搜索 “ubuntu 22.04中文输入法安装”就可以看到很多教程。我这里使用的是Chinese(Interlligent Pinyin) 。 同样的,为了防止在使用Shift进行英文大小写切换的时候,触发输入法的切换,我这里把中英文的切换改成了Ctrl。 点击输入法, 选择"Preferences"->“Shortcuts” 选择 “Switch Chinese/Englis” 点击"Edit"进行修改即可。

05-磁盘使用

前面提到系统盘安装在SSD盘上,将文档等数据保留在SATA盘上。比如环境中有个1T 的SATA盘用于存放重要数据,这样万一哪天遇到意外导致系统起不来也不用担心重要数据的丢失。
首先根据需求将SATA分为2-3个分区,然后格式化为ext4格式。
使用sudo blkid /dev/sdx1 命令获取分区sdx1的UUID, 在 /etc/fstab文件中增加如下内容:
UID=“4657969d-2896-4a1a-9e55-2d9fe3b770d4” /home/user/Documents ext4 defaults 0 0
将所有分区都增加完毕之后,执行sudo mount -a这样就可以看到分区都已经mount到对应的挂载点了。
但是这个时候因为权限的问题,对于当前非root用户还不能进行读写操作。
执行命令(命令中的user请替换为实际的用户名)

sudo chgrp -R user /home/user/Documents
sudo chown -R user /home/user/Documents

这样mount的目录就可以进行读写操作了。注意在mount操作之前,必须要保证mount点的文件夹都是空的,否则会将原来文件夹中的数据隐藏或者覆盖(原来的数据并没有丢失,只是mount之后看不到而已)

这里需要说明的是,对磁盘进行分区仅仅是一个建议,有些同学不喜欢分区,直接将整个磁盘格式化之后挂载给一个目录也是可以的。这种情况下,需要注意文件的数量。有时候明明磁盘剩余的空间还很大多,但是在创建或者拷贝文件的时候提示空间不足,可以使用df -i命令查看一下磁盘对应的inodes数量是不是已经达到最大值。

06-去除swap分区

在系统盘使用SSD或者内存够大的情况下,没有必须要再使用swap分区了。
可以按照如下步骤将swap分区删除:

  • 输入命令sudo swapoff -v /swapfile停用 SWAP 空间
  • 在 /etc/fstab 文件中删除有效 swap 的行
  • 执行命令sudo rm -rf /swapfile删除 swapfile 文件

在上述操作中,使用lsblk命令可以看到接近十个虚拟设备loopx对应/snap目录下的某些文件或者文件夹。对于Ubuntu 18.04有二十多个虚拟机设备。有资料说snap是一种全新的软件包管理方式,从Ubuntu 18.04就开始出现了,大家可以根据需要,自行觉得是否需要删除。

07-vim安装

sudo apt-get install curl vim

具体配置大家各有所爱,就不啰嗦了。
这里的颜色主题推荐使用hybird
将hybrid.vim拷贝到.vim/colors/目录下(如果不存在就创建一个)
在.vimrc文件中配置

setbackground=dark
colorscheme hybrid

系统中需要curl命令(所以curl同vim一并进行安装)

08-时间设置

在命令行终端中输入date看看时间是否与北京时间一致。如果不一致的话,在settings - Region & Language 中将Formats设置为“中国”

09-安装wps和pdf阅读器

09-01 安装wps

去wps官网下载最新的版本,下载后执行命令sudo dpkg -i wps-office*进行安装即可

由于版权的原因,需要将某些字体拷贝到指定目录下,否则出现“Some formula symbols might not be displayed correctly due to missing fonts Symbol, Wingdings, Wingdings 2, Wingdings 3, Webding 3, Webding,”的提示。

安装参考链接:https://github.com/dv-anomaly/ttf-wps-fonts

09-02 安装pdf阅读器

执行命令

sudo apt install okular

10-安装git

执行命令

sudo apt install git -y

11-安装zsh

执行命令

sudo apt install zsh -y

然后执行命令 安装oh-my-zsh

sh -c “$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)”

或者

sh -c “$(wget -qO- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)”

安装过程中提示“o you want to change your default shell to zsh? [Y/n] ”输入Y就好了。但是切换有可能不成功
这个时候需要手动切换一下

whereis zsh
chsh -s /usr/bin/zsh

通过修改~/.zshrc文件中的ZSH_THEME的取值来更换主题
(主题文件在~/.oh-my-zsh/themes目录下)

另外可以在文中命令别名,例如如下方式

alias vi=“vim”

重启之后可以使用命令echo $SHELL查看系统当前使用的shell是不是变成了zsh

12-开发工具安装

12-01 JetBrains Toolbox App

如果涉及java语言的开发,建议先安装Toolbox,这个软件可以管理所有 Jet Brains 旗下的软件。
(这个安装之前需要安装java)

将压缩包解压一下,使用./jetbrains-toolbox的方式执行一下就安装完毕了。
(在22.04环境中,执行出现提示“dlopen(): error loading libfuse.so.2” 需要先执行一下sudo apt install libfuse2
)
安装完毕有些配置可以修改一下

Toolbox App Updates
Update Toolbox App automatically - 取消。当需要的时候手动选择是否需要升级就可以了。
Appearance & Behavior
Run at login - 取消。我们不希望一开机登录的时候就运行。

之后就是开发工具的选择了。
通常安装免费的社区版
比如选择了IntelliJ IDEA Commmunity Edition之后,点击安装。这个工具的右上角就会有信息提示(通常先是下载的提示)

13-安装java开发编译相关软件

13-01 java安装

这里我们在环境中配置java(默认java8) java11 和java17,其中java11和java17使用的是bisheng jdk
首先需要去网站或者其它地方将需要安装的jdk下载到本地
这里提供安装配置的脚本,脚本中使用到的安装包为:
bisheng-jdk-11.0.20-linux-x64.tar.gz
bisheng-jdk-17.0.8-linux-x64.tar.gz
jdk-8u241-linux-x64.tar.gz

脚本software_install_java.sh内容如下

#!/usr/bin/env bash
# this script is used to install java jdk

set -u
set -o pipefail

SCRIPT_PATH=$(cd "$(dirname "$0")" || exit;pwd)
LOGFILE_PATH="$SCRIPT_PATH/logs"
LOGFILE_NAME="07-software-install-java.log"
LOGFILE="$LOGFILE_PATH/$LOGFILE_NAME"

COLOR_RED='\e[1;31m'
COLOR_NC='\e[0m'


if [[ ! -d  "$LOGFILE_PATH" ]]
then
    mkdir -p "$LOGFILE_PATH"
    echo -e "creat directroy($LOGFILE_PATH) to save log($LOGFILE_NAME)  [$(date)] " | tee "$LOGFILE"
else
    echo "This is going to install java jdk  [$(date)] " | tee  -a "$LOGFILE"
fi

jdk_package_filename="jdk-8u241-linux-x64.tar.gz"
java_home_directory="/usr/local/jdk1.8.0_241"

function install_jdk() {
    if [ ! -e $jdk_package_filename ];
    then
        echo "java install -- operation can't continue as no package"| tee -a "$LOGFILE"
        return 1
    fi
    tar -zxf $jdk_package_filename -C /usr/local

    # using this way, there may be many JAVA_HOME on /etc/profile
    echo -e "java install -- modify /etc/profile file" | tee -a "$LOGFILE"
    tmp_message=$(grep 'JAVA_HOME=' /etc/profile)
    if [[ "$tmp_message" =~ "jdk" ]]
    then
        echo -e "java environment already configured." | tee -a "$LOGFILE"
    else
        echo -e "add java environment to /etc/profile. " | tee -a "$LOGFILE"
        {
            echo JAVA_HOME="$java_home_directory"
            echo JRE_HOME="$java_home_directory/jre"
            echo 'PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin'
            echo "export JAVA_HOME"
            echo "export JRE_HOME"
            echo "export PATH"
        } >> /etc/profile
    fi

    echo -e "java install -- notify system jdk location" | tee -a "$LOGFILE"
    sudo update-alternatives  --install "/usr/bin/java" "java" "$java_home_directory/jre/bin/java" 1
    sudo update-alternatives  --install "/usr/bin/javac" "javac" "$java_home_directory/bin/javac" 1

    echo -e "java install -- set system default jdk to jdk1.8" | tee -a "$LOGFILE"
    sudo update-alternatives  --set java "$java_home_directory/jre/bin/java"
    sudo update-alternatives  --set javac "$java_home_directory/bin/javac"
    echo -e "java install -- check the jdk version" | tee -a "$LOGFILE"
    java -version
    check_results=$(java -version 2>&1)
    echo -e "check results java: $check_results " | tee -a "$LOGFILE"
    if [[ $check_results =~ "command not found" ]]
    then
        return 1
    fi
    javac -version
    check_results=$(javac -version 2>&1)
    echo -e "check results javac: $check_results " | tee -a "$LOGFILE"
    if [[ $check_results =~ 1.8 ]]
    then
        return 0
    else
        return 2
    fi
}


check_results=$(java -version 2>&1)
need_to_install_java="yes"
echo "check java version results are: $check_results" | tee -a "$LOGFILE"
if [[ $check_results =~ 1.8 ]]
then
    echo "java checking -- current version is 1.8, check openjdk or not"  | tee -a "$LOGFILE"
    check_results=$(ls -l /usr/bin/java)
    echo "java checking -- java base info($check_results)" | tee -a "$LOGFILE"
    check_results=$(ls -l /etc/alternatives/java)
    if [[ $check_results =~ jdk1\.8 ]]
    then
        need_to_install_java="no"
        echo -e "java checking -- it seems java version and configuration($check_results) are as expected.\nDo not need to install jdk again" | tee -a "$LOGFILE"
    else
        echo "java checking -- java configuration($check_results) is not as expected. install it..." | tee -a "$LOGFILE"
    fi
fi


if [[ "$need_to_install_java" = "yes" ]]
then
    if ! install_jdk
    then
        echo "java install -- jdk 1.8 install unsuccessfully."| tee -a "$LOGFILE"
    else
        echo "java install -- jdk 1.8 install successfully." | tee -a "$LOGFILE"
    fi
fi
echo "java install -- finished-------------------[$(date)] " | tee  -a "$LOGFILE"


# 0: success
# others: fail
function install_bishengjdk() {
    if [ ! -e "$jdk_package_filename" ];
    then
        echo -e "${COLOR_RED}bishengjdk[$bishengjdk_version] installation -- operation can't continue as no package ${COLOR_NC}"| tee -a "$LOGFILE"
        return 1
    fi
    tar -zxf "$jdk_package_filename" -C /usr/local

    echo -e "bishengjdk[$bishengjdk_version] installation -- notify system jdk location" | tee -a "$LOGFILE"
    sudo update-alternatives  --install "/usr/bin/${bishengjdk_version}" "$bishengjdk_version" "$java_home_directory/bin/java" 1

    echo -e "bishengjdk[$bishengjdk_version] installation -- check the jdk version" | tee -a "$LOGFILE"
    check_results=$("$bishengjdk_version" -version 2>&1)
    echo -e "check results bishengjdk[$bishengjdk_version]: \n$check_results " | tee -a "$LOGFILE"
    if [[ $check_results =~ "command not found" ]]
    then
        return 1
    fi

    if [[ $check_results =~ "BiSheng" ]]
    then
        return 0
    else
        return 2
    fi
}


# 0 : do not need to install bishengjdk
# others: whereis no jdk or configuration is not right
function check_bishengjdk() {
    check_results=$(whereis "$bishengjdk_version" 2>&1)
    command_location=${check_results#*:}
    echo "check bishengjdk[$bishengjdk_version] command location is : $command_location" | tee -a "$LOGFILE"
    if ! [[ $command_location =~ "java" ]]; then
        return 3
    fi
    check_results=$("$bishengjdk_version" -version 2>&1)
    echo -e "check bishengjdk[$bishengjdk_version] results are: \n$check_results" | tee -a "$LOGFILE"
    if [[ $check_results =~ "openjdk version" ]]
    then
        echo "bishengjdk[$bishengjdk_version] checking -- it seems bishengjdk has installed. Check detail information ..."  | tee -a "$LOGFILE"
        check_results=$(ls -l /usr/bin/"$bishengjdk_version")
        echo "bishengjdk[$bishengjdk_version] checking -- ${bishengjdk_version} base info($check_results)" | tee -a "$LOGFILE"
        check_results=$(ls -l /etc/alternatives/"$bishengjdk_version")
        if [[ $bishengjdk_version = "java11" && $check_results =~ "11.0.20" ]]; then
            echo -e "bishengjdk[$bishengjdk_version] checking -- it seems bishengjdk version and configuration($check_results) are as expected." | tee -a "$LOGFILE"
            return 0
        elif [[ $bishengjdk_version = "java17" && $check_results =~ "17.0.8" ]]; then
            echo -e "bishengjdk[$bishengjdk_version] checking -- it seems bishengjdk version and configuration($check_results) are as expected." | tee -a "$LOGFILE"
            return 0
        else
            echo "bishengjdk[$bishengjdk_version] checking -- bishengjdk configuration($check_results) is not as expected. install it..." | tee -a "$LOGFILE"
            return 2
        fi
    else
        return 1
    fi
}


# check bishengjdk java11
jdk_package_filename="bisheng-jdk-11.0.20-linux-x64.tar.gz"
java_home_directory="/usr/local/bisheng-jdk-11.0.20"
bishengjdk_version="java11"
echo -e "\nThis is going to check bishengjdk ${bishengjdk_version} [$(date)] " | tee  -a "$LOGFILE"

if ! check_bishengjdk
then
    echo "This is going to install bishengjdk ${bishengjdk_version} [$(date)] " | tee  -a "$LOGFILE"
    if ! install_bishengjdk
    then
        echo -e "${COLOR_RED}bishengjdk install -- ${bishengjdk_version} install failed.${COLOR_NC}"| tee -a "$LOGFILE"
    else
        echo "bishengjdk install -- ${bishengjdk_version} install successfully." | tee -a "$LOGFILE"
    fi
fi


# check bishengjdk java17
jdk_package_filename="bisheng-jdk-17.0.8-linux-x64.tar.gz"
java_home_directory="/usr/local/bisheng-jdk-17.0.8"
bishengjdk_version="java17"

echo -e "\nThis is going to check bishengjdk ${bishengjdk_version} [$(date)] " | tee  -a "$LOGFILE"
if ! check_bishengjdk
then
    echo "This is going to install bishengjdk ${bishengjdk_version} [$(date)] " | tee  -a "$LOGFILE"
    if ! install_bishengjdk
    then
        echo -e "${COLOR_RED}bishengjdk install -- ${bishengjdk_version} install failed.${COLOR_NC}"| tee -a "$LOGFILE"
    else
        echo "bishengjdk install -- ${bishengjdk_version} install successfully." | tee -a "$LOGFILE"
    fi
fi


echo "bishengjdk installation -- finished-------------------[$(date)] " | tee  -a "$LOGFILE"

安装完毕之后分别是使用java -version java11 -version java17 -version查看对应的版本即可。

13-02 maven安装

sudo tar -zxf apache-maven-3.3.9-bin.tar.gz -C /usr/local

安装完毕之后,在/etc/profile修改如下内容

PATH=/usr/local/apache-maven-3.3.9/bin:$PATH

13-03 thrift安装

首先安装相关的依赖(参考http://thrift.apache.org/docs/install/debian)

sudo apt-get install automake bison flex g++ git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config

在UBUNTU20.04版本中安装thrift-0.9.3的时候,执行
./configure出现如下错误(并没有找到对应的解决方案):

checking for setsockopt in -lsocket… no
checking for BN_init in -lcrypto… no
configure: error: “Error: libcrypto required.”

使用thrift-0.19.0版本进行安装没有出现类似的错误。
安装步骤如下:

tar -zxf thrift-0.19.0.tar.gz
cd thrift-0.19.0
./configure
make
sudo make install
确认安装之后的结果以及版本信息:
$thrift -version
Thrift version 0.19.0

13-03 protobuf安装

注意proto2和proto3是不兼容的,要注意项目使用的版本。
(proto2的最高版本为protobuf-2.6.1)
github地址为 :
https://github.com/protocolbuffers/protobuf

下载新的release版本(Protocol Buffers v3.19.6)

tar -xvf protobuf-all-3.19.6.tar.gz
cd protobuf-3.19.6
./configure --prefix=/usr/local/protobuf
make
make check
sudo make install

安装完毕之后,配置环境变量,在/etc/profile修改如下内容

PROTOBUF_HOME=/usr/local/protobuf
PATH=$PROTOBUF_HOME/bin:$PATH

更改完成之后,执行如下命令

source /etc/profile

确认安装之后的结果以及版本信息

protoc --version
libprotoc 3.19.6

13-04 shellcheck安装

shell脚本检测工具,用于shell脚本的检查,写出高质量shell脚本必备

sudo apt-get install shellcheck

13-05 代码行数统计工具

sudo apt-get install cloc

14-常用工具安装

14-01 截图工具

这里我们使用的事flameshot截图工具,功能比Screenshot要强大
使用apt-cache show flameshot可以查看flameshot的版本
使用下列命令直接安装即可

sudo apt-get install flameshot

安装完毕在Configuration-Filename Editor里面根据自己的需求设置默认的文件保存名称

这里需要说明的是,在ubuntu22.04环境下安装之后,flameshot使用出现异常。根据网络上查询到的结果,需要更新/etc/gdm3/custom.conf 文件,将WaylandEnable=false前的注释去掉,然后将gdm3重启或者将及机器重启。

sudo systemctl restart gdm3

这里需要说明的是执行上述命令,系统会关闭所有窗口(看起来跟注销操作差不多,所以在操作前务必要将工作文档等内容保存),推荐还是在合适的时候重启机器。

重启运行echo $XDG_SESSION_TYPE,输出X11,检查flameshot是否可以正常使用。如果还有异常,请根据错误信息进行排查。

14-02 tmux

一款强大的分屏处理软件,感觉比screen好用

sudo apt-get install tmux

这里需要注意的是tmux 默认情况下不是共享系统剪贴板的。如果安装tmux的时候,可以上网查询一下配置方法(不同版本的tmux配置方法不一样)。
例如: 本环境中安装的是

tmux -V
tmux 3.2a

执行命令 sudo aptitude install xclip
然后在.tmux.conf做如下配置

bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
bind-key -T copy-mode-vi r send-keys -X rectangle-toggle
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel “xclip -i -f -selection primary | xclip -i -selection clipboard”

这样使用Ctrl+b, [ 进入复制模式,通过移动按v选择要复制的区域,选定后使用y进行复制,然后在其它地方使用Ctrl+Shift+v进行粘贴

14-03 Sublime Text 3

代码编辑器软件
官网地址:
https://www.sublimetext.com/3

下载链接:https://www.sublimetext.com/download

下载64 bit .deb 版本,直接使用命令 sudo dpkg -i sublime-text_build-*_amd64.deb进行安装

这个工具比较强大,网上也有很多的配置,大家根据自己的偏好配置就好了

14-03 Meld

一款比较和合并文件的工具
在Ubuntu software里面搜索Meld就可以进行安装了
或者
sudo apt install meld

14-04 Virtual Machine Manager

一种直观的虚拟机监控程序软件,如果工作中需要经常连接节点上的kvm虚拟机(特别需要看到虚拟机的操作界面),建议安装此工具。

sudo apt-get install virt-manager -y

14-04 remmina

一款用于远程windows系统的软件
sudo apt install remmina

15-系统优化之二

15-01 移除已经安装的软件

打开Ubuntu Software在Installed列表中删除游戏、麻将、LibreOffice等软件。
AisletRiot Solitaire
Cheese
LibreOffice相关组件(已经安装wps)
Mahjongg
Mines
Sudoku

15-02 移除不需要的软件包

sudo apt remove deja-dup -y # 卸载备份工具
sudo apt remove remmina -y # 卸载远程工具
sudo apt remove -y transmission-common # 卸载自带下载器
sudo apt remove -y rhythmbox # 卸载系统自带音乐播放器
sudo apt remove -y thunderbird # 卸载系统自带的邮件工具
sudo apt remove -y evince # 卸载Document Viewer

最后使用命令sudo apt autoremove进行自动移除

15-03 终端背景颜色设置

调出终端的菜单,在Perferences中Profiles的Colors中去除“Use colors from system theme”设置背景颜色的值为豆沙绿(十六位代码为#C7EDCC)

小结

随着Ubuntu的不断更新,界面做得也越来越漂亮。当然也有很多Ubuntu优化的地方,因为本人能力有限,也不可能不能一一测试列出,请大家在使用过程中根据偏好进行设置。

对于文档中描述不准确的地方,也请留言,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值