文档:
系统维护 (官方给出的一些建议和保持系统最优的最佳实践)
从www.distrowatch.com可以查看Linux发行版排行榜,可以看到manjaro排名靠前,排名第一的MX Linux据说是刷榜上去的。
manjaro受欢迎的原因主要有以下几点:
- 滚动更新可以使软件保持最新;
- AUR软件仓库有着世界上最齐全的Linux软件;
- 丰富的wiki和活跃的社区让所有问题都可以快速得到满意的答案。
一、安装manjaro
下面是我安装后的系统界面,先展示一下。
下面记录下安装步骤,常用软件的安装,和一些优化,配置,问题解决等。
1.下载镜像,制作启动盘
从manjaro官网下载镜像。官方提供了xfce,gnome,kde ,architect桌面版本,同时社区也提供了其它一些桌面版本,值得一提的是还有deepin桌面版本。不过官方貌似打算放弃deepin版本的维护了,官网不再直接提供deepin版本的下载链接,但可以直接从这里下载镜像文件:manjaro-deepin下载地址 (2020年3月2日更新:官方已彻底删除了manjaro-dde,建议直接下载manjaro-xfce,并自己替换dde桌面环境,后文有操作步骤)
实际上不同桌面版本安装方法都一样,我选择安装的是deepin桌面版本。下载好镜像后,使用rufus制作成U盘启动盘。这里有个需要注意的地方:
①写入镜像时要选择dd模式,否则系统可能无法引导。
②而rufus只有v3.5及之前版本才能选择dd模式
2.安装manjaro
使用U盘启动,启动时有个driver选项,默认为free,表示开源驱动,no free表示闭源驱动。
之后就是安装,安装过程没啥太大难度,只是分区时要小心操作,以防误操作导致格盘造成数据丢失,略过!
二、基本配置
1.配置pacman软件源
#选择官方源 sudo pacman-mirrors -i -c China -m rank sudo pacman -Syy #配置archlinux源 sudo vim /etc/pacman.conf
加入以下内容
[archlinuxcn] # SigLevel = Optional TrustedOnly SigLevel = Never Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch [arch4edu] SigLevel = Never Server = https://mirrors.tuna.tsinghua.edu.cn/arch4edu/$arch
sudo pacman -Sy archlinuxcn-keyring sudo pacman -Syy
2.安装aur和snap软件管理工具
安装aur软件管理工具
①yaourt
默认已经安装了yaourt,只需要配置源加速就行了。打开 /etc/yaourtrc,去掉 # AURURL 的注释,改为清华aur源。
sudo vim /etc/yaourtrc
AURURL="https://aur.tuna.tsinghua.edu.cn"
②yay
由于Yaourt已经不再维护,可以选择使用Yay来代替Yaout。
sudo pacman -S yay
Yay默认使用法国的aur.archlinux.org作为AUR源,改为国内清华大学提供的镜像。
#生成的配置文件位于 ~/.config/yay/config.json yay --aururl "https://aur.tuna.tsinghua.edu.cn" --save
安装snap软件管理工具
sudo pacman -S snapd sudo systemctl enable --now snapd.socket #可选 sudo snap install snap-store 之后需要注销或重启 #测试是否安装成功 sudo snap install hello-world
3.删除不用的软件
sudo pacman -R libreoffice-refresh sudo pacman -R xfburn sudo pacman -R orage
4.解决双系统时间不同步问题
timedatectl set-local-rtc true
5.解决无ll命令的问题
ll实际上并不是一个命令,而是ls -l的别名,因为用的比较多,所以有些linux系统会默认进行配置,manjaro默认是没有的。
vim ~/.bashrc,添加以下内容
alias ll='ls -alF' #这里可以配置其它的命令 alias vi='vim'
之后,source ~/.bashrc
三、安装软件
1.安装常用软件
sudo pacman -S vim (vim 配置入门) sudo pacman -S google-chrome sudo pacman -S firefox sudo pacman -S firefox-i18n-zh-cn #wps sudo pacman -S wps-office sudo pacman -S ttf-wps-fonts
#wps新
直接在应用商店搜索wps,安装wps-office-cn和wps-office-mui-zh-cn
sudo pacman -S goldendict sudo pacman -S foxitreader sudo pacman -S netease-cloud-music sudo pacman -S shadowsock(s)-qt5 (去掉括号,敏感词) #截图 sudo pacman -S flameshot (可以配置一个系统快捷键,比如F1,命令为flameshot gui) #备份还原 sudo pacman -S timeshift
QQ/企业QQ/tim/微信
可以直接在软件中心下载安装,建议安装有archlinuxcn标识的,可以有托盘,bug少。而不推荐有AUR标识的,这是编译安装的,bug多。
#QQ yaourt -S deepin.com.qq.im #企业QQ sudo pacman -S deepin-qq-eim (安装在/系统盘) #tim sudo pacman -S deepin-wine-tim (托盘不可用) yaourt -S deepin.com.qq.office (托盘可用) yay -S deepin-wine-tim (会下载deepin.com.qq.office的deb包和exe格式的tim,进行打包) #微信 yaourt -S deepin.com.wechat #配置分辨率等 env WINEPREFIX="$HOME/.deepinwine/Deepin-TIM" winecfg env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" winecfg
搜狗输入法(折腾ing)
使用下面的命令安装,或者直接在应用商店使用图形界面安装。
sudo pacman -S fcitx sudo pacman -S fcitx-im sudo pacman -S fcitx-configtool sudo pacman -S fcitx-sogoupinyin vim ~/.xprofile
加入以下内容
export GTK_IM_MODULE=fcitx export QT_IM_MODULE=fcitx export XMODIFIERS=@im=fcitx
然后source一下
source ~/.xprofile
然后重启,使用输入法配置工具将搜狗输入法加进来。
右上角突然弹出来提示 “搜狗输入法异常!请删除.config/SogouPY 并重启”。执行sogou-qimpanel,显示 ”sogou-qimpanel: error while loading shared libraries: libfcitx-qt.so.0: cannot open shared object file: No such file or directory “ 提示,查了资料说缺少fcitx-qt4,那就安装吧。
sudo pacman -S fcitx-qt4
提示 ” fcitx-lilydjwg-git 与 fcitx有冲突。删除 fcitx 吗?”,一直输入y,继续安装,以fcitx-lilydjwg-git为准,装完以后就好了。
下面是常遇到的问题。
(1)不显示候选框的问题
经常会碰到不显示候选框的问题,尤其是在执行升级后,当升级了fcitx相关组件时就会出现该问题。解决方法如下:杀进程,然后重启。尝试过几次,这种方式确实很奏效。
killall fcitx killall sogou-qinpanel fcitx
有时上面方法也不奏效,卸载重装一下fcitx-sogoupinyin就好了(选择archlinuxcn那个)。
(2)候选框显示有问题
可能是缺少了字体,可以参考:manjaro中文字体配置。不过我只安装了字体,并未进行配置。
sudo pacman -S ttf-roboto noto-fonts ttf-dejavu # 文泉驿 sudo pacman -S wqy-bitmapfont wqy-microhei wqy-microhei-lite wqy-zenhei # 思源字体 sudo pacman -S noto-fonts-cjk adobe-source-han-sans-cn-fonts adobe-source-han-serif-cn-fonts
除了搜狗,另外可以尝试体验下sunpinyin输入法
sudo pacman -S fcitx-sunpinyin
2.系统相关
lm-sensors:检测系统温度
Fancontrol:
Xsensors:
电池管理:
sudo pacman -Syyu tlp tlp-rdw smartmontools
3.编程软件
#jdk用命令安装不上 sudo pacman -S maven sudo pacman -S git sudo pacman -S redis sudo pacman -S docker #在应用商店直接搜索安装,还安装一个intellij-idea-ultimate-edition sudo pacman -S intellij-idea-ultimate-edition sudo pacman -S mysql-workbench sudo pacman -S filezilla sudo pacman -S visual-studio-code-bin #rabbitmq sudo pacman -S rabbitmq rabbitmqadmin sudo rabbitmq-plugins enable rabbitmq_management sudo rabbitmq-server #离线文档 sudo pacman -S zeal #抓包 yay -S wireshark
IDEA安装微软雅黑字体:从网上下载msyh.ttf和msyhbd.ttf字体,放到/usr/share/fonts/yaheifont(自己创建该目录,名称随意)下,然后执行一下命令产生字体配置缓存即可。
fc-cache -f
使用docker安装的软件:
#mysql容器 sudo docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.29 #查看ip sudo docker inspect mysql #使用客户端连接(ip为上一步的ip) sudo docker run -it --rm mysql mysql -h172.17.0.2 -uroot -p
virtualbox:图形界面安装,选择与当前内核对应的版本安装。安装之后执行sudo /sbin/rcvboxdrv 重新加载内核模块。
redis-desktop-manager:使用snapd来安装redis-desktop-manager (github地址)
四、恢复/更换桌面环境
安装深度桌面
某次使用manjaro自带的安装管理图形界面卸载软件时,居然大面积删除了软件及库文件。连pacman,浏览器,深度终端都被删了,还好后来系统自动恢复安装了pacman。因为软件的配置文件都在,所以只需多敲几个pacman命令下载好软件就可以直接用了。按照官网教程:Install Desktop Environments来操作。
#安装基本的深度环境 sudo pacman -S deepin #安装深度软件(可选) sudo pacman -S deepin-extra #安装DDE(可选,已不建议。这是manjaro官方提供的对dde的支持,现官方已不再支持dde) sudo pacman -S deepin-manjaro ======================================= 安装上面的deepin-extra可能已经含有下面的软件,不确定!如果没有,就单独安装。 #安装深度系统监视器 sudo pacman -S deepin-system-monitor #安装pamac(manjaro自带的pacman的GUI),当然也可以使用其它的,如Octopi sudo pacman -S pamac
基本上就恢复的差不多了,如果还有系统自带的软件没有安装,可以去深度官网获取软件名称后使用pacman安装。pamac的使用可以参考官方wiki:Pamac
五、系统维护(官方文档)
官方文档:System Maintenance
下面是官方给出的一些保持manjaro系统最优化的建议和最佳实践。我简单的进行了翻译。
1.home缓存
通常来说,删除home目录下的.cache缓存是很安全的,但建议检查内容并有选择性的进行删除。
#按大小进行排序 du -sh ~/.cache/* | sort -h #自动删除(purge)100天未访问的内容 find ~/.cache/ -type f -atime +100 -delete
2.systemd日志和/var/logs系统日志
systemd日志:
#查看日志占用空间大小 journalctl --disk-usage #限制日志大小和存留时间 journalctl --vacuum-size=50M journalctl --vacuum-time=2weeks #限制journal日志的大小,编辑/etc/systemd/journald.conf文件 SystemMaxUse=50M
/var/logs系统日志:
systemd日志是新的日志使用方式,但仍有一些软件会使用旧的/var/log目录来记录日志,这部分维护建议可以参考:Managing /var/log/* files
3.包和更新
①坚持系统更新
由于manjaro的发布是滚动更新的,所以保持系统的全量更新是非常有必要的,manjaro提供下面几种方式来保持更新:
- 使用pacman或octopi等GUI工具
- 使用pamac或pacman等命令行工具
(简而言之:如果可以的话,鼓励你做一个manjaro更新强迫症患者,每天更新,时不时的更新一下,这是manjaro的滚动更新策略所推崇的)
②避免部分更新
简而言之,保持全量更新。下面有一些规则需要我们尽量遵守:
- 安装软件前,总是保证系统是最新的
- 不要降级包,这会导致系统部分更细
- 避免使用pacman -Sy和pacman -Syy。取而代之的是使用pacman -Syu和pacman -Syyu
- 不要添加忽略包更新(pamac和pacman可以设置忽略某个包的更新,但不建议)
- 如果想检查系统是否有更新可用,可以使用checkupdates命令。它提供了一种安全的方式来检查系统升级和包安装,仅检查而不会执行更新操作。
- 当切换分支和切换镜像时,总是使用pamac update --force-refresh或pacman -Syyu来保证使用的是新的镜像的数据库。
③移除孤立的包/依赖
随着时间的推移,由于软件包的添加,构建和删除,具有不必要的依赖关系(也称为孤立包)的情况并不少见。 尽管孤立包无害,但由于它们不断更新会占用磁盘空间并消耗网络带宽。 幸运的是,有两种简单的方法可以查看和删除孤立包。
#检查孤立包 pamac list -o #移除孤立包 pamac remove -o ##################################### #检查孤立包 pacman -Qdt #移除孤立包 sudo pacman -Rs $(pacman -Qdtq)
④包缓存
默认情况下,pamac和pacman都保留系统已下载软件包的缓存。 如果需要复制或降级软件包,这将很有帮助。但长此以往,会占用大量磁盘空间
#清除所有缓存(小心) pamac clean #清除缓存,保留最新的3个版本(推荐) pamac clean --keep 3 ==================================== #清除不再使用的缓存 sudo pacman -Sc #清除所有缓存(小心) sudo pacman -Scc #清除缓存,保留最新的3个版本(推荐) paccache -rvk3
⑤.pacnew and .pacsave文件
可以在软件包升级过程中创建一个.pacnew文件,以避免覆盖已存在的文件。可以在软件包删除过程中或重新安装已删除包的过程中创建.pacsave文件。这些文件需要用户手动创建,并且最佳实践是定期处理它们。 程序pacdiff可以帮助管理该过程。 例如,这是/ etc / default / grub grub文件更改后的样子:
sudo DIFFPROG=diff pacdiff ==> pacnew file found for /etc/default/grub :: (V)iew, (S)kip, (R)emove pacnew, (O)verwrite with pacnew, (Q)uit: [v/s/r/o/q]
不幸的是,如何处理这些文件还没有很完善的路线图。 如果保留原始配置文件,并且语法已更改,则该程序可能会停止运行或无法使用现有配置。 如果删除原始文件并使用新文件而不进行任何更改,则所有配置设置都将被覆盖。 有时,您需要合并新文件和旧文件中的片段,以使所有内容正常工作。 在这些情况下,最好手动来合并。
4.时间和日期
保持系统时间准确似乎并不重要,但是如果时间不同步,某些与网络相关的服务可能会出现故障
最简单的方式是在GUI工具Manjaro Settings Manager中勾选set time and date automatically选项,来保持时间同步。也可以使用下面的命令
timedatectl set-ntp true
六、其他记录
1.manjaro备份系统
①dd备份分区:dd if=/dev/sda of=/dev/sdb
③tar打包备份
备份相关话题可参考:如何整体备份 manjaro 系统呢
3.manjaro系统升级后所有基于QT的应用字体都变成了方块解决方法
最后解决方案 (warning: ugly hack) 是安装了 Noto Sans CJK SC 然后在设置里切换到这个字体,重启,就好了
4.帮助中心KhelpCenter里面有自带的应用程序列表。
工具: KFind Klipper剪切板 互联网: 书签编辑器 KNetAttach Konversation 设置: 菜单编辑器 系统设置KDE系统设置:System Settings 系统: 系统卫视:manjaro-settings-manager 0.5.6-7 会连同卸载manjaro-settings-manager manjaro-settings-manager-kcm manjaro-settings-manager-knotifier 信息中心: KSystemLog: