Archlinux在Btrfs分区上的安装(bios篇)
其实本文所有的内容在Archwiki上都可以找到,并且更新更全面(只是比较零散),我所做的只是对安装流程做一个小小的总结,每一步我都会稍微解释一下,但不会说的特别详细,毕竟这只是一篇安装引导文,而不是Wiki。
首先显然是下载最新的archlinux安装镜像:
1,用浏览器打开archlinux源,比如mirrors.163.com,mirrors.ustc.edu.cn(这里以163为例):(url)http://mirrors.163.com/archlinux/

可以看到,有个iso目录,这就是安装镜像所在的地址了。打开后里边是这个样子的:

其中latest目录下,是包含官方最新的archlive镜像,而archboot目录下,则是另一个版本的archboot镜像(以前的archlinux官方镜像,包含一个类似FreeBSD的图形化安装脚本哦,感兴趣的童鞋可以试试,感觉还是比较好用哦)。不多说了,还是进latest下载安装镜像(直接扔地址:)http://mirrors.163.com/archlinux/iso/latest/archlinux-2016.01.01-dual.iso(建还是自己进去下哦,说不定你看到本文时,2016年2月甚至2017年的镜像已经出了,建议下载最新的)
600多兆,时间比较漫长,我就先八一下怎么做安装USB,要是你用linux系统,直接dd进U盘就行了(命令我不多说了我觉得linux用户应该都会,不会的google baidu一下也会了,另一个方法就是男人(man)一下dd(搞基?),咱还是策反windows下的众linux小白为主
)。
考虑到网上众基们用ultra iso做启动盘的比较多,我就顺应民意用一下这个软件:
用ultra iso打开刚才下载好的镜像文件,选择启动->写入硬盘镜像

并在接下来的窗口选择RAW写入:

等一会儿,就写完了(要是启动失败,请移步互联网,找更靠谱的方法
,(因为这不是重点))
假设在座各位已经搞定了启动方法,下边就是安装了(我用的vbox虚拟机)

嗯,现在的电脑都支持x86_64(amd64),只要电脑不太差,选这个就OK了,内存小,可以选i686可以省内存哦(上下箭头选择,回车继续,不用我教吧)。

嗯嗯,看到一个命令行界面输一个lsblk看看有没认到硬盘:

那个sda就是硬盘了。分区cfdisk /dev/sda,在接下来的界面选dos(也可能没这个界面)

然后new一个分区(这里我是把所有空间都给我们的btrfs分区了,各位看官按需分区,按需分区嗯)并加上boot标志(以防有些sb主板只认有boot标志的硬盘):

然后选“Write”写入,选“Quit”退出。注意上边那个Start,一定要是2048或以上(比如4096 8192……),否则btrfs无法作为启动分区,什么你的是64?那……换个别的工具分区吧……
再lsblk,我们看到了sda1,分区搞定。

下一步就是格式化了,好激动,千万不要格式化错了分区哦(看官:你妹的在虚拟机下激动个P,就一个分区……)
mkfs.btrfs /dev/sdaX

看到这个提示,说明格式化成功了。接下来,建立子卷:

我建立了rootfs子卷作为archlinux的/,建立了homefs作为/home,接下来就是挂载:

解释一下:先cd ..跳出/mnt目录然后umount(卸载)掉sda1(不cd出去会umount失败),然后把rootfs子卷挂载到/mnt,然后建立/mnt/home目录,挂载homefs到/mnt/home,最后用mount命令查看一下挂载是不是成功了。
至于挂载参数,我作为例子,只用了一个compress=lzo,也就是用lzo模式压缩卷,lzo是一种先进的压缩实时算法,能减少磁盘占用,提升硬盘性能哦,当然如果系统装在SD卡等特别慢的设备上,我推荐zlib算法,牺牲部分CPU性能换硬盘速度,因为zlib压缩率高,比如把原来100M的文件压缩成了50M,读写显然就只用原来一半的时间,很好理解。
其他挂载参数,抄一下wiki上的:

依照你是SSD还是HDD,各取所需了吧。另外,稍微提一下,btrfs现在不支持各个子卷用不同的参数挂载,所以只有第一个子卷挂载时需要上边的罗哩罗嗦的一堆参数,比如上边我挂载home时,就只加了个subvol参数,指定子卷,其他会默认跟rootfs的一样。
挂载好了,下一步就是安装了,先编辑一下

把你最快的源放在最前边,比如我是用的163为例子:

然后就是安装基本系统:

我安装了base btrfs-progs grub三项,要是需要wifi-menu连无线,还需要架上wpa_actiond dialog,嗯,安装个很快,几分钟就装完了。
好了,下一步生成fstab与grub启动项:

嗯,命令我都用红框框出来啦,一定按顺序,别敲错了。
第一步用genfstab –U /mnt来查看生成的fstab项,如果没问题,第二步就是用>>符号把这些写到/mnt下的/etc/fstab(为什么是mnt下的呢?)。
然后用chroot后用grub-mkconfig生成grub菜单。并导入grub.cfg
最后一步,安装grub到mbr:

嗯,注意最后一行,有No error reported,就说明安装成功了。
接下来重启就OK了

