Arch Linux 安装总结

这篇随笔的目的:

  这篇是我今天重新安装后,觉得每次都看别人的来复制,太麻烦了,每次自己解决的一些问题,又不能及时记录下来,导致每次都又需要一通乱找,肯定比第一次开始搜索的要快,但是还是浪费时间,所以我决定写随笔,把我自己的解决过的问题记录下来。文章里面,很多都是借鉴别人的,然后解决了我自己的问题。我每次安装Arch Linux,不同的电脑,同一部电脑,都会遇到不同的问题,即使是同样的电脑。这有些是配置文件引起,有些是另外一些因素引起。记录下我自己的解决方法,我的初衷还是为了我自己快速解决已经解决过的问题。所以,如果你在帖子里面看到有哪个问题和你的情况比较相似,请邮箱联系我。我们共同探讨。hwy89289709@gmail.com。

  在操作parted的时候,对于有重要数据的磁盘,一定要小心阿,我就是太不小心了,导致重要的数据丢失阿。欲哭无泪。我心都不只塞,凉了大半截。要吸取教训阿。

  至于我误删的原因:是在操作一个硬盘的时候,不小心把上面的分区表,10M左右大小的一个不是我自己分出来的区给删掉了(准确的说,我不知道那是不是分区表,我只是删了那个区之后,我后面的数据,立刻在parted,fdisk上面都显示不出了)。花了一个通宵,依然没有找回来。算吧,生活还得继续。我是不知道准确原因的,如果知道原因,请在流言下面告诉我

 

  我尽量配上原文,但是之间有很多,我那时没有记录下来。如果以后遇到,我会补充上去。我也尽量补充上我遇到的问题没有解决的。


更新记录:

  2017-04-16:第一天更新,写下了安装过程要的命令,从上到下的过程,就是安装时候的大概顺序,是几乎没有解释的,很好的解析,需要到wiki上看。或者多人感兴趣的,我再发过一个安装教程吧。这个不算是教程。第二个部分是我今天安装的时候,总在想那个解决我问题的软件叫什么,所以我把我常用的软件都记了下来。

 


 

当前目录:

  随笔的目的:描写我当时为什么写这东西。

  更新的记录:描写我在当天都加了什么。

  安装过程:记录安装过程的大概命令

  常用软件:记录解决我问题的一些软件

   使用期间的问题:安装好后遇到的各种问题,以及我解决的方法。配上参考网页

 


 

 安装过程:

  参考网页:

  https://bbs.archlinuxcn.org/viewtopic.php?id=1037

  我记录下我自己一般会使用的命令:从各路网页中参考过来

  同步时间: 

# timedatectl set-ntp true

 

  选择中国的源,然后再更新会快很多:

# sed -i '/Score/{/China/!{n;s/^/#/}}' /etc/pacman.d/mirrorlist
# pacman -Syy

  分区命令:

我分成EFI,/和/home,/要分大一点,因为我自己要使用来看代码,LXR的索引会很大,会超过50G# parted /dev/sdx
(parted) mklebel gpt
mkpart primary start end
mkfs.vfat -F32 /dev/sdx
mkfs.ext4 /dev/sdx
mkswap /dev/sdx
swapon /dev/sdx mount /dev/sdx <mount_point>

  原版会比较详尽解说:

  一个挂在的例子,我经常会弄混EFI挂在的位置:  

# mount /dev/sda2 /mnt    # 挂载根目录
# mkdir /mnt/home    # 创建 /home 挂载点
# mount /dev/sda3 /mnt/home    # 挂载 /home
# mkdir -p /mnt/boot/EFI    # 创建 UEFI 挂载点
# mount /dev/sda1 /mnt/boot/EFI    # 挂载 UEFI 分区

  安装基础系统:

# pacstrap -i /mnt base base-devel

  生成fstab:

# genfstab -U <根目录挂载点> >> <根目录挂载点>/etc/fstab一定要记得检查
# cat <根目录挂载点>/etc/fstab

  配置基本系统:

# arch-chroot <根目录挂载点> /bin/bash

  配置local:

