[TOC]

0x00 前言简述

Ubuntu 20.04 是 Ubuntu 的第 8 个 LTS 版本代号为"Focal Fossa"

0x01 常规初始化配置

0.网络配置

描述:Ubuntu 20.04 LTS 在网络管理上相比较于18.04有很大的不同,网络配置文件不再是sudo vi /etc/network/interfaces而变成了/etc/netplan/50-cloud-init.yaml,并且也不在使用networking服务进行管理网络了,所以想以services networking restart重载配置文件是不行的了;
采用命令进行网络配置流程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#1.修改netplan网络配置文件/etc/netplan/下的文
#Ubuntu 20 LTS
cat /etc/netplan/00-installer-config.yaml
#Ubuntu 18 LTS
cp /etc/netplan/50-cloud-init.yaml{,.bak}
cat > /etc/netplan/50-cloud-init.yam << EOF
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 192.168.93.6/24
gateway4: 192.168.93.2
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
EOF

#2.应用网络配置
netplan apply


1.SSH 配置

SSH初始配置:

1
2
3
4
5
6
#1.允许Root登陆以及采用密码认证(prohibit-password:禁用密码)
sed -i "s|#PermitRootLogin prohibit-password|PermitRootLogin no#g" /etc/ssh/sshd_config # 为了安全
sed -i "s|#PasswordAuthentication|PasswordAuthentication#g" /etc/ssh/sshd_config

#2.重启ssh服务
systemctl restart sshd


2.镜像源配置

配置命令如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
sudo cp /etc/apt/sources.list{,.bak}
sudo tee /etc/apt/sources.list <<'EOF'
#阿里云Mirrors - Ubuntu
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
EOF
apt autoclean
apt update && apt upgrade -y


4.基础软件安装
1
2
3
4
#1)编译依赖
apt -y install gcc
#2)常规软件
apt -y install nano vim net-tools tree wget dos2unix unzip htop ncdu bash-completion


5.系统防火墙

描述:Ubuntu 20.04系统防火墙采用ufw命令进行管理,相比于firewall-cmd更加方便简单;

1
ufw allow 端口/协议


6.时区与时间

时区修改:

1
2
3
4
5
6
7
# 先查看当前系统时间
date -R
# 交互式地区选择亚洲 Asia,确认之后选择中国(China),最后选择北京(Beijing)
tzselect
# 复制时区文件到/etc目录下
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 再次查看时间date -R已经修改为北京时间

时间修改机硬件时间同步:

1
2
3
4
5
6
# 修改时间
sudo date -s MM/DD/YY //修改日期
sudo date -s hh:mm:ss //修改时间

# 修改硬件CMOS的时间
sudo hwclock --systohc #非常重要如果没有这一步的话后面时间还是不准


0x02 桌面版本配置

注意: 如果是远程操作一定要注意开放ssh端口否则有可能关机后无法连接;

1.远程共享配置

描述:Ubuntu 20.04桌面版本系统默认自带VNC Server我们只需要开启共享即可,但是可能连接时候会出现下列错误;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 错误信息
Unable to connect to VNC Server using your chosen security
setting. Either upgrade VNC Server to a more recent version from
RealVNC, or select a weaker level of encryption.

# (1) 解决办法在服务器端使用以下命令降低服务器端的安全等级(不推荐)。
$gsettings set org.gnome.Vino enabled true # 貌似不支持
$gsettings set org.gnome.Vino prompt-enabled false
$gsettings set org.gnome.Vino require-encryption false

# (2) 开机自启
> ll /usr/lib/vino/vino-server
-rwxr-xr-x 1 root root 278K 10月 6 22:33 /usr/lib/vino/vino-server
> ln -s /usr/lib/vino/vino-server /etc/init.d/vino-server

WeiyiGeek.

WeiyiGeek.

参考:https://kuricat.com/gist/snap-install-too-slow-zmbjy


2.常用软件安装

描述:主要安装以下工具集:

  • 网络管理: net-tools
  • 运维工作: Terminator / zsh / oh-my-zsh
  • 开发工具: git
  • 通信工具: minicom (串口通信工具) / sshd
  • 写作工具: typora / wps
  • 输入法工具: fctix-baidu / fctix-sougou / fctix

安装Shell脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# 网络管理 # 
# ifconfig
sudo apt-get -y install net-tools

# 开发工具 #
# git
sudo apt -y install git

# 运维工作 #
# Terminator
sudo apt-get -y install terminator
# zsh
sudo apt-get -y install zsh
# oh-my-zsh
sudo apt install curl # 先安装 curl
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

# 通信工具 #
# minicom - 调试嵌入式系统必备工具
sudo apt-get -y install minicom
sudo apt-get -y install ssh

# 写作工具 #
# typora : https://typora.io/#linux
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE
wget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add -
# add Typora's repository
sudo add-apt-repository 'deb https://typora.io/linux ./'
sudo apt-get update
# install typora
sudo apt-get install typora

# 输入法工具 #
# 注意: Ubuntu 在安装中文语系系统自带有一个智能拼音且输入法系统为iBus,如果安装google或者百度输入法则需要安装切换为fcitx
sudo apt install fcitx
# 搜狗 : https://pinyin.sogou.com/linux/?r=pinyin
# 百度 :https://srf.baidu.com/site/guanwang_linux/index.html
sudo aptitude install fcitx-bin fcitx-table fcitx-config-gtk fcitx-config-gtk2 fcitx-frontend-all
sudo aptitude install qt5-default qtcreator qml-module-qtquick-controls2
sudo dpkg -i fcitx-baidupinyin.deb # 安装百度输入法
sudo dpkg --purge remove fcitx-baidupinyin:amd64 # 卸载


配置工具集:

  • (1) Terminaltor 终端优化

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    # 1.优化 Terminator 界面方案
    mkdir ~/.config/terminator/
    touch ~/.config/terminator/config
    gedit ~/.config/terminator/config
    [global_config]
    suppress_multiple_term_dialog = True
    [keybindings]
    [profiles]
    [[default]]
    background_color = "#002b36"
    background_darkness = 0.92
    background_type = transparent
    cursor_color = "#3036ec"
    font = Ubuntu Mono 15
    foreground_color = "#839496"
    show_titlebar = False
    login_shell = True
    custom_command = tmux
    use_system_font = False
    [layouts]
    [[default]]
    [[[window0]]]
    type = Window
    parent = ""
    [[[child1]]]
    type = Terminal
    parent = window0
    [plugins]

    # 2.Terminator 设置为默认的终端(实际测试中无需安装)
    sudo apt-get -y install dconf-editor
    dconf-editor
    # 依次打开 org --> gnome --> desktop --> terminal, 输入以下内容:
    exec: x-terminal-emulator
    exec-arg: -e

    # 3.Ctrl + Alt + T 启动 Terminator
  • (2) zsh 与 oh-my-zsh 基础配置

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    # (1) 设置 zsh 为默认的 shell
    chsh -s /bin/zsh

    # (2) oh-my-zsh 默认主题配置文件在 ~/.zshrc 后续配置中会使用到
    touch ~/.zshrc

    # (3) zsh 插件
    # 语法高亮插件 zsh-syntax-highlighting
    git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh}/plugins/zsh-syntax-highlighting
    # 自动提示插件 zsh-autosuggestions(快速补齐快捷键ALT+E行位,ALT+F匹配一个语句)
    git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh}/plugins/zsh-autosuggestions


    # (4) 在 .zshrc 文件添加插件以及主题
    # See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
    # 缺省主题 "robbyrussell"
    # 推荐主题: juanghurtado 、kardan、agnoster
    ZSH_THEME="agnoster"
    plugins=(git zsh-syntax-highlighting zsh-autosuggestions)

    # (5) 执行source使配置生效:
    $ source .zshrc
WeiyiGeek.terminal与oh-my-zsh

