为了在E431上用UEFI安装Arch一个晚上重装了5,6次系统,整整做了一个通宵,还好是周六。今天刚好有时间正好 来总结一下。因为要用UEFI来安装,所以安装了两次之后发现UEFI环境变量不可用(用efivar-tester才发现的),才又开始追求完美之路 (折腾之路)。

一、制作UEFI的启动U盘

  1. 下载工具软件Rufus
  2. 选择U盘;分区选择GPT for UEFI Computer
  3. 文件格式选FAT32(之前用Grub时找的一些资料上说Ntfs不能用,所以不能用openSUSE,>4G了)
  4. 簇大小默认4K就好
  5. 卷标和Arch光盘卷标一样就好(不强制,之前用Grub引导iso镜像安装时的阴影,不一致导致无法用Grub引导)
  6. ISO选择Arch的镜像
  7. 写入镜像会删除盘上全部数据!自己先保存好! 安装UEFI USB的方法参见此连接

要用UEFI的U盘来制作镜像(就是发现这个才在安装了两次之后重新又试了几次),我用的是,直接把Arch的镜像通过这个软件做进U盘(同时U盘的分区会改成GPT格式),这样U盘也就是UEFI的了。

二、把E431的BIOS设成UEFI Only,这样就保证是用UEFI的了。

三、安装系统

1.基本系统的安装

硬盘分区

分区方案是/boot/efi,/,/usr,/home四个分区,由于想用动态swap,因此不建swap分区。

1 cfdisk
2 #/boot/efi为sda1,/为sda2,/usr为sda3,/home为sda4

安装文件系统

在sda1安装fat文件系统,sda{2,3,4}安装ext4文件系统

1    mkfs.vfat /dev/sda1
2    mkfs.ext4 /dev/sda2
3    mkfs.ext4 /dev/sda3
4    mkfs.ext4 /dev/sda4

挂载分区

1 #挂载/
2 mount /dev/sda2 /mnt
3 #创建boot/efi,usr和home以挂载sda1,sda3和sda4
4 cd /mnt
5 mkdir boot
6 mkdir boot/efi
7 mkdir usr
8 mkdir home
9 mount /dev/sda1 /mnt/boot/efi
10 mount /dev/sda3 /mnt/usr
11 mount /dev/sda4 /mnt/home

更新mirrorlist

更新源有两个方法,从网上下一个mirrorlist,刚好找到的,就省去了自己改文件了

1 cd /etc/pacman.d
2 mv  mirrorlist{,.orig}
3 wget http://docs.ihacklog.com/mirrorlist
或者,自己修改mirrorlist
1 cd /etc/pacman.d
2 sed -i "s/^\b/#/g" mirrorlist
3 nano mirrorlist
4 #将mirrors.ustc.edu.cn和mirrors6.ustc.edu.cn前面的#去掉,163的也比很快,但发现过这个源有问题,所以推荐用ustc的,虽然是学校的,但不是教育网的也很快。
5 pacman -Syy

安装base系统

我们只需要安装base和base-devel

1 pacstrap /mnt base base-devel #也可以只是安装base #如果你想使用ifconfig之类的工具,请在上面加上net-tools

生成fstab

在开机时我们需要正确挂载分区,这就需要fstab 这里我使用的是UUID的方式识别

1 genfstab -U -p /mnt >>/mnt/etc/fstab

改变根目录

1 arch-chroot /mnt /bin/bash

配置locale

打开locale.gen

1 cd /etc
2 nano locale.gen
3 #将en_US.UTF-8,zh_CN.GB18030,zh_CN.UTF-8前的#去掉
4 locale-gen
5 echo LANG=en_US.UTF-8 >> locale.conf
6 nano vconsole.conf
7 #输入 #
    KEYMAP=us
    FONT=

设置时区

1 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

设置主机名

1 echo 主机名 >> /etc/hostname

生成ramdisk

因为/usr作为独立分区,所以还要配置mkinitcpio.conf, 文件内有注释说明

在HOOKS中加入 fsck usr shutdown

1 mkinitcpio -p linux

用户配置

1 passwd
2 #修改root密码
3 useradd -m -g users -G wheel -s /bin/bash 用户名
4 passwd 用户名

安装GRUB(UEFI)

1 pacman -S grub-bios efibootmgr dosfstools
2 grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck --debug
3 grub-mkconfig -o /boot/grub/grub.cfg cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo

安装GRUB(非UEFI)

1 pacman -S grub-bios
2 grub-install /dev/sda
3 cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo  #据说这一步是为了解决一个一直未被修复的bug
4 grub-mkconfig -o /boot/grub/grub.cfg

重启

p.s.如果安装了win8等系统可以安装 os-prober 来检查已经存在的其它系统。

1 exit #退出chroot
2 umount /mnt/{boot/efi,usr,home}
3 umount /mnt
4 reboot