# nano /etc/locale.gen    # 反注释需要的 locale
# locale-gen    # 生成 locale
# echo LANG=<locale>  > /etc/locale.conf # 设置默认 locale

  配置时区:

这句话是配置中国区的
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

  硬件时间配置:

(推荐)UTC 时间(只是别人推荐,我还没懂这个时间作什么的):
# hwclock --systohc --utc

  配置主机名:

# echo <主机名> > /etc/hostname
# nano /etc/hosts    # 将主机名填入

  配置完成后的样子:

# cat /etc/hostname
<主机名>
# cat /etc/hosts
#<ip-address> <hostname.domain.org> <hostname>
127.0.0.1 localhost.localdomain localhost <主机名>
::1   localhost.localdomain localhost <主机名>

  以前网络都是自己就好了,但是这次重装, 发现不行,开启了这个才行

# systemctl start dhcpcd    # 连接
# # systemctl enable dhcpcd 以自动连接

  设置root密码:

# passwd

  安装引导器:

# pacman -S dosfstools grub efibootmgr
# grub-install --target=x86_64-efi --efi-directory=<EFI 分区挂载点> --bootloader-id=arch_grub --recheck
# grub-mkconfig -o /boot/grub/grub.cfg

  退出重启:

# exit    # 退回安装环境
# umount -R < / 挂载点>    # 卸载新分区
# reboot    # 重启
# # 记得移除安装介质

  新建自己的用户:

# useradd -m -g users -s /bin/bash <用户名>
# # 该命令创建一个名为 <用户名> 的用户,指定登陆 shell 为 bash,所属主用户组 users,用户文件夹位于 /home/<用户名>。
# passwd <用户名>   # 设置密码

  安装显卡驱动:需要更多信息的,是需要浏览WIKI,或者我引用的网址

pacman -S xf86-video-intel 
pacman -S nvidia

  声卡驱动一般是有的,但是我的台式机就没有所以也需要安装

pacman -S alsa-utils

  安装Xorg(至于xorg是什么,需要自己了解下,其实我也不太懂)只知道,xfce4这些桌面,是需要依赖这个,它是利用显卡驱动来显示

# pacman -S xorg-server xorg-server-utils    # 安装 Xorg Server
# pacman -S xf86-input-synaptics    # 可选,触摸板支持

  安装中文字体(后面有补充更多的具体):

# pacman -S ttf-dejavu wqy-microhei

  安装窗口系统:首推xfce4,我个人喜欢的原因,不花哨,够快。多窗口,多开不卡 

pacman -S xfce4 xfce4-goodies

  安装中文输入等应用软件,就根据后面的情况,自己使用pacman来进行安装了

 


 

安装后的各种问题:

常用软件:

  参考网页:http://blog.chinaunix.net/uid-26495963-id-3309581.html

        http://blog.sina.com.cn/s/blog_b3ef80f90101f5gz.html

  解压缩:unzip, unrar, file-roller, p7zip, unace, lrzip, 

  输入法:fcitx-im, fcitx-configtool, fcitx-libpinyin

  字体:wqy-microhei、ttf-arphic-ukai、ttf-arphic-uming

  桌面环境:xfce4 xfce4-goodies

  代码管理:git

  浏览器: chromium  pepper-flash

  PDF浏览器:okular

  多媒体: mplayer


 

使用期间的问题:

没有声音:

  添加组:usermod -aG audio <user>

  主要是默认的声卡配置部队,需要把下面配置加上:

  把下列配置添加到系统级别的 /etc/asound.conf 或用户级别的 ~/.asoundrc 文件。如果文件不存在,可以手动创建。其中的各个ID,请根据实际情况调整:

defaults.pcm.card 1
defaults.pcm.device 0
defaults.ctl.card 1

  参考网页:https://segmentfault.com/a/1190000002918394

 

为什么xfce4下面不能够使用关机和重启?

  是因为没有root权限, 需要在sudoers下面增加以下:

  username localhost = NOPASSWD: /usr/lib/xfsm-shutdown-helper

  username localhost = NOPASSWD: /usr/bash

  将这些命令的权限给到

 

lxdm为什么不能够启动xfce4:

  需要在自己的用户文件夹下面增加.xprofil,在文件里面增加exec startxfce4

 

