文档:

Linux桌面环境

ArchLinux官方wiki

manjaro官方wiki

  系统维护(官方给出的一些建议和保持系统最优的最佳实践)

pacman官方wiki

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)不显示候选框的问题

杀进程,然后重启

killall fcitx
killall sogou-qinpanel
fcitx

(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

(3)安装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

使用docker安装的软件:

#mysql容器
sudo docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7. #查看ip
sudo docker inspect mysql #使用客户端连接(ip为上一步的ip)
sudo docker run -it --rm mysql mysql -h172.17.0. -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 ====================================
#清除不再使用的缓存
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

rsync备份系统

③tar打包备份

备份相关话题可参考:如何整体备份 manjaro 系统呢

2.Manjaro Linux优化设置分享

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:

Manjaro系统和软件安装记录的更多相关文章

  1. CentOS系统更换软件安装源aliyun的

    CentOS系统更换软件安装源第一步:备份你的原镜像文件,以免出错后可以恢复. mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS ...

  2. 修改Windows7系统默认软件安装目录

    Windows7系统默认软件安装目录都在C盘Program Files文件夹有时候我们需要把软件安装到其他地方,如果每次安装的时候都要重新选择一次十分麻烦,下面Windows7之家教你修改软件默认安装 ...

  3. Ubuntu系统下面软件安装更新命令

    在ubuntu服务器下安装包的时候,经常会用到sudo apt-get install 包名 或 sudo pip install 包名,那么两者有什么区别呢? 1.区别 pip用来安装来自PyPI( ...

  4. 分布式监控系统Zabbix--完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  5. CentOS系统查看软件安装路径

    Linux系统一般都是命令行界面,对于安装的软件也是通过命令安装的.对于软件包更新和卸载等有时候需要查看检查是否有改软件,软件安装存储的路径对于修改配置文件等是必要的.那么怎么查看软件安装路径呢?小编 ...

  6. MyEclipse 2014专业版的破解--Windows系统的软件安装

    一.破解前的准备 MyEclipse2014破解包: 您可以到计算机相关专业所用软件---百度云链接下载中找到链接地址进行下载. 二.破解步骤 1.打开破解文件资源包 2.执行run.bat 3.输入 ...

  7. 分布式监控系统Zabbix--完整安装记录-批量添加主机和自动发现端口

    一.Zabbix-3.0.3批量添加主机的配置如下: 0)被监控机上要安装zabbix_agent,并配置好zabbix_agentd.conf (如下172.29.8.50是zabbix_serve ...

  8. CentOS7系统更换软件安装源

    1.备份你的原镜像文件,以免出错后可以恢复. cp /etc/yum.repos.d/CentOS-Base.repo{,.backup} # 或者 mv /etc/yum.repos.d/CentO ...

  9. centos 系统程序包安装记录

    -添加sudoer su - vi /etc/sudoers 在root ALL=(ALL) ALL 下添加: pete ALL=(ALL) ALL -安装拼音: sudo yum install & ...

随机推荐

  1. jQuery file upload process queue

    在jquery.ui.widget.js中bridge处打上断点,查看instance内容 $.widget.bridge = function( name, object ) { var fullN ...

  2. Mac使用SSH连接远程服务器

    1. 终端通过 ssh 连接远程服务器 ssh -p 36622 root@localhost 2. 文件上传下载 上传 scp 下载 scp 3. 客户端 FinalShell(推荐) FileZi ...

  3. 【2】通过Ajax方式上传文件(图片),使用FormData进行Ajax请求

    HTML: <form id= "uploadForm"> <p >指定文件名: <input type="text" name= ...

  4. HTTP学习记录:三、状态码

    学习资源主要为:@小坦克HTTP相关博客 常见的HTTP状态码: 200--请求成功: 302--重定向: 304--Not Modified:表示上次的文档已经被缓存了,还可以继续使用: 400-- ...

  5. Apache hadoop namenode ha和yarn ha ---HDFS高可用性

    HDFS高可用性Hadoop HDFS 的两大问题:NameNode单点:虽然有StandbyNameNode,但是冷备方案,达不到高可用--阶段性的合并edits和fsimage,以缩短集群启动的时 ...

  6. python里一个class可以定义多个构造函数

    不行,一个class只能有一个用于构造对象的__init__函数但python中的变量是无类型的,因此传给__init__的参数可以是任何类型python中的函数参数在定义时可以有默认值,可以让__i ...

  7. cocos2dx基础篇(12) 编辑框之一CCTextFieldTTF

    前面我们讲了精灵贴图.标签.菜单.按钮.感觉似乎少了点什么?UI控件里是不是应该还有一个很重要的控件--编辑框.在手机网游中,启动游戏,过了开场动画后,基本上显示的第一个界面应该就是游戏的登录界面了吧 ...

  8. if——while表达式详解

    ①while循环的表达式是循环进行的条件,用作循环条件的表达式中一般至少包括一个能够改变表达式的变量,这个变量称为循环变量 ②当表达式的值为真(非零)(非空)时,执行循环体:为假(0)时,则循环结束 ...

  9. webView实现网页缩放

    项目中遇到要实现webview上面的网页缩放功能,在网上查了资料加自己实践后得出结论: //缩放开关,设置此属性,仅支持双击缩放,不支持触摸缩放 mWebView.getSettings().setS ...

  10. git自动上传脚本及基本代码

    git_auto.bat git add . git add -A git add -u git commit -m "text" git pull --rebase origin ...