WeiyiGeek.terminal与oh-my-zsh

  • (3) 输入法设置
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    # 1.假设前面您已经安装fcitx,此处以安装谷歌拼音输入法(Google Pinyin)为例,首先在系统终端中输入命令:
    im-config #注:im-config是Input Method Configuration的缩写。

    # 2.在用户配置设置系统中必须选中Fcitx,然后选择Yes , 然后重启机器

    # 3.安装谷歌拼音输入法(Google Pinyin)非常简单,只需要下面这个命令:
    sudo apt install fcitx-googlepinyin

    # 4. 安装后运行如下命令配置谷歌拼音输入法 或者在右上角进行点击:
    fcitx-config-gtk3

    # 5.打开Input Method Confuguration窗口,点击左下角 + 号,添加Google Pinyin 输入法
    # 注意最下面的输入法即默认激活的输入法;

    # 6.最后用快捷键:Ctrl+Shift 切换输入法
WeiyiGeek.输入法

WeiyiGeek.输入法


补充工具
截图工具

peek
描述: Peek 可以生成轻量级的GIF 图片, 也可以生成 MP4、APNG和WebM格式

1
2
3
4
5
6
7
# 1. 打开命令行后,获取Peek的PPA源(如果不行,多试几次)
sudo add-apt-repository ppa:peek-developers/stable
# 2. 更新源
sudo apt-get update
# 3. 安装peek
sudo apt-get install peek
# 4. 运行peek

使用说明: 使用peek后可以把目标对象放进进Peek 的框架里面, 然后点击最左上角的图标进行录制GIF图片,再次点击最左上角的图标停止录制GIF图片,然后自动弹出保存界面:

WeiyiGeek.Peek

WeiyiGeek.Peek


Kazam
描述: Kazam 是一个很轻量级的屏幕录制工具,也可以用来截图。

1
$ sudo apt install kazam


版本控制

Meld
描述:Meld 是类似 Beyong Compare 的一种优秀的文件或目录比较软件,并支持许多流行的版本控制系统。

1
$ sudo apt-get install meld


视频工具

VLC
描述:VLC是一个好用的视频播放器

1
$ sudo apt install vlc


4.WPS 安装

描述: 虽然 Ubuntu 内置 LibreOffice 文档编辑器 , 个人更偏向于WPS其完善的功能(PS:唯一不足就是广告太多)
官网: https://linux.wps.cn/

1
2
3
4
5
# (1) 下载安装
$ wget https://wdl1.cache.wps.cn/wps/download/ep/Linux2019/9711/wps-office_11.1.0.9711_amd64.deb

# (2) 安装WPS
$ sudo dpkg -i wps-office_11.1.0.9711_amd64.deb
WeiyiGeek.WPS

WeiyiGeek.WPS

说明: 在Ubuntu 20.04中在使用WPS时没有出现系统缺失字体的问题,而这个问题在以前是很常见的


5.Pycharm 安装

描述:Pycharm 是一款进行Python开发的IDE编辑器由jetbrains公司进行开发的同样与大多数商业软件一样,它也有的专业版与社区免费版本以及教育的版本;

本次演示在Ubuntu 20.04 TLS 中下载安装Pycharm专业版,系统依赖;

1
2
3
4
5
6
7
8
# System requirements
GNOME or KDE desktop
2 GB RAM minimum, 8 GB RAM recommended
2.5 GB hard disk space, SSD recommended
1024x768 minimum screen resolution
Python 2.7, or Python 3.5 or newer

Note: JetBrains Runtime (JBR) 11 is included with the PyCharm distribution. You do not need to install Java on your computer to run PyCharm.

官方下载地址:https://www.jetbrains.com/pycharm/download/#section=linux

操作流程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# (1) 安装 Pycharm 首先解压安装包 pycharm-professional-2020.1.tar.gz pycharm-2020.1
tar -zxvf pycharm-professional-2020.1.tar.gz pycharm-2020.1/

# (2) 建立软件存放路径
cd ~/app/program/pycharm-professional/ && ls
> ls
bin debug-eggs index jbr license product-info.json
build.txt help Install-Linux-tar.txt lib plugins pycharm-2020.2.3

# (3) 初始化 Pycharm 稍后会弹出一个窗口选择同意并且设置可用命令行启动charm;
./bin/pycharm.sh

# (4) 设置桌面图标在创建项目的页面上选择configure之后选择 Create Desktop Entry(注意需要进行认证)或者手动创立桌面图标;
$ cat /usr/share/applications/jetbrains-pycharm.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=PyCharm Professional Edition
Icon=~/app/program/pycharm-professional/bin/pycharm.svg
Exec="~/app/program/pycharm-professional/bin/pycharm.sh" %f
Comment=Python IDE for Professional Developers
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-pycharm

# (5) 命令行启动Pycharm
$ charm

# (6) 配置Python环境,默认情况下Pycharm新建工程的话,可能会创建失败会报错,比如“错误提示:ModuleNotFoundError: No module named ‘distutils.util’ ”
# 此时我们需要安装pip 以及 python3-distutils
sudo apt -y install python3-pip python3-distutils

优化配置:

1
2
3
4
5
6
7
8
9
10
11
# (1) 配置字体
# File -> Setting -> Editor -> Font
Font: DialogInput
Size: 18

# (2) 安装插件(注意需要重启IDE)
# File -> Setting -> Plugings
0) chines :界面语言
1)statistic: 项目统计
2)Rainbow Brackets:让代码块之间很清晰的显示出各种颜色
3).ignore:使用git的人知道,也就是.gitignore

WeiyiGeek.插件安装与使用

WeiyiGeek.插件安装与使用

基础使用:

1
# (1)

WeiyiGeek.runPython

WeiyiGeek.runPython


0x03 入坑出坑

1.Ubuntu20.04密码忘记了怎么办?

描述:解决流程与CentOS7更改密码原理差不多,都是通过修复模式进入单用户模式进行更改重置密码;

流程如下:

  • 1) 重启Ubuntu20.04操作系统,然后快速的按下shift按键并保持,直到出现启动界面选择【Ubuntu的高级选项】回车继续。
  • 2) 选择指定内核版本的恢复模式(Recovery Mode)按回车键进入。

    WeiyiGeek.高级选项

    WeiyiGeek.高级选项

  • 3) 进入编辑页面后替换找到如(ro_recovery)下图标记位置将 ro 替换为 rw,之后按Ctrl+X进行引导;

  • 4) 选择单用户模式进行root修改密码或者重置其它用户的密码采用passwd 用户命令;
    WeiyiGeek.恢复菜单

    WeiyiGeek.恢复菜单

  • 5) 退出重启(reboot)即可


2.在使用Ubuntu Software时提示/usr/share/appdata目录不存在

问题描述: 新装的系统在软件商店装软件的时候一直提示/usr/share/appdata目录不存在
解决办法:

  • (1) 图形界面打开系统监视器,并搜索 snap-store 选择 snap-store 进程并点击结束进程,然后重新打开Ubuntu软件;
  • (2) 命令行界面打开系统监视器 gnome-system-monitor
WeiyiGeek.gnome-system-monitor

WeiyiGeek.gnome-system-monitor


3.运行fcitx-config-gtk3时候显示如下 Name “org.fcitx.Fcitx-0” does not exist 警告

问题描述:

1
2
** (fcitx-config-gtk3:19361): WARNING **: 06:55:31.194: GDBus.Error:org.freedesktop.DBus.Error.NameHasNoOwner: Name "org.fcitx.Fcitx-0" does not exist
** (fcitx-config-gtk3:19361): WARNING **: 06:55:42.456: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.fcitx.Fcitx-0 was not provided by any .service files

问题原因: 由于ubuntu输入法配置为iBus需要执行im-config命令配置键盘输入输出为fcitx;