使用ssh:

  pacman -S openssh

  systemctl start sshd

 

如何做到自动挂在mtp设备?

  pacman -S gvfs-mtp

 

能自动挂在了,但是不能够在vfat格式上做修改文件:

  参考网页:https://bbs.archlinux.org/viewtopic.php?id=180713

  pacman -S  ntfs-3g 

 

两个显卡,两个显示器,如何进行双屏显示?

  参考网页:https://www.reddit.com/r/archlinux/comments/2kkrsr/dual_monitor_intelnvidia/

  xrandr --setprovideroutputsource 1 0

  xrandr --auto

  xrandr --output --left-of VGA-0 VGA-1-1 

  仍然存在的问题:打字阿,候选字只会在一个屏幕中出现,我使用的是xfce4,不知道其它桌面环境是不是这样。

 

使用pacman -Syu 的时候, 出现  error: GPGME error: No data 这样的错误提示, 相关的网页上找了以下,

 有两个参考网址: 网址1 网址2

别人说在pacman.conf中添加

SigLevel = Optional TrustAll

但是我查看了我自己的文件,已经有了, 看到那行下面有注释说了下两面两个命令,

pacman-key --init
pacman-key --populate archlinux

使用了之后, 就能够继续更新了.

 

如何关闭触摸版: 

首先安装必要的包: 

sudo pacman -S xf86-input-synaptics

使用以下两条命令来进行开关

sudo synclient touchpadoff=1 #关闭触摸板
sudo synclient touchpadoff=0 #开启触摸板

 

想在桌面上加个notes的应用:

于是找到了这个网页, http://goodies.xfce.org/projects/panel-plugins/xfce4-notes-plugin

安装下面的软件, 或者是直接安装xfce4-goodies会包含在里面

$ sudo pacman -S xfce4-notes-plugin

 

2017-05-02: 遇到PCI bus error on startup while booting into login screen

参考的网页有: 

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1588428

https://askubuntu.com/questions/748078/nvidia-geforce-930m-driver-and-pci-bus-error

https://wiki.archlinux.org/index.php/GRUB_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

解决这种错误的办法, 就是按下面的教程

sudo cp /etc/default/grub /etc/default/grub.bak
sudo emacs /etc/default/grub
# 将这一个参数: GRUB_CMDLINE_LINUX_DEFAULT="quiet" 改变成下面的样子
GRUB_CMDLINE_LINUX_DEFAULT="quiet pci=nomsi"
# 非EFI
grub-mkconfig -o /boot/grub/grub.cfg
# EFI使用
grub-mkconfig -o /boot/efi/EFI/GRUB/grub.cfgsudo reboot

 

在xfce4下面忽然fcitx不能夠使用了:

我使用的登录管理器是:lxdm,需要在~/.xprofile中使用

exec startxfce4

来进行启动,同样fcitx也需要在~/.xprofile中使用export来进行输出变量

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

这样的话,必须要确保输出变量要在启动桌面后面,这样才能够使用。

 

安装python-matplotlib的时候,发生了errors occurred no packages were upgraded:

错误的提示是类似这样:

error: could not prepare transaction
error: failed to commit transaction (conflicting files)
libname: /insert/file/name/here exists in filesystem
Errors occurred, no packages were upgraded.

根据pacman的wiki:https://wiki.archlinux.org/index.php/pacman

我直接使用 pacman 的 --force 的选项来直接复盖掉所有冲突的文件。

 

arch linu ssh的配置:配置文件是在/etc/ssh/sshd_config

我自己电脑上的一个问题就是,没有办法在多个ssh -X mininet@IP地址的窗口内运行多个xterm,一运行就会出错

xterm: Xt error: Can't open display: localhost:13.0

于是我在sshd_config文件里面,将

X11Forwarding no
改成
X11Forwarding yes

 


 

LXR的错误:

错误:

mysql.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)

我的解决办法:

sudo mv /usr/lib64/perl5/site_perl/auto/DBI/DBI.so /usr/lib64/perl5/site_perl/auto/DBI/DBI.so.bak

然后再进入cpan

