Author : witt
Date : 2022-08-12
发行版 | 发行版系统 | 包管理器 | 包管理工具 | 软件包格式 |
---|---|---|---|---|
Debian |
Deepin ,Ubuntu (Kylin),Linux Mint |
apt |
dpkg |
*.deb |
Arch |
Manjaro ,Arch Linux |
pacman ,yay |
*.pkg.tar.xz ,*.pkg.tar.zst |
|
RedHat |
CentOS ,SuSE ,红旗 |
yum ,dnf |
rpm |
*.rpm |
系统 | 预装桌面 |
---|---|
Ubuntu |
gnome 或 Unity |
Arch Linux 、Manjaro |
跟随ISO,可选kde 、xfce 、gnome |
其它 | 各自的定制化桌面 |
名称 | 说明 |
---|---|
gnome | 非常直观,简洁,使用比较自然,定制化程度一般(无最基本的字体,外观等选项),很多发行版默认的桌面环境,如需拓展,需要安装shell 插件,但插件管理能力很差 |
unity | 运行于gnome之上,通知能力一版,Ubuntu系列的定制桌面,不支持其他主流的发行版,定制化很差,但是比较直观 |
kde | 功能强大,可配置型极高,自由度很强的桌面环境,基于QT,类似Windows,兼容性很强,自带组件很多,以K开头,配置复杂度高 |
xfce | 空间占用极小,类似KDE,图像渲染能力极差,甚至缺失,对于低内存老旧机器适应很好,支持的软件比较少 |
如何切换桌面?
1.换Ubuntu的gnome桌面环境为kde
网友1: sudo apt install -yq kubuntu-desktop # 会将gUbuntu换成Kubuntu
网友2:sudo apt install -yq kde-full # 完整版,安装很多名字为k开头的游戏
网友3:sudo apt install -yq kde-plasma-desktop # 最小安装,真的只有个桌面
我:sudo apt install -yq kde-standard # 标准版
打开KDE主题商店 KDE换主题或插件,打开在线商店失败?下载失败? 在设置中将系统语言改成英文,即可解决,设置完成后,可以改回来
2.换Ubuntu的gnome桌面环境为xfce等 xfce的Ubuntu叫xUbuntu,安装方式同kde
sudo apt install -yq xfce4-standard
cat /etc/shells
Shell名称 | 配置文件 | 备注 |
---|---|---|
bash | ~/.bashrc | Linux 默认Shell |
sh | ~/.bashrc | bash的别名 |
csh | C语言风格的Shell | |
zsh | ~/.zshrc | 功能丰富,可拓展性很强,可安装插件的shell,注重交互式操作 |
# 输出本机
echo $SHELL
# 修改本机默认shell (交互式修改)
chsh
# 修改默认Shell为zsh
chsh -s /bin/zsh
优点: 简单,便捷,一行命令就结束了,升级跟随系统 缺点: 1.支持安装的软件数量完全取决于对应发行版的软件生态圈 2.很多好用的软件不存在于软件源仓库中,需要自己寻找添加ppa,才能使用包管理器安装 3.开源软件几乎都不支持这种方式,即使支持,寻找ppa也比较困难
# arch 发行版
sudo pacman -S peek;
# 使用AUR仓库
yay -S com.qq.weixin.work.deepin-x11;
# Red Hat
rpm -ivh nginx.rpm
# centOS
yum install nginx;
# Ubuntu,debian
audo apt-get install nginx;
优点: 能学习到软件开发者的思路,了解到软件的构成(我是没学习到。)。还可以自由定制化。绝大部分程序员都推荐你这么安装,但是我不推荐! 缺点: 1.自己编译,你得有功底,而且很费时间,一旦遇到error,只能自己去ISSUE上找,找不到就得劝退。 2.软件更新后,需要拉取最新的代码,再次手动编译安装,重点是你不知道作者什么时候更新了
- 一般步骤
cd source/;
# 检查编译环境
./configure
# 对源代码进行编译
make
# 安装
sudo make install
# 可选,清理编译产生的临时文件
make clean
优点: 安装很方便,作者已经打好包,下载到压缩文件解压后,放在对应目录下,加环境变量/软链接/桌面图标即可 缺点: 1.下载时,要能分清楚架构: arm,X64,X86等 2.无法获得更新,更新时需要下载最新的包覆盖。
- 一般步骤
# 下载
wget http://xxxx.com/xxx-1.0.0.tar.gz
# 解压
tar xf xxx-1.0.0.tar.gz -C xxx
# 链接可执行文件到全局使用
cd xxx
ln -s xxx /usr/bin/xxx
- 优先包管理器
可以在更新系统的同时,更新对应的软件
- 软件包
*.deb
安装
- 为了shell命令不区分大小写
- 获得准确的命令行提示,更精确的tab补全
- 展示更多的命令行信息(git分支,仓库变化等)
- 获得主题、插件的支持,更好的自定义和拓展性
- 智能切换目录等
sudo apt -yq install zsh;
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)";
# 报错,curl找不到,安装curl
sudo apt -yq install curl wget;
- 主题官网
- 主题文件存放目录
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes
clone
到主题目录下
# ssh clone
git clone git@github.com:romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
# http
git clone https://github.com/romkatv/powerlevel10k ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
- 修改环境变量
将
~/.zshrc
文件中的ZSH_THEME
变量值改成自己clone
的目录的名字 - 使配置生效
重启终端或执行
source ~/.zshrc
- 插件官网
- 插件存放目录
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins
-
clone
到插件目录下git clone git://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
-
修改环境变量 将插件目录名添加到
~/.zshrc
文件中的plugins
数组中 -
使配置生效 重启终端或执行
source ~/.zshrc
# 语法高亮
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
# 历史命令提示
git clone https://github.com/zsh-users/zsh-history-substring-search ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-history-substring-search
参考plugins=(git zsh-autosuggestions zsh-syntax-highlighting zsh-history-substring-search themes gitignore cp sudo z extract)
z
完成路径智能cd
,输入曾经cd
路径中的一部分即可双击ESC
当前命令前面加sudo
thefuck
命令自动纠错extract
智能解压,忽略tar
,zip
,7z
的区别
原样返回上一条命令(不管成功与失败) 案例:
sudo !!
,忘记加sudo
,下一行直接执行
kill -15
能触发JVM的关闭钩子,kill -9
不会
Runtime.getRuntime().addShutdownHook(new Thread(){
@Override
public void run() {
}
});
xkill
是kill
的图形化命令,可以用鼠标获取一个应用程序的焦点,完成kill
nohup
将进程放在后台,该进程所有输出重定向到nohup.out
文件,该进程不会随着当前session挂断(SIGHUP
信号),但会被Ctrl + C
(SIGINT
)关闭&
将进程放在后台,该进程的所有输出仍然屏显在当前会话的console
中,该进程的会在当前会话结束时结束,不会被Ctrl + C
(SIGINT
)关闭- 使用
nohup xxx &
组合,免疫SIGHUP
和SIGINT
信号
/dev/null
空设备文件,只写,也称黑洞
,所有内容写入它,都会丢失/dev/zero
字符设备文件,只读,里面有无穷无尽的0
快速创建一个10G的txt文件dd if=/dev/zero of=1.txt bs=1024MB count=9
记忆 dd通过if创建count*bs大小的of文件
- 查看文件大小
du -h
通用格式
- 把应用泡在后台,不显示任何输出
command > /dev/null 2>&1 &
- 把应用泡在后台,不显示任何输出,且永远运行
nohup command > /dev/null 2>&1 &
0
标准输入1
标准输出2
标准错误输出2>&1
将标准错误输出重定向为标准输出
创建1000个文件
mkdir -p /tmp/test && cd /tmp/test;
touch {1..1000}.txt
扒拉网站上的资源wget http://192.168.10.61/wallpapers/wallpaper{1..585}.jpg
配合xargs
命令find ./ -name ".git" -type d | xargs -i cd {} && cd ../ && git checkout master
配合exec
命令find ./ -name ".git" -type d -exec rm {} \;
删除a.txt和b.txt => rm {a,b}.txt
... 其他
有时使用
vim
编辑文件,比如hosts
或者/etc
的配置文件nginx.conf
等,应该使用sudo vim
,忘记了加sudo
,已经写好了,执行:wq
时,才发现忘了加sudo
方案: 先保存:w !sudo tee %
,再q
退出
top
命令的增强版 交互式管理进程 动态查看CPU,内存,磁盘占用等
- 安装
sudo apt -yq install htop btop
- 使用 终端输入
htop
或btop
- 卸载
sudo remove htop btop
git
部分命令的增强版 命令行交互式比较文件修改等
- 安装
sudo apt -yq install tig
- 使用
git
用tig
替换 - 卸载
sudo remove tig
cat
的增强版 对文件内容做了语法高亮,格式化输出等
- 安装
sudo apt -yq install bat
- 使用cat
用
bat`替换 - 卸载
sudo remove bat
安装完输入
bat
找不到命令? 原因:Ubuntu环境下bat
命令疑似存在,会被更名为batcat
方案: 1.使用batcat
2.使用软链接覆盖 `sudo ln -sf /usr/bin/batcat /usr/bin/bat
man
的增强版 命令行的案例
- 安装
snap install cheat
- 使用
man
用cheat
替换 - 卸载
snap remove cheat
alias
命令可以将一段命令赋值给一个字符串,完成命令的简化
-
ohmyzsh
内置了一些别名,可以直接在终端执行alias
查看 -
例如切换jdk
select-java='sudo update-alternatives --config java'
select-javac='sudo update-alternatives --config javac'
- 给命令起别名
- 处理快捷图标
# snap 安装的软件,没有桌面图标
ln -sf /var/lib/snapd/desktop/applications/datagrip_datagrip.desktop /usr/share/applications/datagrip.desktop
-
聚合配置文件
Linux系统下,所有软件的配置文件,一定放在
~/.config/app/
,可以利用这种特性,将所有的配置文件放在一起,然后link到config目录下,完成所有配置的统一备份
(3).ssh别名
本机开启
sshd
,运行sudo apt -yq ssh
目的:
ip
地址记不住,分不清 原理: 在~/.ssh/config
下为每一个链接指定链接信息
使用步骤:
-
创建别名配置
echo "Host {ALIAS}\n\tHostName {IP_HOST}\n\tUser {USER_NAME}\n\tPort 22" >> ~/.ssh/config
-
下次连接直接
ssh {USER_NAME}@{ALIAS}
目的: 使用ssh公钥免输入密码登录
安装
sudo apt-get install ssh
使用步骤:
- 生成sshkey
ssh-keygen [-t rsa] [-f test] -C "comment"
- 复制本机公钥到目标主机
ssh-copy-id username@host
- 直接
ssh username@host
或ssh {ALIAS}
登录
免密码 + 别名 组合,完美快捷登录服务器,还可以
scp
免密码传输文件 更可以搞破坏ssh {ALIAS} "dd if=/dev/zero of=bin bs=1.23G count=370"
#!/bin/bash
shell脚本运行方式
chmod +x test.sh && ./test.sh
bash test.sh
source test.sh
. test.sh
安装
wget -O switch_hosts.deb https://download.fastgit.org/oldj/SwitchHosts/releases/download/v4.1.2/SwitchHosts_linux_amd64_4.1.2.6086.deb;
sudo dpkg -i switch_hosts.deb;
卸载sudo apt remove switchhosts
GitHub有时打不开?有时很慢?
- github网站的Hosts,你值得拥有
https://raw.hellogit.luolix.top/hosts
,记得设置更新哦!
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# zsh
echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.zshrc
source ~/.zshrc
# bash
echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' >> ~/.zshrc
source ~/.bashrc
- 使用
# 下载最新版node
nvm install --lts
# 查看本机安装的所有node版本
nvm list
# 安装指定版本的node,例如10.16.0
nvm install 10.16.0
# 切换node版本,例如 切换未 10.16.0
nvm use 10.16.0
# nvm 删除 10.16.0版本node
nvm uninstall 10.16.0
建议安装旧版本,新版本收费,该软件同样用
ssh key
可以操作git,支持自动化,界面很酷
- 安装
snap install gitkraken --classic
- 卸载
snap remove gitkraken
- 安装
sudo apt install -yq yakuake
- 卸载
sudo apt remove yakuake
- 安装
sudo add-apt-repository ppa:linuxuprising/guake
sudo apt-get update
sudo apt install guake
- 卸载
sudo apt remove guake
- 安装
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/sublimehq-archive.gpg
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt-get update
sudo apt-get install -yq sublime-text
sudo apt-get install -yq apt-transport-https
- 卸载
sudo apt remove sublime-text
sudo apt install -yq tmux
sudo apt remove tmux
tmux
进入会话ctrl + B => %
垂直拆分窗口(左右各一个)ctrl + B => "
水平拆分窗口(上下各一个)ctrl + B => { 或 ←
光标左移一个窗口ctrl + B => } 或 →
光标右移一个窗口ctrl + B => ↑
光标上移一个窗口ctrl + B => ↓
光标下移一个窗口ctrl + B => o
切换到下一个窗口ctrl + B => ;
上一个和当前窗口循环exit
结束当前会话
Ubuntu
安装Linux非常简单
- 基本命令
sudo apt install openjdk-版本-jdk openjdk-版本-source openjdk-版本-doc
- 释义
openjdk-版本-jdk
安装JDK
本身openjdk-版本-source
安装JDK
的源代码openjdk-版本-doc
安装JDK
的JavaDoc
- 案例
JDK17
的安装命令如下
sudo apt install openjdk-17-jdk openjdk-17-source openjdk-17-doc
- 基本命令
sudo apt remove openjdk-版本-jdk openjdk-版本-source openjdk-版本-doc
- 案例
JDK17
的卸载命令如下
sudo apt remove openjdk-17-jdk openjdk-17-source openjdk-17-doc
Linux
下安装多个版本的JDK
后,支持共存,但是不要自己去环境变量中配置任何环境变量!!!
Linux
不需要配置环境变量,设置默认JDK之后,会将Java
可执行程序自动软连接到系统Path
下
- 切换命令
切换java
命令: sudo update-alternatives --config java
切换Javac
命令: sudo update-alternatives --config javac
优麒麟的软件商店
https://www.ubuntukylin.com/applications/
- 安装
sudo snap install another-redis-desktop-manager
- 卸载
sudo snap remove another-redis-desktop-manager
JetBrains系列软件使用snap
命令安装会出现各种各样的问题,推荐大家使用apt
命令安装,(开源的ppa源地址)[https://github.com/JonasGroeger/jetbrains-ppa]
- 处理仓库
# 该命令如果因网络原因出错,可多试几次
curl -s https://s3.eu-central-1.amazonaws.com/jetbrains-ppa/0xA6E8698A.pub.asc | gpg --dearmor | sudo tee /usr/share/keyrings/jetbrains-ppa-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/jetbrains-ppa-archive-keyring.gpg] http://jetbrains-ppa.s3-website.eu-central-1.amazonaws.com any main" | sudo tee /etc/apt/sources.list.d/jetbrains-ppa.list > /dev/null
sudo apt-get update
- 安装
sudo apt-get install -yq intellij-idea-ultimate
#sudo apt-get install -yq intellij-idea-community
- 卸载
sudo apt-get remove intellij-idea-ultimate
sudo apt-get remove intellij-idea-community
- 安装
sudo snap install datagrip --classic
# 解决snap安装没有启动图标(*.desktop)的问题
ln -sf /var/lib/snapd/desktop/applications/datagrip_datagrip.desktop /usr/share/applications/datagrip.desktop
- 卸载
sudo snap remove datagrip
- 安装
cd /tmp
# 下载
wget -o FoxitReader.tar.gz https://cdn07.foxitsoftware.cn/pub/foxit/reader/desktop/linux/2.x/2.4/en_us/FoxitReader.enu.setup.2.4.5.0727.x64.run.tar.gz
# 解压
tar xf FoxitReader.tar.gz
# 运行解压后的.run文件,做图形化安装
./*.run
- 卸载
/opt/f/opt/foxitsoftware/foxitreader/maintenancetool
- 安装
sudo apt install -yq peek
- 安装
sudo apt remove peek
- 安装
sudo apt install -yq copyq
- 安装
sudo apt remove copyq
- 安装
sudo apt install -yq rdesktop
- 安装
sudo apt remove rdesktop
- 安装
sudo apt install -yq zip unzip
- 卸载
sudo apt remove zip unzip
- 安装
sudo apt install -yq 7zip
- 卸载
sudo apt remove 7zip
- 安装
sudo apt install -yq ark
- 卸载
sudo apt remove zip ark
旧版`deepin Wine Weixin
wget -O- https://deepin-wine.i-m.dev/setup.sh | sh
sudo apt-get install -yq com.qq.weixin.deepin
sudo apt-get install -yq fonts-droid-fallback ttf-wqy-zenhei ttf-wqy-microhei fonts-arphic-ukai fonts-arphic-uming
sudo apt install -yq libjpeg62:i386
腾讯原生微信:https://zhuanlan.zhihu.com/p/690854988
(11)系统清理优化Stacer
一个开源系统优化器和应用程序监视器,可帮助用户从不同方面管理整个系统。
- 安装
sudo add-apt-repository ppa:oguzhaninan/stacer
sudo apt-get update
sudo apt-get install -yq stacer
- 卸载
sudo apt-get remove stacer
- 安装
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/googlechrom-keyring.gpg] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
curl -fsSL https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /usr/share/keyrings/googlechrom-keyring.gpg
sudo apt update
sudo apt-get install -yq google-chrome-stable
- 卸载
sudo apt remove google-chrome-stable
ulauncher
和albert
,目前ulauncher
从外观,拓展各方面比albert
强
ulauncher官网
- 安装
sudo add-apt-repository -y ppa:agornostal/ulauncher
sudo apt -yq update
sudo apt -yq install ulauncher
# 开机自启动
systemctl --user enable --now ulauncher
# 禁用自启动
systemctl --user disable --now ulauncher
- 卸载
sudo apt remove ulauncher
- 安装
mkdir -p /tmp/apifox && cd /tmp/apifox;
wget -O apifox-latest.zip https://cdn.apifox.cn/download/Apifox-linux-deb-latest.zip
unzip apifox-latest.zip;
sudo dpkg -i *.deb;
- 卸载
sudo apt remove apifox
mkdir -p /tmp/todesk && cd /tmp/todesk;
wget -O todesk_latest.deb https://dl.todesk.com/linux/todesk-v4.3.1.0-amd64.deb
sudo dpkg -i todesk_latest.deb;
- 卸载
sudo apt remove todesk
- 安装
mkdir -p /tmp/dingtalk && cd /tmp/dingtalk;
wget -O dingtalk_latest.deb https://dtapp-pub.dingtalk.com/dingtalk-desktop/xc_dingtalk_update/linux_deb/Release/com.alibabainc.dingtalk_1.4.0.20425_amd64.deb
sudo dpkg -i dingtalk_latest.deb;
- 卸载
sudo apt remove dingtalk
- 安装
sudo apt -yq install meld
- 卸载
sudo apt remove meld
- 安装
sudo apt -yq install vlc
- 卸载
sudo apt remove vlc
- 安装
snap install xmind
- 卸载
snap remove xmind
简单截图,画笔编辑,添加文字等
- 安装
sudo apt -yq install flameshot
- 卸载
sudo apt remove flameshot
- 启动命令
flameshot gui
,可以用这个命令做全局快捷键
更加详细的命令,参考
flameshot -h
高级截图,捕获弹出式菜单等
- 安装
sudo apt -yq install shutter
- 卸载
sudo apt remove shutter
更加详细的命令,参考
shutter -h
,这个软件重在图形化界面的编辑
- 安装
sudo apt install -yq screefetch
- 卸载
sudo apt remove screefetch
搜狗输入法Linux版依赖Linux的小企鹅框架
Fcitx
,目前Fcitx
已经到Fcitx4
版本,且已经弃用,搜索输入法仍然在使用,推荐大家用云鹤双拼,新版的Ubuntu安装后,已经移除了Fcitx
框架
- 安装
# 卸载新版的ibus
sudo apt purge ibus;
# 安装停更的 fcitx
sudo apt update;
sudo apt-get -yq install fcitx;
# sudo cp /usr/share/applications/fcitx.desktop /etc/xdg/autostart/
# 安装搜狗
mkdir /tmp/sogoupinyin && cd /tmp/sogoupinyin;
wget -O sogoupinyin_lastest.deb https://ime.sogouimecdn.com/202209071108/ba44083b104645aa5acfac21a5e64f66/dl/gzindex/1656597217/sogoupinyin_4.0.1.2800_x86_64.deb
sudo dpkg -i sogoupinyin_lastest.deb
# 安装缺失库
sudo apt -fyq install;
# 安装依赖库
sudo apt -yq install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2 libgsettings-qt1
# 重启
sudo reboot;
遇到问题了?搜狗卡顿老闪退?有时还报错?
- 一行命令重置它
rm -rm ~/.config/sogoupinyin && sudo reboot
修复Linux环境下的输入法光标不跟随
官网https://github.com/RikudouPatrickstar/JetBrainsRuntime-for-Linux-x64
cd /tmp;
mkdir jebt;
cd jebt;
wget https://proxy.freecdn.ml/?url=https://github.com/RikudouPatrickstar/JetBrainsRuntime-for-Linux-x64/releases/download/jbr-release-17.0.6b829.5/jbr_jcef-17.0.6-linux-x64-b829.5.tar.gz -O jbr_jcef.tar.gz
tar xf jbr_jcef.tar.gz
mv * jbr;
mv jbr /opt/intellij-idea-ultimate
往服务器上传输文件,依靠SSH协议,通过
scp
命令可以很便捷的传输文件,某些时候,文件比较多,环境复杂时,需要图形化工具,FileZilla
就是做这个事情的,支持ssh
,ftp
等
- 安装
sudo apt -yq install filezilla
- 卸载
sudo apt remove filezilla
Gimp
类比于Windows环境下的PhotoShop
- 安装
sudo apt -yq install gimp
- 卸载
sudo apt remove gimp
krita
类比Windows的画图程序,功能又比画图强大,适合草绘,插图,漫画等,支持数位板、滤镜、图层等
- 安装
sudo apt -yq install krita
- 卸载
sudo apt remove krita
Ubuntu 新版推出了snap
包管理器,这个管理器可以直接安装vscode,使用命令 snap install code --classic
即可,但是安装的是阉割版,存在不能输入中文的问题,所以更加推荐导入微软的GPG key
来安装完整版
- 导入GPG
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
- 添加源
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
- 更新源
sudo apt update
- 安装
sudo apt install code
sudo apt remove code
- 安装
snap install webstorm --classic
- 卸载
snap remove webstorm
- 图标问题=>解决snap找不到图标问题
Linux环境下的Dock有很多种,latte-dock
,dash-to-dock
,dockty
等,这里推荐latte-dock
- 安装
sudo apt -yq install latte-dock
- 卸载
sudo apt remove latte-dock
- 使用
首次直接命令行执行
latte-dock > /dev/null 2>&1 &
,启动后在首选项设置开启自启动即可。
latte-dock
完美适配KDE主题,图标渲染等,插件下载同KDE商店,点击直达切换为KDE桌面
Typora
在1.0版本之后,走了收费路线,我们这种用了很多年的老用户,全部都转到MarText
去了,但是由于使用习惯的问题,还是倾向于使用typora
, 最后的Beta版本0.18.11
仍然可以继续使用,由于官网国内打不开,我这里提供国内下载的安装方式
mkdir -p /tmp/typora && cd /tmp/typora;
wget -O typora.deb https://repo.linuxacme.cn/Typora_Linux_0.11.18_amd64.deb
sudo dpkg -i typora.deb;
https://www.crx4chrome.com/
https://www.extfans.com/
https://chrome.zzzmh.cn/#/index
https://www.crxsoso.com/
crx拖放安装失败?
- 将下载后的文件后缀
.crx
改成.zip
unzip xxx.zip
解压缩- 如图打开开发者模式,加载解压的插件
离线安装完iGuge后,就可以打开Google商店在线安装了 建议全部采用在线安装,登录Google账户后,换电脑,重装系统,都可以同步插件和设置,而且支持在线更新
- 二管家安装地址
https://chrome.google.com/webstore/detail/extension-manager/gjldcdngmdknpinoemndlidpcabkggco?hl=en-US
- 可以很方便的启用/禁用插件,分组管理等
- 安装地址
https://chrome.google.com/webstore/detail/take-webpage-screenshots/mcbpblocgmgfnpjjppndjkmgjaogfceg?hl=en-US
- 安装地址
https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm?hl=en-US
安装地址https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo?hl=en-US
安装地址https://chrome.google.com/webstore/detail/violentmonkey/jinjaccalgkegednnccohejagnlnfdag?hl=en-US
- 原理:借助油猴插件或暴力猴插件运行自定义的
javascript
代码
- 脚本获取地址
https://greasyfork.org/zh-CN
- 新建git仓库,复制仓库地址
- 依次打开软件的
Settings Repository
功能
- 第一次备份,选择
Overwrite Remote
,第一次还原选择Overwrite Local
优点:软件每次关闭会自动将新配置提交到git仓库,无需人工处理,只配置依次 缺点:无法同步
Plugins
和Live Templates
等,这些内容要自己备份
- 查看idea配置的目录
bat /opt/intellij-idea-ultimate/bin/idea.properties
- 自己在其他目录下创建配置目录,初始化git仓库,写好
.gitignore
文件,手动同步 - 自己写
crontab
定时任务,完成commit
和push
操作
优点:全量备份,所有配置都不会丢失 缺点: 具体区分不开哪些文件需要同步,哪些文件需要忽略,筛选不严格,造成丢失,也可能造成仓库很大 定时同步出错后不能及时收到通知,(可以用shell发邮件),每次commit的内容,不能区分变化了什么内容
GitHub
和Gitee
就是天然的免费仓库,我们自己的笔记都可以记录在里面,很多软件的配置都在~/.config
文件夹下,配合shell
脚本 +crontab
定时任务 +ln -sf
软链接,理论上可完成任何软件的配置备份
-
安装timeshift
sudo apt install -yq timeshift
-
配置好
timeshift
的备份回滚策略
- 注意将备份文件存放在1T的磁盘上
备份文件地址/run/timeshift/backup/timeshift/snapshots/
- tty是Linux的shell环境,你可以理解为应急情况下的Windows命令行终端
- 开机后如果直接进入命令行,未进入桌面,证明桌面环境组件被破坏,查看日志解决
查看系统日志命令journalctl -e
- 如果实在无法解决,别忘了咱们的timeshift哦,直接输入
timeshift -h
开始你的操作,Linux一切设备皆文件,直接cp -rf
动起来 - 理论上,不管是应急状态,还是正常使用状态,Linux桌面环境和tty是可以无缝切换的。切换快捷键一般是
Ctrl + ALT + F1(可能是F2,或者F3)
遇到微信,或者任何第三方软件截屏,一打开第三方软件,屏幕全黑
这种情况是因为当前登录会话不支持捕获屏幕xdg信息,需要切换登录会话为Xorg
或者XWindow
(1)注销登录
(2)登录界面右下角齿轮图标选择Xorg
或XWindow
,具体取决于Ubuntu的版本
安装库
sudo apt install libjpeg62:i386
以微信为例
使用Wine模拟的Windows环境,在安装Wine版微信、QQ、钉钉后,可能会在初次打开,中文显示为方框
这种情况是因为缺少微软雅黑
的中文字体,字体文件叫msyh.ttf
或者msyh.ttc
,名字与Windows注册表中的声明有关
(1)获取到微软雅黑的字体,注意修改文件名,点击下载微软雅黑字体,放在目录~/.deepinwine/Deepin-WeChat/drive_c/windows/Fonts
(2)修改文件~/.deepinwine/Deepin-WeChat/system.reg
中的字体
以下两行中的值改成自己的字体文件名
"MS Shell Dlg"="msyh"
"MS Shell Dlg 2"="msyh"
以上内容一行命令搞定
sed -i.bak 's/\Tahoma\b/msyh/' ~/.deepinwine/Deepin-WeChat/system.reg
(3)家目录下新建文件msyh_config.reg
内容如下,注意字体名称对应
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink]
"Lucida Sans Unicode"="msyh.ttf"
"Microsoft Sans Serif"="msyh.ttf"
"MS Sans Serif"="msyh.ttf"
"Tahoma"="msyh.ttf"
"Tahoma Bold"="msyhbd.ttf"
"msyh"="msyh.ttf"
"Arial"="msyh.ttf"
"Arial Black"="msyh.ttf"
(4)注册字体
执行WINEPREFIX=~/.deepinwine/Deepin-WeChat deepin-wine6-stable regedit ~/msyh_config.reg
deepin-wine6-stable
是wine环境的命令,受操作系统版本不同,支持的命令名称不同,具体命令,自己查找一下
Ubuntu在初始安装时,如果选择了中文语言,安装后,家目录下的6大文件夹,名称会变成中文名称,在命令行cd
等,输入时,比较麻烦
桌面
->Desktop
,文档
->Doccuments
,下载
->Downloads
等文件名称是跟随系统语言的,支持i18n
临时修改语言为英文,将主目录更新为英文名,再把语言修改为中文,趁它不注意,不改回来了。
(1)修改为英文语言export LANG=en_US
(2)更新主目录语言为英文xdg-user-dirs-gtk-update
(3)将语言改回中文export LANG=zh_CN
Linux
系统需要关机吗?需要清理垃圾吗?需要杀毒吗?
-
原则上,Linux可以一直不关机,直到不可抗因素(停电等)帮你关机,Linux是不会出现卡顿问题的,完全不同于Windows系统,至于为什么?你可以这么想?咱们的服务器需要关机吗?例如Web服务器,CDN等。
-
Linux是可以不做垃圾清理的,前提是使用者要有一个良好的习惯,文件归类,不乱放等,保持系统更新的习惯,不定期手动更新系统和Linux内核
-
常用清理软件
# 查找获取更新
sudo apt update
# 升级
sudo apt -yq upgrade;
# 删除无用的apt 依赖
sudo apt -yq autoremove
# 删除apt download 之后的包
sudo apt autoclean
命令行不熟悉,可以使用软件来管理,点击直达Stacer安装
建议大家做测试,比如shell测试,读写文件测试等,都在
/tmp
下操作,这个目录下的文件,一段时间不使用会被系统删除,无需我们手动删除
-
杀毒软件不需要,Linux有一句话,
一切设备皆文件
,既然是文件,就有权限,权限在Linux中是比较严格的,平时遇到权限问题,尽量不要一刀切直接赋予777
权限,建议给644
或755
权限。当然也不是说Linux就不会中毒,不会受到攻击,对于我们内网来说,非常安全,至少病毒和攻击者看不上咱们。 -
请务必不要使用
123456
这种简单的密码,如果你的IP暴露(同事之间,或者公网暴露),且sshd
服务常驻,有可能会被穷举登录成功,带来麻烦。
发现有好多用户,不管是手机还是电脑,应用商店里有很多红点,提示需要升级软件包,一直保留着,永远不点升级。换个角度想想,咱们都是开发者,我们平时改代码,都让强制升级,升级是为了让改的代码生效,如果用户拒不升级,你是开发者,自己是什么感觉。 不升级确实可以用,新的版本总有一些优化点和一些新特性是值得的,Linux是开源,非常稳定的,想用的舒心,不会出现环境问题,应该定时保持更新软件和系统,等你遇到由于系统版本过低,必须升级时,之前积累了太多的更新包,版本间跨度太大,升级风险会非常高,最后只能重装系统解决,船太大,掉不了头的道理谁都懂,可就是做不到。
结果=正确的环境+正确的代码+正确的操作
Ubuntu 升级命令,操作系统版本间的更新要跟得上,以下命令复制到终端执行,更新软件包和操作系统。
sudo apt update -yq;sudo apt upgrade -yq;sudo apt dist-upgrade -yq;sudo do-release-upgrade
(六)、snap安装软件没有图标问题
目前通过snap
安装的软件,桌面图标不会在启动器中显示,原因是snap图标目录/var/lib/snapd/desktop/applications
不在环境变量中,我们暂时可以通过软链接ln -sf
命令,将图片链接到系统图标目录/usr/share/applications/
下,等待官方修复
snap安装的软件,图标文件名会将该软件名称重复两遍,注意写对。
运行命令sudo ln -sf /var/lib/snapd/desktop/applications/xxx_xxx.desktop /usr/share/applications/xxx.desktop