0%

首先安装了ntfs-3g,如果没有安装是识别不了的

1
2
3
4
# 首先判断自己有没有安装
rpm -qa|grep ntfs
#安装ntfs全家桶,这里装了全家桶,下面的就不用重复安装了
yum install -y ntfs*
报错提示:
1
2
The disk contains an unclean file system (0, 0).
Falling back to read-only mount because the NTFS partition is in an unsafe state. Please resume and shutdown Windows fully (no hibernation or fast restarting.)

我出现这个情况的原因是:双系统使用中,因为window与linux交替使用就会产生一些系统使用残留。

解决方案就是修复硬盘

1
2
3
4
5
6
7
8
9
10
# 首先判断自己有没有安装
rpm -qa|grep ntfsprogs
# 如果没有安装则安装,先搜索一下yum源,查不到就换源
yum list |grep ntfsprogs
yum install -y ntfsprogs
# 输入要修复的ntfs硬盘,Xx是自己的盘符
ntfsfix /dev/sdXx
# 重新挂载over
umount /dev/sdXx
mount /dev/sdXx /XX/xx

无法挂载参考链接

本文地址 Centos7挂载的ntfs硬盘为只读,并且修改挂载硬盘权限报错

本文地址: https://github.com/maxzhao-it/blog/post/24424/

前言

如果,已经安装了Libre Office,则可以忽略下面的WPS安装(Libre Office是我第二次在安装GNOME的时候,直接勾选的选项,然后系统就默认安装了这个办公软件,不过操作上与WPS有点区别)。