force install DBI

 

然后还出现了

mysql.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)

类似上面的解决办法:

force install DBD::mysql

然后可以使用了

 

有时候更新会出现:Pacman refuses to upgrade due to missing key

https://bbs.archlinux.org/viewtopic.php?id=191279

# rm -R /etc/pacman.d/gnupg/
# rm -R /root/.gnupg/  # only if the directory exists
# gpg --refresh-keys
# pacman-key --init && pacman-key --populate
# pacman-key --refresh-keys

  

 


 

转载于:https://www.cnblogs.com/hwy89289709/p/6723737.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/429399.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java空心正方形代码_从Java中的用户输入绘制空心星号正方形/矩...

我正在尝试创建一个程序,要求用户提供正方形/矩形的宽度和长度尺寸,然后使用#符号将其绘制出来.我几乎了解了,除了我似乎不太了解矩形的右边以正确打印出来…这是我的代码&#xff1a;import java.util.Scanner;public class warmup3{public static void main(String[] args){i…

2017.4.17------软件测试的艺术+整理以前的摘记

2017.4.17 以下内容来自《软件测试的艺术》 第1页——14页。供自己学习使用。 第一章 软件测试&#xff1a;就是一个过程或一个系列过程&#xff0c;用来确认计算机代码完成了其应该完成的功能&#xff0c;不执行其不该有的操作。 第二章 测试人员需要有正确的态度。每当测试一…

基于MODBUS协议的单片机与(串口屏)触摸屏通信(图文)

基于MODBUS协议的单片机与(串口屏)触摸屏通信(图文) 导读&#xff1a;触摸屏能够直观、生动地显示运行参数和运行状态&#xff0c;而且通过触摸屏画面可以直接修改系统运行参数&#xff0c;人机交互性好。触摸屏和单片机通信&#xff0c;需要根据触摸屏采用的通信协议为单片机编…

java mask_Java 三大属性:

# Java 三大属性&#xff1a;面试时候问的一个很基础的问题&#xff0c;也是面向对象的三大特点。## 一、封装首先&#xff0c;属性可用来描述同一类事物的特征&#xff0c;方法可描述一类事物可做的操作。封装就是把属于同一类事物的共性(包括属性与方法)归到一个类中&#xf…

java 事物_java事务

1、事务的四大特性(1)原子性(Atomicity)&#xff1a;原子性是指事务包含的所有操作要么全部成功&#xff0c;要么全部失败回滚。失败回滚的操作事务&#xff0c;将不能对数据库有任何影响(2)一致性(Consistency)&#xff1a;一致性是指事务必须使数据库从一个一致性状态变换到另…

【转】C#之继承

C#之继承 一.继承的类型  在面向对象的编程中&#xff0c;有两种截然不同继承类型&#xff1a;实现继承和接口继承  1.实现继承和接口继承  *实现继承&#xff1a;表示一个类型派生于基类型&#xff0c;它拥有该基类型的所有成员字段和函数。在实现继承中&#xff0c;派生…

java 学习计划_Java学习计划范例

Java学习计划范例Java学习计划好的计划是成功的一半&#xff0c;今天是在创新思维的第一节课&#xff0c;在这门课程的开始&#xff0c;一个有策略的、有目的性的计划是非常必要的&#xff0c;为了在以后的学习中能够达到最好的.效果&#xff0c;"坚持"是一把雕刻刀&…

SQL Server 2012自动备份

SQL 2012和2008一样&#xff0c;都可以做维护计划&#xff0c;来对数据库进行自动的备份。 现在做这样一个数据库维护的计划&#xff0c;每天0点对数据库进行差异备份&#xff0c;每周日0点对数据库进行完全备份&#xff0c;并且每天晚上10点删除一次过期备份&#xff08;两个星…

mysql查逻辑表的分片规则_MySQL(19) Mycat分片(分库分表)配置

一、前言本文将基于主从复制&#xff0c;读写分离的环境基础上进行一个简单的分片(分库分表)配置二、Mycat分片配置mycat分片主要在scheam.xml&#xff0c;rule.xml这2个表中配置① scheam.xml&#xff1a;配置逻辑表以及对应使用的分片规则select user()这里小编主要对t_user表…