先exit退出chroot环境,然后sync一下(不做其实也无所谓),然后reboot

启动成功,用root登录,密码为空

嗯,现在系统768M,好大
Archlinux在Btrfs分区上的安装(bios篇)的更多相关文章
- Windows 10+Ubuntu 16.04在MBR分区上安装双系统(转)
以下内容转自这篇博客: http://www.cnblogs.com/Duane/p/5424218.html http://www.cnblogs.com/Duane/p/6776302.html( ...
- ArchLinux安装(BIOS)
ArchLinux安装(BIOS) 说在前头:在经历过无数次的失败尝试过后总结出的可用的安装过程(比官方的简单一点) 官方安装指导 一.连接网络 1.连接 # wifi-menu 2.检查是否联通 ( ...
- GPT分区基础知识及如何在GPT分区上安装WIN7
大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘,更快速的启动win8,预装系统都采取了GPT分区 ...
- 安装ArchLinux的参考分区方案
其实就是从Archwiki上搬运过来的 = =. 分区方案 虽然有一些关于分区方案的通用建议,但没有严格的准则.有许多影响分区方案的因素,例如对灵活性的期望,访问速度,安全性以及可用磁盘空间的硬性限制 ...
- 安装win8/win10提示无法在驱动器0分区上安装windows解决方法
在通过U盘或光盘安装win8/win8.1/win10系统时,不少用户遇到无法安装的问题,提示“无法在驱动器0的分区1上安装windows”,格式化分区1也不能解决,进而提示Windows无法安装到这 ...
- 如何在GPT分区上安装WIN7
大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘,更快速的启动win8,预装系统都采取了GPT分区 ...
- Windows 10+Ubuntu 16.04在MBR分区上安装双系统之后启动菜单的System Setup选项提示:can't find command "fwsetup"
背景: 硬盘分区方式:MBR 硬盘容量256,Windows 100,Ubuntu 156,其中主分区安装的是Windows,Ubuntu安装在逻辑分区上,文件系统为Ext4,整个Ubuntu就挂载在 ...
- Windows 10+Ubuntu 16.04在MBR分区上安装双系统之后没有Windows 10的启动菜单解决方法
背景: 硬盘分区方式:MBR 硬盘容量256,Windows 100,Ubuntu 156,其中主分区安装的是Windows,Ubuntu安装在逻辑分区上,文件系统为Ext4,整个Ubuntu就挂载在 ...
- mac+win10:UEFI分区方式下安装windows 10
小编,最近通过在远景论坛上寻找教程--安装双系统(win10+mac os).经过一天努力,成功安装win10.为此,特地分享给各位正在需求教程的朋友,我在UEFI分区方式下安装windows 10的 ...
随机推荐
- ASP.NET MVC 与Form表单交互
一,Form包含文件类(单选文件) <form id="ImgForm" method="POST" enctype="multipart/fo ...
- C# - ADO.Net 调用存储过程
------------------------存储过程调用,创建DataSet:----------------------//数据库连接字符串string connStr = @"Dat ...
- 20个命令行工具监控 Linux 系统性能
对于每个系统管理员或网络管理员来说,每天要监控和调试 Linux 系统性能问题都是非常困难的工作.我已经有5年 Linux 管理员的工作经历,知道如何监控系统使其保持正常运行.为此,我们编写了对于 L ...
- CSS3中新增的内容
(整理中······) 一.选择器 新增的伪类 1.p:first-of-type 选择属于其父元素的首个 <p> 元素的每个 <p> 元素. 2.p:last-of-ty ...
- eclipse - tomcat 远程调试
步骤:前提是tomcat上应用是eclipse打包部署上去的,代码一致. 1,在机器A上部署应用remote-debug之前,需要为机器A上的tomcat配置调试端口.在${tomcat}/bin下加 ...
- hdu1238--Substrings
暴力求解 题意:求一个公共子串的最大长度,反转的公共子串存在也算. 求解思路:先找出最短的字符串进行暴力枚举.每截取一个子串后,求出它的反转字符串,然后检验这两个子字符串是否存在输入的字符串组中,每个 ...
- QF——UI之UIImageView及UIView的形变属性transform
UIImageView: 专门用来放置图片的视图.它里面放置的图片是[UIImage imageNamed: (NSString) imgName]生成的,注意千万别只写成图片NSString类型的名 ...
- Docker容器的网络连接
Docker容器的网络连接 Docker容器的网络连接 我们用ifconfig命令来查看网络设备 我们可以看到上面有个叫docker0的网络设备,docker守护进程就是通过docker0为docke ...
- hadoop笔记之Hive入门(什么是Hive)
Hive入门(一) Hive入门(一) 什么是Hive? Hive是个数据仓库,数据仓库就是数据库,但又与一般意义上的数据库有点区别 实际上,Hive是构建在hadoop HDFS上的一个数据仓库. ...
- 使用jQuery出现the function undefined
出现function undefined往往是相关的JS文件没有导入导致,在相关文件都导入的情况下,使用jQuery提供的方法还会出现function undefined错误,或许就是jQuery对象 ...