2.驱动安装

安装ALSA(声卡)

1 pacman -S alsa-utils
2 alsamixer #调节音量

安装显卡驱动

1 lspci | grep VGA #查看机器上的显卡信息

2 pacman -Ss xf86-video | less #查看有什么显卡包

我的E431是双显3000和GT740,先安装核显

1 pacman -S xf86-video-intel

2 pacman -S mesa #软件实现在图形应用程序接口

另外,为了安全起见,安装下vesa(如果其它驱动加载失败,Xorg会退回并加载vesa)

1 pacman -S xf86-video-vesa

安装synaptics触摸板驱动

1 pacman -S xf86-input-synaptics

3.桌面环境的安装

安装xorg

1 pacman -S xorg-server xorg-xinit xorg-utils xorg-server-utils #也可以只安装xorg-server

安装字体

1 pacman -S ttf-dejavu wqy-microhei-lite

安装KDE

接下来就是桌面环境了,这里我使用的是KDE,当然是最小化安装

1 pacman -S kdebase #一路enter就行了
2 pacman -S kdemultimedia-kmix #音量调节 可以在~/.kde4/share/config/kmixrc中加入VolumePercentageStep=?来设置音量增加步长
3 pacman -S kdeplasma-applets-plasma-nm #网络管理
4 systemctl enable NetworkManager.service #开启网络管理服务
5 systemctl enable kdm.service #开启kdm
6 pacman -S kde-l10n-zh_cn #添加中文支持

7 pacman -S phonon-vlc

启动KDE的方法有两个,在安装完之后是不用管的,这里只是提一下,以备查

1.启动kdm.service

1 systemctl start kdm.service

2.用xinitrc来启动

~/.xinitrc

exec startkde

安装常用软件

1 pacman -S synaptiks #触摸板管理程序 --已经被移至aur
2 pacman -S kde-gtk-config #gtk主题管理
3 pacman -S kcm-fcitx fcitx-qt kdeplasma-addons-applets-kimpanel fcitx-table-extra #fcitx输入法
4 pacman -S kdeutils-ark kdeutils-kwallet #安装ark和kwallet,这两个用过的都知道
5 pacman -S unzip zip unrar #ark的压缩解压支持
6 pacman -S kdegraphics-ksnapshot kdegraphics-okular kdegraphics-gwenview #截屏、pdf阅读及图片浏览软件

安装Aur

[略]改日再补

安装wifi BCM43142

[略]改日再补

安装bumblebee

为了可以发挥GT740的威力又可以在不用时省电

[略]改日再补

P.S.通过U盘引导ISO的一些经验

用Grub引导之后会发现device label错误,只能回到命令行,做如下操作就行了

1 mkdir /tmpmnt
2 mount -r -t vfat /dev/sdb1 /tmpmnt #sdb1为U盘的分区
3 modprobe loop
4 losetup /dev/loop6 /tmpmnt/os/archlinux/archlinux-2014.01.05-dual.iso #此为ISO所在目录
5 ln -sf /dev/loop6 /dev/disk/by-label/ARCH_201401
6 exit

P.S.动态Swap的设置

在文件中加入一个swap文件,我的内存是4G,所以用了个5G的Swap,这样方便休眠,以后增加了内存也只是重新建一个swap文件就可以了,不用修改磁盘分区了!

P.S.ps(其实休眠是否能成功与swap大小没有太大关系,当然swap必须大于等于内存大小,如果当运行时的swap占用到的swap空间小于了内存大小,就无法休眠成功了,当然现在又有了一个可以对内存进行压缩再休眠的方法,可以减少swap上休眠失败的可能)

1 dd if=/dev/zero of=/home/swap/5G.swap bs=1M count=5k
2 mkswap /home/swap/5G.swap
3 swapon /home/swap/5G.swap

如果想要在启动时就加载swap就在fstab中加入

/home/swap/5G.swap none swap sw 0 0

P.S.额外软件

KMLDonkey
KGet
KTorrent
gparted
kdePartitionManager
kate
kdeutils-print-manager cups
samba

其它KDE控制模块见https://wiki.archlinux.org/index.php/KDE

更多KDE软件参见 http://kde-apps.org

KDE的安装可以再参见

http://wiki.klniu.com/zh/Archlinux/KDE%E6%A1%8C%E9%9D%A2%E7%8E%AF%E5%A2%83%E5%AE%89%E8%A3%85%E9%85%8D%E7%BD%AE

http://my.oschina.net/codeaxe/blog/127533

http://ihacklog.com/post/installation-of-archlinux-201309-dist.html