JS取消浏览器文本选中的方法

一 、问题的出现 今天在使用Easy-UI 的messager.alert()方法时候出现浏览器文本被选中&#xff0c;不知道其中是什么原因&#xff0c;如下图所示。 二 、解决思路 我最后的思路时在弹出消息框的同时&#xff0c;取消浏览器文本的选择&#xff0c;最后查找资料编写如下方法。  …

java 重构 if else_项目中的if else太多了,该怎么重构?

前言if else过多的话&#xff0c;一般都是用策略模式来进行重构&#xff0c;策略模式也非常的简单。先定义一个接口&#xff0c;各种处理分支实现这个接口&#xff0c;定义好 条件->处理类的映射关系&#xff0c;然后根据条件找到响应的处理类执行即可&#xff0c;当有新的分…

读书笔记:秘密

2017年立下了读30本书的旗子&#xff0c;现在这是第3本&#xff0c;是一本小说&#xff0c;东野圭吾的小说《秘密》。看小说也可以看出生活&#xff0c;但是是为了娱乐&#xff0c;是为了放松&#xff0c;小说本身挺好看的&#xff5e;引人入胜&#xff0c;一看到底类型。读书前…

mysql的student是什么意思_复习mysql

一、复习详尽如下&#xff1a;创建一个test库create database test;授权一个用户grant all privileges on *.* to xiang% identified by 1qazWSX;创建表create table student(id int not null);查询select * from tabel_name where 条件1 and 条件2增加insert into table_name …

算法复杂度的理解

算法复杂度的理解 from:http://blog.sina.com.cn/s/blog_4bab8e7f0102vmth.html算法复杂度分为时间复杂度和空间复杂度。 时间复杂度的计算 ​1.一个算法执行所耗费的时间&#xff0c;从理论上是不能算出来的&#xff0c;必须上机运行测试才能知道。但我们不可能也没有必要对每…

php如何将mysql数据库中的admin字段赋值给session_php实现将Session写入数据库

/**author Fahy*数据库为mysql&#xff0c;*数据库名为session&#xff0c;表名为session&#xff0c;*表中字段包括PHPSESSID,update_time,client_ip,data*/class Session{private static $handler null;private static $ip null;private static $lifetime null;private st…

linux 脚本 java_Linux 通过脚本执行Java程序

由于要统计不同的IP&#xff0c;代码中应用了HashSet来存放IP地址。上述Java程序是在Windows下编写的&#xff0c;如果在Linux服务器上运行&#xff0c;只需要把上面文件的路径和文件更换了就可以了。2.编写好java程序后&#xff0c;将java程序打成jar文件(环境Linux)我将上述测…

Java开启/关闭tomcat服务器

© 版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请注明出处 通过java代码实现Tomcat的开启与关闭 1.项目结构 2.CallTomcat.java package com.calltomcat.test;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;…

python命令行调试django代码_Django shell调试models输出的SQL语句方法

在settings.py里&#xff0c;配置如下logging&#xff1a;LOGGING {version: 1,disable_existing_loggers: False,handlers: {console:{level:DEBUG,class:logging.StreamHandler,},},loggers: {django.db.backends: {handlers: [console],propagate: True,level:DEBUG,},}}使…

5、如何快速找到多个字典中的公共键(key) 6 如何让字典保持有序 7 如何实现用户的历史记录功能(最多n条)...

5、如何快速找到多个字典中的公共键(key) from random import randint,sample #随机取数 # a sample("ABCDEF",randint(5,6)) # print(a) # b1 {x:randint(1,4) for x in sample("ABCDEF",randint(3,6))} # b2 {x:randint(1,4) for x in sample("A…

Bresenham画椭圆算法

这里不仔细讲原理&#xff0c;只是把我写的算法发出来&#xff0c;跟大家分享下&#xff0c;如果有错误的话&#xff0c;还请大家告诉我&#xff0c;如果写的不好&#xff0c;也请指出来&#xff0c;一起讨论进步。 算法步骤: (1) 输入椭圆的长半轴a和短半轴b。 (2) 计算初始值…