Manjaro18装机记

Manjaro简介

Manjaro属于ArchLinux的一个派系,相比于ArchLinux的滚动更新,它更为稳定,因为它发行前会做大量的测试,防止出现滚挂的情形。总所周知,ArchLinux系统拥有强大的包管理机制,AUR源里面有十分丰富的包,很多日常使用的软件都可以一键安装,如微信、QQ、网易云音乐等,而这往往是Ubuntu等其他发行版所不能匹敌的;安装的软件是基本上是最新的版本(事实上,源里面一般只有最新的版本),对于一些大型的包,往往需要解决很多依赖问题,手动配置往往十分麻烦,例如安装Pytorch(GPU)或者Tensorflow(GPU),使用pacman安装可以直接解决版本匹配问题,而且由于可以使用国内源,安装速度十分快。此外,Manjaro还有独特的双显卡管理机制bumblebee,使用它可以很方便地切换运行程序所使用的显卡,只需在命令前加optirun就可以使用独立显卡,一般情况下默认使用的是核心显卡。它的硬件支持十分优秀,而且有KDE/ XFCE/ GNOME/ Cinnamon/ LXDE/ i3/ LXQT/ Mate等版本可以选择,总之Manjaro是一个值得一试的Linux发行版。

从硬盘安装

从硬盘安装的方式适用于安装双系统的方式,即已经有WIN系统,需要再安装一个其他系统。

  1. 首先在某个硬盘分区的根目录下,放置Manjaro系统的ISO镜像文件,并且需要直接解压ISO文件内容到根目录下。从解压出来的/boot里面复制vmlinuz-x86_64和initramfs-x86_64.img文件到根目录。查看该硬盘分区的格式,一般为ntfs,若为fat32(放在U盘里了),则下面输入代码部分(3.)的ntfs字段都改为vfat。硬盘部分配置完成。
  2. 使用easyBCD添加iso启动镜像,并且添加该ISO文件到系统的启动项中。重启,选择该启动项,然后第一个界面选择nonfree driver(即不安装开源驱动),到install manjaro入口后,会因为找不到ISO而停下来,此时会有一个命令行界面,我们需要手动加载ISO文件。
  3. 输入blkid命令查看ISO文件所在的分区对应的设备,如/dev/sdb2。然后输入下面命令:(manjaro-xfce-17.0-stable-x86_64.iso应该是你的ISO文件名)
    mkdir /iso
    mount -r -t ntfs /dev/sdb2 /iso
    modprobe loop
    losetup /dev/loop6 /iso/manjaro-xfce-17.0-stable-x86_64.iso
    ln -s /dev/loop6 /dev/disk/by-label/MJR
    exit
    输入完后应该可以加载到ISO文件,然后就是正常的安装。
    注意分区的选择,我的选择是需要一个根目录/和一个交换分区swap,由于我的内存是8g,因此我选择的swap大小为8g。

从U盘安装

使用U盘安装的方式适用于安装单系统的情形,或者是从硬盘安装失败的情形,从U盘安装需要一个闲置的U盘。
我建议使用win32diskimage来刻入iso镜像到u盘里。注意刻入的内容将会被写入到u盘的开头,因此u盘内的东西将会被清空,注意做好备份。刻入镜像后,会发现WIN识别到的U盘容量变小了,使用硬盘管理相关的工具给U盘重新创建分区即可。

简单配置

换源

sudo pacman -Syy && sudo pacman-mirrors -i -c China -m rank &&sudo pacman -Syyu
途中会弹出一个框,选择ustc中科大的源。

包管理操作

(以终端编辑器micro为例)
sudo pacman -S micro chromium (安装micro和chromium)
sudo pacman -Rs firefox (删除firefox)

添加arch源

sudo micro /etc/pacman.conf
添加以下内容
[archlinuxcn]
SigLevel = Optional TrustedOnly
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
按ctrl+s保存,ctrl+q退出
然后sudo pacman -Syy &&sudo pacman -S archlinuxcn-keyring

安装zsh

sudo pacman -S git zsh
sh -c “$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)”
然后输入密码即可

更换输入法

sudo pacman -S fcitx-googlepinyin fcitx-im fcitx-configtool fcitx-cloudpinyin
sudo micro ~/.xprofile
加入以下文本(可能是新文件)
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
然后保存退出,重启即可加载输入法和zsh,然后配置一下输入法即可。
(我的配置:ctrl激活,黑色皮肤,14号字体,使用百度云的词库输入等)

修改主要目录为英文

输入命令:
sudo pacman -S xdg-user-dirs-gtk
export LANG=en_US
xdg-user-dirs-gtk-update# 然后有个窗口弹出,修改为英文即可。
export LANG=zh_CN.UTF-8

显卡驱动