第一步:首先到wps官网(http://linux.wps.cn/)下载 wps for linux,选择合适自己的系统位数的rpm包.
第二步: 打开终端,cd进入文件下载的路径(我下载的存放路径是/home/XXX/downloads),进行软件安装
第三步:启动wps,在终端输入“wps”进行启动、通过点击(应用程序–>办公–>wps即可打开wps)
第四步:安装WPS For Linux后,打开提示系统缺失字体,因为版权问题,打包时候没有打包进来。

下面提供解决方案,仅供学习参考。
(1) 字体库下载地址:(再次声明:仅供学习使用!) http://pan.baidu.com/s/1qW2roDY  提取密码:z610
(2) 如果下载失效,可以到 https://pan.baidu.com/s/1pKZnad1, 提取密码: y56i 路径下载。
首先下载字体,解压后将整个wps_symbol_fonts目录拷贝到/usr/share/fonts目录下,然后赋予可读可执行权限。
权限设置操作如下:

1
2
3
4
cd /usr/share/fonts/
chmod 755 wps_symbol_fonts
cd /usr/share/fonts/wps_symbol_fonts
chmod 644 *

接着生存缓存配置信息,具体操作如下:
至此,完成所有操作,打开WPS则不会再提示缺失字体。

1
2
3
4
cd /usr/share/fonts/wps_symbol_fonts
mkfontdir
mkfontscale
fc-cache

参考:https://blog.csdn.net/u010445843/article/details/77828552

本文地址 安装wps(Centos7)

本文地址: https://github.com/maxzhao-it/blog/post/29380/

前言:

Yaourt 曾是最流行的 AUR 助手,但现已停止开发。在这篇文章中,我们会为 Arch 衍生发行版们列出 Yaourt 最佳的替代品。

Arch User Repository (常被称作 AUR)

是一个为 Arch 用户而生的社区驱动软件仓库。Debian/Ubuntu 用户的对应类比是 PPA。

AUR 包含了不直接被 Arch Linux 官方所背书的软件。如果有人想在 Arch 上发布软件或者包,它可以通过这个社区仓库提供。这让最终用户们可以使用到比默认仓库里更多的软件。

所以你该如何使用 AUR 呢?简单来说,你需要另外的工具以从 AUR 中安装软件。Arch 的包管理器 pacman 不直接支持 AUR。那些支持 AUR 的“特殊工具”我们称之为 AUR 助手。

Yaourt (Yet AnOther User Repository Tool)

(曾经)是 pacman 的一个封装,便于用户在 Arch Linux 上安装 AUR 软件。它基本上采用和 pacman 一样的语法。Yaourt 对于 AUR 的搜索、安装,乃至冲突解决和包依赖关系维护都有着良好的支持。

然而,Yaourt 的开发进度近来十分缓慢,甚至在 Arch Wiki 上已经被列为“停止或有问题”。许多 Arch 用户认为它不安全 进而开始寻找其它的 AUR 助手。

例如 Trizen 和 Packer 这样的流行的选择,它们也被列为“停止或有问题”的了。

1、 aurman

aurman 是最好的 AUR 助手之一,也能胜任 Yaourt 替代品的地位。它有非常类似于 pacman 的语法,可以支持所有的 pacman 操作。你可以搜索 AUR、解决包依赖,在构建 AUR 包前检查 PKGBUILD 的内容等等。

aurman 的特性:

aurman 支持所有 pacman 操作,并且引入了可靠的包依赖解决方案、冲突判定和分包split package支持
线程化的 sudo 循环会在后台运行,所以你每次安装只需要输入一次管理员密码
提供开发包支持,并且可以区分显性安装和隐性安装的包
支持搜索 AUR 包和仓库
在构建 AUR 包之前,你可以检视并编辑 PKGBUILD 的内容
可以用作单独的 包依赖解决工具
安装 aurman:

git clone https://aur.archlinux.org/aurman.git
cd aurman
makepkg -si
使用 aurman:

用名字搜索:

aurman -Ss
安装:

aurman -S <package-name>

2、 yay

yay 是下一个最好的 AUR 助手。它使用 Go 语言写成,宗旨是提供最少化用户输入的 pacman 界面、yaourt 式的搜索,而几乎没有任何依赖软件。

yay 的特性:

yay 提供 AUR 表格补全,并且从 ABS 或 AUR 下载 PKGBUILD
支持收窄搜索,并且不需要引用 PKGBUILD 源
yay 的二进制文件除了 pacman 以外别无依赖
提供先进的包依赖解决方案,以及在编译安装之后移除编译时的依赖
当在 /etc/pacman.conf 文件配置中启用了色彩时支持色彩输出
yay 可被配置成只支持 AUR 或者 repo 里的软件包
安装 yay:

你可以从 git 克隆并编译安装。

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
使用 yay:

搜索:

yay -Ss
安装:

yay -S

3、 pakku

Pakku 是另一个还处于开发早期的 pacman 封装,虽然它还处于开放早期,但这不说明它逊于其它任何 AUR 助手。Pakku 能很好地支持从 AUR 搜索和安装,并且也可以在安装后移除不必要的编译依赖。

pakku 的特性:

从 AUR 搜索和安装软件
检视不同构建之间的文件和变化
从官方仓库编译,并事后移除编译依赖
获取 PKGBUILD 以及 pacman 整合
类 pacman 的用户界面和选项支持
支持pacman 配置文件以及无需 PKGBUILD 源
安装 pakku:

git clone https://aur.archlinux.org/pakku.git
cd pakku
makepkg -si
使用 pakku:

搜索:

pakku -Ss spotify
安装:

pakku -S spotify

4、 aurutils

aurutils 本质上是一堆使用 AUR 的自动化脚本的集合。它可以搜索 AUR、检查更新,并且解决包依赖。

aurutils 的特性:

aurutils 使用本地仓库以支持 pacman 文件,所有的包都支持 –asdeps
不同的任务可以有多个仓库
aursync -u 一键同步本地代码库
aursearch 搜索提供 pkgbase、长格式和 raw 支持
能忽略指定包
安装 aurutils:

git clone https://aur.archlinux.org/aurutils.git
cd aurutils
makepkg -si
使用 aurutils:

搜索:

aurutils -Ss
安装:

aurutils -S
所有这些包,在有 Yaourt 或者其它 AUR 助手的情况下都可以直接安装。

本文地址: https://github.com/maxzhao-it/blog/post/26429/

安装KDE中的组件

安装需要包

1
2
3
4
5
6
7
8
9
10
11
12
# 安装 plasma 桌面
sudo pacman -S plasma plasma-wayland-session xorg
# 终端控制
sudo pacman -S konsole
# 文件管理器
sudo pacman -S dolphin
# 完整的软件
sudo pacman -S kde-applications
# 安装中文语言包
sudo pacman -S kde-l10n-zh_cn
# 安装 sudo vim,如果已经安装,则不需要执行
sudo pacman -S sudo vim

配置显示管理器

1
sudo sddm --example-config >/etc/sddm.conf

配置用户

sddm不会列出root 用户,所以添加一个 maxzhao 的用户

1
2
3
4
# 添加账号
useradd -m -g users -s /bin/bash maxzhao
# 设置密码
passwd maxzhao

添加账号的 sudo 权限

1
sudo vim /etc/sudoers

root ALL=(ALL)ALL 下添加

1
2
root ALL=(ALL)ALL
maxzhao ALL=(ALL)ALL

开启服务

1
2
sudo systemctl enable sddm.service
sudo systemctl enable NetworkManager.service

本文地址: https://github.com/maxzhao-it/blog/post/21486/

安装

下载地址:nexus-3.16.0-01-unix.tar.gz

解压:

1
2
3
tar -zxvf nexus-3.16.0-01-unix.tar.gz -C /home/maxzhao/soft/
mv nexus-3.16.0-01 nexus3
cd nexus3

查看配置文件

1
cat etc/nexus-default.properties 
1
2
3
4
5
6
7
8
9
10
11
# 端口配置
application-port=8081
application-host=0.0.0.0
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
# 项目名配置
nexus-context-path=/

# 这部分不用管
nexus-edition=nexus-pro-edition
nexus-features=\
nexus-pro-feature

启动之前要清楚的目录

1
cat bin/nexus.vmoptions

可以进行详细的配置存储路径:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-Xms1200M
-Xmx1200M
-XX:MaxDirectMemorySize=2G
-XX:+UnlockDiagnosticVMOptions
-XX:+UnsyncloadClass
-XX:+LogVMOutput
# 日志目录 ./就是 nexus3/目录
-XX:LogFile=./sonatype-work/nexus3/log/jvm.log
-XX:-OmitStackTraceInFastThrow
-Djava.net.preferIPv4Stack=true
-Dkaraf.home=.
-Dkaraf.base=.
-Dkaraf.etc=etc/karaf
-Djava.util.logging.config.file=etc/karaf/java.util.logging.properties
# 所有的work,包括nexus.properties
-Dkaraf.data=./sonatype-work/nexus3
# 所有的tmp
-Djava.io.tmpdir=./sonatype-work/nexus3/tmp
-Dkaraf.startLocalConsole=false

配置路径权限

1
2
# xxx 是当前 sonatype-work 所在的路径
sudo chown -R 账号.账号组 /xxx/sonatype-work

启动

1
sh bin/nexus start

访问:127.0.0.1:8081

原始账号密码为 admin / admin123

Nexus 使用

内置仓库介绍

  • Maven Gentral:该残酷代理Maven中央仓库,其策略为Release,因此只会下载和缓存中央仓库中的发布版本构件。

  • Release:这是一个策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件。

  • Snapshots:这是一个策略为Snapshot的宿主类型仓库,用来部署组织内部的快照版本构件。

  • 3rd party:这是一个策略为Release的宿主类型仓库,用来部署无法从公共仓库获得的第三方发布版本构件。

  • Apache Snapshots: 这是一个策略为Snapshot的代理仓库,用来代理Apache Maven仓库的快照版本构件。

  • Codehaus Snapshots: 这是一个策略为Snapshot的代理仓库,用来代理Codehaus Maven仓库的快照版本构件。

  • Google code: 这是一个策略为Release的代理仓库,用来代理Google Code Maven仓库发布版本构件。

  • java.net Maven2:这是一个策略为Release的代理仓库,用来代理java.net Maven仓库的发布版本构件

  • Public Repositories:该仓库组将上述所有策略为Release的仓库聚合并通过一致的地址提供服务

  • Public Snapshot Repositories: 该仓库组将上述所有的策略为Snapshot的仓库聚合并通过一致的地址提供服务。(在nexus-oss-webapp-1.9.2.3 这版本中没有此项)

Nexus仓库分类概念

Maven可以直接从宿主仓库下载构件;maven也可以从代理仓库下载构件,而代理仓库会间接地从远程仓库下载并缓存构件;最后,为了方便,Maven可以从仓库组下载构件,而仓库组没有实际内容,它会转向其包含的宿主仓库或者代理仓库获得市级构件的内容。

创建Nexus宿主仓库

创建一个宿主仓库首先单击界面左边导航栏中的Repositories链接,在右边的面板中,选择create,接着在下拉菜单中选择maven2 (hosted),就会看到如下图的配置界面:

2019-04-16 15-24-29 的屏幕截图.png

  • Repository Name 仓库名称
  • Repository Policy 读者可以根据自己的需要来配置该仓库是发布版本构件仓库还是快照版本构件仓库。
  • Storage 表示该仓库的存储目录,左边列表Blob Stores就是本地的存储目录创建,default是默认地址,都存储在/xxx/nexus3/sonatype-work/nexus3/blobs/下 。

Access Setting 小组中

  • Deployment Policy用来配置该仓库的部署策略,选项有只读(禁止部署)、关闭重新部署(同一构件只能部署一次)以及允许重新部署。

  • Allow file Browsing 表示是否允许浏览仓库内容

  • Include in Search 表示是否对该仓库进行索引并提供搜索

  • Publish URL 用来控制是否通过URL提供服务,如果选择false当访问仓库的地址时,会得到HTTP404 Not Found 错误

  • Not Found Cache TTL 表示当一个文件没有找到后,缓存这一不存在的信息的时间。以默认值1440分钟为例,如果某文件不存在,那么在之后的1440分钟内,如果Nexus再次得到该文件的请求,它将直接返回不存在的信息,而不会查找位呢间系统。

创建Nexus代理仓库

操作和创建宿主仓库类似,主要Repository Type 的值改为proxy 这时看到如下图:

2019-04-16 15-29-50 的屏幕截图.png

对于代理仓库来说,最重要的是远程仓库地址即

  • Remote Storage Location,用户必须输入有效的值

  • Download Remote Indexes 表示是否下载远程仓库的索引

  • Checksum Policy 配置校验出错时的策略,用户可以选择忽略、记录警告信息或者拒绝下载。

  • Authentication 当远程仓库需要认证的时候这里的时候,这里的Authentication 配置就能派上用处。

  • Artifact Max Age 构件缓存最长的时间,对于快照版本来说 Artifact Max Age 默认值为 -1,表示构件混存后就一直保存着,不在重新下载,对于快照版来说默认值为1440分钟表示每隔

  • Metadata Max Age 仓库元数据文件缓存的最长时间

  • Http Request Setting 和 Override HTTP proxy Setting 其中前者用来配置Nexus访问远程仓库时HTTP请求参数,后者用来配置HTTP代理

创建Nexus仓库组

创建仓库组同其他的一样步骤是在选择Repository Group 就会看到如下的:

2019-04-16 15-29-50 的屏幕截图.png

配置中的信息同其他的一样,仓库组中没有Release 和Snapshot ,这不同于宿主仓库和代理仓库。在配置界面中可以选择Nexus中的仓库,将其聚合成一个虚拟的仓库组,注意,仓库组所包含的仓库的顺序决定了仓库组便利其所含仓库的次序,因此最好将常用的仓库放在前面,当用户从仓库组下载构件的时候,就能经快的访问到包含构件的仓库。

Nexus的索引与构件搜索

需要搜索Maven 中央库,首先需要设置Nexus中的Maven Central 代理仓库下载远程索引 如下图:

Download Remote Indexes 属性设置为true 默认为false

true是开启,false是关闭 由于中央仓库内容比较多,因此其索引文件比较大,需要查看下载如何了,我们可以单击界面左边导航栏中的 Scheduled Tasks 链接后,就可以看到系统调度的任务其状态为 runing,在说哦因下载完毕之后,该任务就会消失。

Scheduled Tasks 界面:

配置Maven 从Nexus下载构件

当需要为项目添加Nexus私服上的public仓库时,可以在项目pom.xml文件配置 代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<project>
<repositories>
<repository>
<id>nexus</id>
<url>http://http://localhost:4040/nexus/content/groups/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<url>http://localhost:4040/nexus/content/groups/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</project>

这样的配置只对当前的Maven项目有效,实际应用中,我们往往想要通过一次配置就完成能让本机所有的Maven项目都使用自己的Maven私服。这时配置本地仓库setting.xml 代码如下:

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
42
43
44
45
46
47
48
49
<settings>
  
   <mirrors>

<mirror>
<id>central</id>
<mirrorOf>*</mirrorOf>
<url>http://localhost:4040/content/groups/public/</url>
</mirror>
</mirrors>  

<profiles>
     <profile>
<id>JDK1.6</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.6</jdk>
</activation>
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
<maven.compiler.compilerVersion>1.6</maven.compiler.compilerVersion>
</properties>
</profile>
<profile>
<id>central</id>
<repositories>
<repository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://central</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>central</activeProfile>
<activeProfile>JDK1.6</activeProfile>
</activeProfiles>
</settings>

使用Maven 部署构件至Nexus

日常开发生成的快照版本构件可以直接部署到Nexus中策略为Snapshot的宿主仓库中,项目正式发布的构件则应该部署到Nexus中策略为Release的宿主仓库中。POM.XML配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<project>
<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>Nexus Releases Repository</name>
<url>http://localhost:4040/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus Snapshots Repository</name>
<url>http://localhost:4040/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
</project>

Nexus 的仓库对于黎明用户是只读的为了能够部署构件,还需要在setting.xml 中配置认证信息代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
<servers>

<server>
<id>releases</id>
<username>admin</username>
<password>iapppay</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>iapppay</password>
</server>
</servers>

mvn 命令上传jar

setting.xml配置 server 信息

1
2
3
4
5
6
7
<servers>
<server>
<id>maxzhao</id>
<username>admin</username>
<password>maxzhao</password>
</server>
</servers>

pom.xml配置

1
2
3
4
5
6
7
8
9
10
11
12
<distributionManagement>
<repository>
<!-- 这里的ID要和setting的id一致 -->
<id>maxzhao</id>
<url>http://127.0.0.1:8081/repository/maxzhao/</url>
</repository>
<!--这是打成快照版本的配置 -->
<snapshotRepository>
<id>maxzhao</id>
<url>http://127.0.0.1:8081/repository/maxzhao/</url>
</snapshotRepository>
</distributionManagement>

执行mvn脚本

1
mvn deploy:deploy-file -DgroupId=gt.maxzhao -DartifactId=maxzhao-table -Dversion=1.0 -Dpackaging=jar -DrepositoryId=maxzhao -Dfile=/run/media/maxzhao/study/mycode-java/maxzhao/maxzhao-table/target/maxzhao-table-1.0-SNAPSHOT.jar  -Durl=http://127.0.0.1:8081/repository/maxzhao/
  • -DgroupId=jar包的组名
  • -DartifactId=jar包名称
  • -Dversion=jar包版本
  • -Dfile=jar包绝对路径
  • -DrepositoryId=yang

本文地址:Manjaro下安装Nexus

本文地址: https://github.com/maxzhao-it/blog/post/16378/

JDK 安装

  • 安装oracle jdk sudo pacman -S jdk
  • 安装openjdksudo pacman -S jdk8-openjdk

安装多个JDK时

我这里先安装的 jdk8-openjdk,后安装 jdk12

安装 jdk12时提示:

1
2
3
4
5
6
7
8
9
Default Java environment is already set to 'java-8-openjdk'
See 'archlinux-java help' to change it.
When you use a non-reparenting window manager,
set _JAVA_AWT_WM_NONREPARENTING=1 in /etc/profile.d/jre.sh
jre 的可选依赖
alsa-lib: for basic sound support [已安装]
(3/3) 正在安装 jdk [################################] 100%
Default Java environment is already set to 'java-8-openjdk'
See 'archlinux-java help' to change it

切换 JDK 版本

使用archlinux-java命令切换JDK 版本

archlinux-java help

1
2
3
4
5
6
7
8
archlinux-java <COMMAND>

COMMAND:
status List installed Java environments and enabled one
get Return the short name of the Java environment set as default
set <JAVA_ENV> Force <JAVA_ENV> as default
unset Unset current default Java environment
fix Fix an invalid/broken default Java environment configuration

set 就是设置默认环境的方法

set 之前
1
2
3
4
java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)
执行sudo archlinux-java set java-12-jdk
set 之后
1
2
3
4
java -version
java version "12.0.1" 2019-04-16
Java(TM) SE Runtime Environment (build 12.0.1+12)
Java HotSpot(TM) 64-Bit Server VM (build 12.0.1+12, mixed mode, sharing)

JDK版本切换就成功了,非常简单吧。

本文地址:archLinux(Manjaro)中的Java版本切换

推荐:

arch-gnome 编程环境和其它环境安装
u盘安装manjaro——抛弃Centos的旅程开始

本文地址: https://github.com/maxzhao-it/blog/post/31920/

Manjaro 添加path路径

很多喜欢创建软链接到/usr/bin 或者 /usr/local/bin 或者 /usr/local/sbin 路径下

备注:软链接命令 ln -s /home/源文件路径 /usr/local/bin/文件名

有时候,我们写了很多脚本,每次添加脚本都要添加一次到 bin下,非常不方便。

这里我们可以直接添加脚本路径作为 path

1
2
3
sudo vim /etc/profile 
# 在appendpath '/usr/bin' 后面添加自己的脚本文件目录路径
appendpath '/home/maxzhao/script'

然后 source /etc/profilr 就可以直接运行我们写好的脚本了。

本文地址:Manjaro 添加 path 路径

本文地址: https://github.com/maxzhao-it/blog/post/44770/

在 Linux 上的旅程已经快有一年了,经过几个月的 Manjaro 使用之旅 后,我强烈推荐对 Linux 有兴趣的可以试一试(估计有兴趣的人知道的都比我早,我早期只是沉迷于 Centos 和工作)。
在这几个月中,虽然遇到了各种各样的问题,每次遇到问题,疯狂拿别人踩坑的经验给自己垫脚。所以,一路走来,还算顺畅。

顺便安利一下 AUR真强大

为什么放弃windows?

windows与 linux 战争已经持续很久,我这里主要是为了工作和爱好,为什么把爱好放后面呢?有些实力“杠精”真的可怕!

人们的版权意识逐渐增强,而国内的windows极多都是盗版的(微软为啥不管小众的盗版,大家心里有点数吧。小众带动的周边产业也能让微软疯狂入账)。
就个人来说,有能力的话还是要支持正版,一定的投入才能使其可持续发展,炫耀破解版的软件是可耻的,不以破解为荣,毕竟开源软件也是很好的选择。

Linux是一个最适合开发人员日常使用和学习的环境,无限定制化自己想要的一切,并且拥有众多的 IDE 可以使用。
Linux 的优势:开源、安全、免费(没有广告算不算优势);

大家知道 腾讯为什么不开发 QQ for Linux 版本了吗?因为 Linux 不让 QQ 扫描用户硬盘

那么问题来了?这和我抛弃 Centos 投奔 ArchLinux 有啥关系吗?当然没关系。

在此之前,我都是使用的 Centos7 进行开发的,为什么选择 Centos 呢? 主要是因为稳定,版本迭代慢,不用经常为插件版本问题而发愁。
我执意要换的原因,是因为同事给我介绍了 Manjaro 。这 简直 就是 神器啊!,他把 ArchLinux 中各种复杂的操作都集成好了,只需要安装 Manjaro 就可以附带的安装基础功能。

有人可能会想,基础功能,不应该是很好安装的吗?有兴趣的新手可以试试 ArchLinux —— 一款强大而又让人心累的发行版。 (在我同事给我推荐 Manjaro 之前,我还卖力的向他推荐 Centos ,讲了多么多么稳定,安装环境多么多么快捷,如何如何快速的解决各种XX软件的版本问题。。。现在想想,还真是有点羞愧。)

下面就让我开始安装吧!

一、manjaro镜像下载

  • 中科大
  • 清华大学
    我这里下载的是gnome版,其它的版本自己选择,官网有介绍,可以选择自己喜欢的版本下载。

二、windows下制作U盘启动盘

1、refus,这是一个免费的U盘刻录工具,免安装,绿色启动,刻录很快。

没用过,大家可以试试,我看所有人都推荐这个,估计都是抄来的,我这个也是抄来的,可以选择直接直接看2、PowerISO制作启动盘。

下载网址 http://rufus.akeo.ie/

打开下载好的refus软件,相关设置如下,注意点了开始之后,选择DD模式写入,ios模式写入的启动不了。

2、PowerISO 也不错,试用版就可以

管理员打开软件
制作可启动U盘

选择U盘和iso文件

三、启动安装

我的电脑是hp envy 13 集显。开机按F10设置BIOS,关闭安全启动,保存,重启,按F9,进入启动选项,选择uefi usb3.0的启动项

等待安装结束,很快,大概25分钟。到这里,系统已经安装好了。接着关机,拔出U盘,启动,进行中文环境配置。

四、配置中文环境

1,设置终端字体

开机,进入manjaro的桌面。打开终端,发现终端字体显示拥挤,解决办法,点击终端右上角进入设置,更换合适的字体方案。

中文字体

你需要中文字体才能使用gnome-terminal
pacman -S wqy-microhei
现在你已经可以使用你的系统了,输入reboot重启后系统即可自动进入gdm界面,然后进入桌面

安装常用字体:pacman -S ttf-dejavu wqy-zenhei wqy-microhei wqy-bitmapfont

字体

ll /usr/share/fonts/
常用的就wqy\ttf\wps
fc-cache -fv刷新字体

2.排列镜像源,升级系统

在终端里进行以下操作,进行配置

1
2
3
4
sudo pacman-mirrors -c China # 下载国内源 
sudo pacman-mirrors -g #排列源

sudo pacman -Syyu #升级系统
更新报错-无效或已损坏的软件包 (PGP 签名))
  • 原因分使用了社区源
    1
    2
    3
    4
    [archlinuxcn]
    #SigLevel = Optional TrustedOnly
    SigLevel = Optional TrustAll
    Server = http://repo.archlinuxcn.org/$arch
    or
    1
    sudo pacman -S archlinuxcn-keyring
    or