用UEFI安装ArchLinux 20140105的更多相关文章

  1. UEFI安装Kali Linux 1.1.0记录

    现在使用Kali Linux 1.1.0, UEFI启动,使用Fcitx的拼音输入法,词库实在不爽,将就写一写. 本文地址: http://www.cnblogs.com/go2bed/p/42954 ...

  2. 网络安装archlinux(2012.8.20)笔记

    周末闲极无聊,把烂笔记本翻出来想装个Archlinux,发现USB不能启动,光驱也挂了,只好网络安装. 我先后试了两种安装方式,一种纯互联网启动,安装,一种局域网启动,再互联网安装.分别说说. 不管哪 ...

  3. 联想V480关闭UEFI安装Win7

       联想V480关闭UEFI安装Win7 http://www.dadclab.com/archives/3283.jiecao 故事背景 兔兔牛入了一枚Lenovo V480,预装Win8,想换成 ...

  4. 如何安装ArchLinux

    如何安装ArchLinux   本文基于ArchLinux(https://www.archlinux.org/)Current Release: 2013.08.01的ISO写的安装教程! ISO下 ...

  5. UEFI安装Win10

    启动方式: Legency UEFI 分区表类型: MBR 主引导记录 最多4个主分区 最大支持2.1T硬盘 GPT 基于可扩展固件接口(EFI) 分区数不限 NTFS格式最大支持256T硬盘 安装模 ...

  6. [ARCH] 1、virtualbox中安装archlinux+i3桌面,并做简单美化

    星期六, 28. 七月 2018 02:42上午 - beautifulzzzz 1.安装ArchLinux系统 安装Arch主要看其wiki,比较详细- 中文的我主要参考:一步步教你如何安装 Arc ...

  7. 安装archlinux的linux命令记录

    磁盘的分区:cfdisk 格式化分区:mkfs.ext4,mkswap,swapon 查看所有分区:lsblk /dev/sda 先挂载 / 分区:mount /dev/sda1 /mnt archl ...

  8. uefi安装win7,deepin15双系统后grub没有windows选项

    本帖最后由 873792861 于 2015-12-23 16:17 编辑 如题,首先电脑是GPT+uefi的,电脑上安装有64位的win7.用U盘工具制造好驱动U盘后,在安装时选择 专家模式 ,选择 ...

  9. [转载]安装archlinux 以后没有 ifconfig,route ,nslo

    原文地址:安装archlinux 以后没有 ifconfig,route ,nslookup 等命令作者:十阿哥 ifconfig, route在net-tools中, nslookup, dig在d ...

随机推荐

  1. Win32 OpenGL标准例子

    在VS2008的MSDN中有一个标准的OpenGL例子,记录如下: /* * Example of a Win32 OpenGL program. * The OpenGL code is the s ...

  2. 用Redis构建分布式锁-RedLock(真分布)

    在不同进程需要互斥地访问共享资源时,分布式锁是一种非常有用的技术手段. 有很多三方库和文章描述如何用Redis实现一个分布式锁管理器,但是这些库实现的方式差别很大,而且很多简单的实现其实只需采用稍微增 ...

  3. Redis(一)基础

    Redis Remote Dictionary Server 远程字典服务器 功能 缓存(当空间达到限制时,可以按照一定规则,淘汰部分数据) 队列(支持阻塞式读取) 订阅/发布(可以将其做出聊天室) ...

  4. tcp/ip http socket笔记

    1.TCP/IP协议是传输层协议,主要解决数据如何在网络中传输 HTTP是应用层协议,主要解决如何包装数据 2.TCP连接的三次握手 第一次握手:客户端发送syn包到服务器,并进入SYN_SEND状态 ...

  5. NPOI MVC 模型导出Excel通用类

    通用类: public enum DataTypeEnum { Int = , Float = , Double = , String = , DateTime = , Date = } public ...

  6. SwipeRefreshLayout嵌套ScrollView包裹复杂头布局和RecyclerView

    布局如下:上面是一个描述有:头像和部分信息的布局,底部是一个RecyclerView: 想法:想实现RecyclerView向上滚动的时候,隐藏上面的头像布局信息:使用了 CoordinatorLay ...

  7. Palindrome Pairs

    Given a list of unique words. Find all pairs of distinct indices (i, j) in the given list, so that t ...

  8. PHP入门篇

    一.PHP-什么是变量  变量是用于存储值的,我们命令服务器去干活的时候,往往需要产生一些数据,需要临时性存放起来,方便取用.我们也可以理解为,变量就像一个购物袋,我们可以用来装苹果.榴莲(当然也可以 ...

  9. 关于JS 沙箱(转)

    javascript中的沙箱并非传统意义上的沙箱,只是一种语法上的hack写法而已,javascript中处理模块依赖关系的闭包被称之为沙箱,和 ajax一样,这种sandbox coding风格是一 ...

  10. Splinter学习--初探1,模拟百度搜索

    Splinter是以Selenium, PhantomJS 和 zope.testbrowser为基础构建的web自动化测试工具,基本原理同selenium 支持的浏览器包括:Chrome, Fire ...