manjaro对于笔记本使用的是bumblebee管理显卡驱动,可以实现核显卡和独立显卡的切换使用,以节电。
运行命令时,在开头加optirun就可以使用独立显卡来运行此命令。
一般情况下,系统设置->硬件设定里面是已经安装了video-hybrid-intel-nvidia-bumblebee(里面包括nvidia驱动),因此不需要再从源里面或者官网下载驱动来安装了(如果没有,点击Auto Install Proprietary Driver即可,自动安装合适的专有驱动,如果是台式机,则安装独显驱动,如果是笔记本,它安装的是bumblebee驱动,默认使用核心显卡来省电),下面步骤来激活或者切换驱动。

  1. 首先要添加gasharper(我的用户名)到bumblebee组才可以使用optirun命令:
    sudo usermod -a -G bumblebee gasharper
    启用:sudo systemctl enable bumblebeed
    配置:sudo nvidia-xconfig
    然后重启,此时输入nvidia-smi是失败的,因为默认用的是核显,使用optirun nvidia-smi才可以正常输出。
    此时输入screenfetch所识别的GPU是Unknown的,若要默认使用独立显卡,则继续下面操作。
  2. 为了方便,添加以下内容到~/.zshrc,输入onlynv即可禁用bumblebee,只使用nvidia
    alias onlynv=“sudo tee /proc/acpi/bbswitch <<<ON”
    alias offonlynv=“sudo tee /proc/acpi/bbswitch <<<OFF”
    输入onlynv之后,直接输入nvidia-smi即可正确输出
  3. 重启之后,会发现东西变大,此时用xrandr设置一下分辨率,写一个脚本:
    #!/usr/bin/zsh
    xrandr --newmode “1920x1080_60.00” 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
    xrandr --addmode eDP1 “1920x1080_60.00”
    xrandr --output eDP1 --mode 1920x1080_60.00
    保存为set_1920_1080.sh文件,赋予可执行权限,然后执行一下,会发现分辨率恢复正常。为方便,可以在“自动启动”中添加该脚本,然后开机可以自动运行该脚本。

Pytorch with GPU

在octopi中找python-pytorch-cuda包,直接安装即可(需要很久,中途可能会因为下载太慢而中断,再重新安装一下即可)
注意,此方法安装的pytorch在系统默认的python里,即which python所显示的那个python里。好像无法修改到conda里面。
此方法安装的pytorch自动满足cuda和cudnn的版本依赖问题,在这之前需要按照上面的方法安装好nvidia驱动,驱动版本需要在410以上。安装好后,python里输入import torch;torch.cuda.is_available()查看是否成功(需要先执行onlynv命令,或者以optirun运行python命令)。
按照显卡驱动Pytorch with GPU的步骤安装好后,系统里面应该安装好了nvidia driver, cuda, cudnn了,若编译其他东西将会可以使用到它们。

opencv340配置

我们使用源码编译的方式来配置opencv340(with cuda, c++ version),到目前为止,相关环境为:
### enviroment:
# cuda 10.0.130
# nvidia driver 415.27
# default gcc8.2.1
# default python3.7
# pytorch1.0.1 were installed, mainly with opencv4.0.1(in python,/usr/bin/python,python version3.7)
########################

我们将opencv源码放在/opt目录下
由于opencv340与cuda10,python3.7,gcc8.2不能原生编译,因此需要修改cmake配置:(编译过一次后就可以修改)
# using gcc-5 to compile
CUDA_HOST_COMPILER=/usr/bin/gcc-5
# my cuda’s version is 10
BUILD_opencv_cudacodec=FALSE
# some tests will cause error
BUILD_TESTS=FALSE
# set all aout python=FALSE**
BUILD_opencv_python3=FALSE
BUILD_opencv_python_bindings_generrator=FALSE

用cmake-gui搞完后,(有个ippicv的包在confige过程中要下载,下不了也不影响make),到build目录,执行命令:
sudo make -j7编译源码(要1个多小时),-j7是使用7个线程的意思。
如果有错误,google错误,详细错误输出到build/CMakeFiles下的error文档。
没有编译error后,使用sudo make install安装,opencv340将会安装在/usr/local/include(头文件)及/usr/local/lib64(动态链接库)下。
为了以后方便使用,将其加载在系统默认的地方:
在/etc/ld.so.conf.d/下新建opencv340.conf文件,写入/usr/local/lib64(一行,没有其他东西了),然后sudo ldconfig.

openface安装:

安装openface,在上述基础上,还需要安装openblas,boost,然后安装dlib。
我们使用openface-wiki上说的dlib19.13版本,可以顺利安装。
openface使用的是2.1.0版本,也可以顺利安装。
参照https://github.com/TadasBaltrusaitis/OpenFace/wiki/Unix-Installation教程
最后然后下载四个cen_patches*.dat文件到/usr/local/etc/OpenFace/model/patch_experts/里还有/opt/OpenFace-OpenFace_2.1.0/build/bin/model/patch_experts/(build目录)里面。
# 模型位置:/usr/local/etc/OpenFace/
# 四个lib的位置:/usr/local/lib/
# 头文件位置:/usr/local/include/OpenFace/
# demo文件位置:/usr/local/bin
最后在build目录下,执行 ./bin/FaceLandmarkVid -f “…/samples/changeLighting.wmv” -f “…/samples/2015-10-15-15-14.avi” 来查看openface是否安装成功。

参考文献

显卡驱动 https://blog.csdn.net/qq_38063935/article/details/84146563
软件及其他配置 https://www.jianshu.com/p/6367d737f349

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值