3.添加Arch中科大源

1
sudo nano /etc/pacman.conf    #打开配置文件

在末尾添加下面三行代码

1
2
3
[archlinuxcn]
SigLevel = Optional TrustAll
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch

Ctrl+X退出,输入 Y。

1
sudo pacman -Syy && sudo pacman -S archlinuxcn-keyring    #导入GPG Key

4.安装搜狗拼音fcitx

1
2
sudo pacman -S fcitx-im      fcitx-configtool  fcitx-sogoupinyin    #默认全部安装
sudo nano ~/.xprofile #添加输入法配置文件

输入以下内容,然后。Ctrl+X退出,输入 Y。

1
2
3
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

对于特定用户,还可以在~/.bashrc~/.xinitrc~/.xprofile中设置自己的用户环境。不同之处在于:

  • .bashrc: 每次终端登录时读取并运用里面的设置。
  • .xinitrc: 每次startx启动X界面时读取并运用里面的设置
  • .xprofile: 每次使用gdm等图形登录时读取并运用里面的设

5.安装谷歌浏览器

sudo pacman -S google-chrome #安装chrome

6.安装其他软件

可以通过终端pacman,也可以打开软件管理器搜索安装。

时区解决

https://blog.csdn.net/y1574406771/article/details/80880135

问题:开机1分30秒过程

原因:可能是开启了一些自启服务,可以到目录
/etc/systemd/system/multi-user.target.wants下查看。

可以使用systemctl disable XXX服务 关闭当前服务的自启。

推荐文章

推荐镜像源

问题:蓝牙设备

罗技G900蓝牙频繁掉线,需要安装 Bluetooth 驱动

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
42
43
44
sudo pacman -Sy
sudo pacman -S bluedevil bluez bluez-libs bluez-tools blueman pulseaudio-bluetooth hidapi

下面还有一些可选安装

extra/bluez-cups 5.55-1
CUPS printer backend for Bluetooth printers
extra/bluez-hid2hci 5.55-1
Put HID proxying bluetooth HCI's into HCI mode
extra/bluez-utils 5.55-1
Development and debugging utilities for the bluetooth protocol stack
extra/gnome-bluetooth 3.34.3-1 [已安装]
The GNOME Bluetooth Subsystem
extra/libldac 2.0.2.3-1
LDAC Bluetooth encoder library
community/blueberry 1.3.9-1
Bluetooth configuration tool
community/python-bluepy 1.3.0-4
Python module for interfacing with Bluetooth LE devices through Bluez
community/python-pybluez 0.22-6
Python wrapper for the BlueZ Bluetooth stack
community/python2-pybluez 0.22-6
Python wrapper for the BlueZ Bluetooth stack
community/switchboard-plug-bluetooth 2.3.4-1 (pantheon)
Switchboard Bluetooth Plug
community/wingpanel-indicator-bluetooth 2.1.6-1 (pantheon)
Wingpanel Bluetooth Indicator
archlinuxcn/blueproximity 1.2.5-10
A proximity detector for your mobile phone via bluetooth.
archlinuxcn/bluez-git 1:5.55.r224.gfccfc3b5e-1
Libraries and tools for the Bluetooth protocol stack
archlinuxcn/bluez-utils-compat 5.55-3
Development and debugging utilities for the bluetooth protocol stack.
Includes deprecated tools.
archlinuxcn/lib32-bluez-libs 5.55-3
Deprecated libraries for the bluetooth protocol stack (32-bit)
archlinuxcn/lib32-sbc 1.5-1
Bluetooth Subband Codec (SBC) library (32-bit)
archlinuxcn/pulseaudio-modules-bt 1.4-7
PulseAudio Bluetooth modules with SBC, AAC, APTX, APTX-HD, Sony LDAC (A2DP
codec) support
archlinuxcn/pulseaudio-modules-bt-git r149.dbb5164-8
PulseAudio Bluetooth modules with SBC, AAC, APTX, APTX-HD, Sony LDAC (A2DP
codec) support

修改配置:

1
sudo vim /etc/bluetooth/main.conf

修改FastConnectable = false ,取消#注释,改为FastConnectable = true

修改 AutoEnable=false,去掉前面的#注释,改为AutoEnable=true。

本文地址:u盘安装manjaro——抛弃Centos的旅程开始

本文地址: https://github.com/maxzhao-it/blog/post/21487/