[随记]-我安装 arch linux 的记录
一、下载安装包
archlinux-x86_64.iso
下载传送门:Arch Linux
BitTorrent Download是磁链和种子下载,往下拉,找到HTTP Direct Downloads, 选择China,选择适合自己的国内镜像进行下载Vmware
下载传传送门:VMware Workstation Player
个人免费,兼容性上,个人觉得比
VirtualBox优秀一些
二、安装虚拟机并创建虚拟机实例
大家选的虚拟机不太一样,这里不再具体说明,需要注意的是,在 Windows 宿主机上,如果不是 Hyper-V 系列虚拟机,一定要完全关闭 Hyper-V,VT-x (Intel虚拟技术)或者(AMD-v)(AMD虚拟技术)才能使用,虚拟机实例才能正常启动
三、安装 Arch Linux 到虚拟机实例
3.1 装载安装镜像
打开虚拟机设置,把下载好的 archlinux-x86_64.iso 装载到虚拟机实例里,并运行,开机就是 Arch 的 Live 系统 的安装界面
3.2 检查网络
Arch 的安装过程依赖网络进行软件包的下载,执行命令:
ping www.baidu.com
如果得到百度的回应证明网络没有问题,不通的情况极少,我在安装的过程中从来没有遇见过网络不通的问题
3.3 时间&时区设置
更新时间
timedatectl set-ntp true
查看时间状态:
timedatectl status
如果时区不对,执行以下命令
timedatectl set-timezone "Asia/Shanghai"
3.4 硬盘分区
3.4.1 设备扫描
使用 fsdisk扫描可用的硬盘,忽略以 rom 、loop 、airoot 结尾的设备,通常,设备为 /dev/sda
fdisk -l
3.4.2 分区格式选择
使用 fdisk 对扫描出来的设备进行分区之前,要先看一下系统的引导方式,以便选择对应的分区格式
| 引导方式 | 分区格式 |
|---|---|
| UEFI | GPT |
| BIOS | MBR |
查询引导方式
ls /sys/firmware/efi/efivars
如果命令结果显示了目录且没有报告错误,则系统以 UEFI 模式引导,此时选择 GPT 分区格式。
如果目录不存在,则非 UEFI 引导模式,此时选择 MBR 分区格式
我这里选择分区格式为 MBR
3.4.3 分区及其大小、对应挂载目录
| 目录 | 大小 | 分区编号 | 说明 | 分区 |
|---|---|---|---|---|
| /boot | 200M | 1 | 存储内核及在引导过程中使用文件 | /dev/sda1 |
| swap | 512M | 2 | 内存交换区 | /dev/sda2 |
| /var | 8G | 3 | 系统运行后渐渐占用硬盘容量的目录,如pacman缓存,容量不够可以清理 | /dev/sda3 |
| / | 剩余容量 | 4 | 根目录 | /dev/sda4 |
3.4.4 使用 fdisk 进行分区
执行
fdisk /dev/sda,对扫描到的硬盘进行分区输入
n创建一个新分区输入
p、1、回车、+200M分别进行主分区、分区编号 1、分区大小 200M 的设定,对应上章中的表格第一行 /boot 目录 对应的分区重复步骤 2 、3 ,分别进行 swap 、/var 、/ 所需进行分区
因为分区 2 对应的是内存交换区,所以这里在分区完毕后,要修改一下分区 2 的文件类型为 swap,执行如下命令即可
输入
t,输入2选择分区2输入
82,可以输入L查询所有的文件类型
最后输入 w 保存退出即可
3.4.5 格式化分区
分区分完之后,必须格式化,才能挂载使用
普通分区执行如下命令进行格式化:
mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/sda3
mkfs.ext4 /dev/sda4
交换分区执行如下命令:
mkswap /dev/sda2
3.4.5 挂载分区
对应 3.3.3 章节,把准备好的分区进行挂载,这里需要注意的是,一定要先挂载根目录,
即先执行:mount /dev/sda4 /mnt
然后在执行剩余分区的挂载时候,先创建目录
mkdir /mnt/boot
mkdir /mnt/var
| 目录 | 挂载命令 |
|---|---|
| / | mount /dev/sda4 /mnt |
| /boot | mount /dev/sda1 /mnt/boot |
| /var | mount /dev/sda3 /mnt/var |
交换分区无须挂载,直接启用即可
swapon /dev/sda2
3.5 安装
3.5.1 添加国内源
使用 vim 编辑 /etc/pacman.d/mirrorlist 文件,在文件 Server = xxxxx 第一行添加
Server = http://mirrors.163.com/archlinux/$repo/os/$arch
3.5.2 安装内核、硬件固件和基础软件包
官方文档示例是这样子的:
pacstrap /mnt base linux linux-firmware
但是其中基础软件包(base包)并不完全,如缺失常用文本编辑器、网络管理程序,我们也可以这样安装
pacstrap /mnt base linux linux-firmware vim dhcpcd
这样在进入新系统时候,就有了网络管理软件和文本编辑器,方便我们联网安装其他软件和编辑配置
3.6 系统配置
3.6.1 Fstab
用以下命令生成 fstab 文件
genfstab -U /mnt >> /mnt/etc/fstab
执行完毕后,使用 cat 命令检查一下生产的文件中分区关系是否正确
cat /mnt/etc/fstab
3.6.2 Chroot
chroot 到新安装的系统,以便把下面的配置写入到新系统
arch-chroot /mnt
3.6.3 时区
设置时区为上海时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
然后生成 /etc/adjtime
hwclock --systohc
3.6.4 设置root密码
执行 passwd 命令,然后输入你要设置的密码即可,输入完毕回车,会有2次输入确认。
3.6.5 最重要的一步,安装引导程序
这里我们使用 grub 引导程序
安装 grub
pacman -S grub
安装引导,注意这里的 /dev/sda 是上面检测出来的硬盘名字,不是分区名字
grub-install --target=i386-pc /dev/sda
然后生成主配置文件 /boot/grub/grub.cfg
grub-mkconfig -o /boot/grub/grub.cfg
3.7 安装结束
输入 exit 或者 Ctrl+d 退出 chroot 环境。
可以使用 umount -R /mnt 手动卸载被挂载的分区,来检测是否所有分区都已准备完毕
最后,通过执行 reboot 重启系统
四、安装后的工作
网络管理软件只是安装完毕,新系统进入后无法联网,需要根据实际环境进行网络配置
创建非 root 用户
有需要安装图形用户界面的可以选择安装图形用户界面
本地化设置
4.1 网络配置
因为 arch 是安装在虚拟机里面,采用的是NAT方式连接,所以要在 Vmware 当中配置好网关和子网信息,Vmware workstation player 中默认如下:
| - | - |
|---|---|
| 子网段 | 192.168.8.0 |
| 子网掩码 | 255.255.255.0 |
| 子网范围 | 192.168.8.128 - 192.168.8.254 |
| 广播地址 | 192.168.8.255 |
| 网关(路由) | 192.168.8.2 |
在 arch 内部,我这里使用内置的 systemd-networkd 来配置网络,因为我要在arch 里面部署各种中间件服务,配置起来很麻烦,需要固定 ip,所以这里选择配置静态 ip
4.1.1 配置静态ip
systemd-networkd 通过 /etc/systemd/network/ 目录里的 network文件来配置网络,静态 ip 需要的配置文件如下:
[Match]
Name=你的网卡名字
[Network]
Address=192.168.8.128/24
Gateway=192.168.8.2
DNS=192.168.8.2
其中查询网卡名字的命令为:ip address 或 networkctl list ,结果中的 lo 是网卡回环名字,不是这里需要的网卡名字
配置文件确定好之后,执行如下操作:
启动 arch 网络管理程序:
systemctl start systemd-networkd.service使用
vim编辑上述网络配置文件重启网络管理程序,以使配置文件生效
systemctl restart systemd-netrowkd.service
然后 ping www.baidu.com 地址,确定网络、连接正常,最后把网络管理程序加入系统自启动即可:systemctl enable systemd-netrowkd.service
4.2 账户管理
不管是开发环境,还是测试环境 ,更甚至生产环境,永远不要把 root 权限下放给业务方
这个没什么好说的,都是血泪史,有过一定研发规模的经历的开发、运维,基本都明白这个道理,记好这句话,将来你会感激它的。
4.2.1 创建分组
账户管理,要分门别类,比如中间件归到运维方,业务应用归到开发方,那我就可以划分两个组,分别叫 dev 和 op ,这里因为就我一个人在维护应用和中间件,加上这么做,与特权用户分离的目标已经完成,所以我这里新增一个 dev 分组即可
groupadd dev
然后查询我们的分组是否创建成功:
cat /etc/group
输出:
dev:x:1000:
在最后一行,会看到我们创建的 dev 分组和其分组编号,到这里就创建完毕了
4.2.2 创建用户
分组有了,接下来我们给某个业务线的开发人员创建一个用户,方便他在开发环境部署、调试自己的应用
添加用户:
useradd -m -g dev yx
创建用户密码:
passwd yx
然后根据要求,输入两遍要设置的密码即可,最后我们用 cat /etc/passwd 查询我们创建的用户及其分组是否正确,这里的分组编号是 1000,和上面是对的上的
yx:x:1000:1000::/home/yx:/bin/bash
这里的格式为:account:password:UID:GID:GECOS:directory:shell
其中 password 为 x 代表密码存储在 /etc/shadow 文件里
也可以直接使用 id 命令查询:
id yx
输出一目了然:
uid=1000(yx) gid=1000(dev) groups=1000(dev)
4.2.3 收尾
这时候账户、分组都有了,再根据公司业务部署情况,给这个开发人员创建他的工作目录,并把目录相应权限下放给他的账号或分组即可
[随记]-我安装 arch linux 的记录的更多相关文章
- 在VMWare上安装Arch Linux
1.为什么选择Arch Linux Arch Linux 是通用 x86-64 GNU/Linux 发行版.Arch采用滚动升级模式,尽全力提供最新的稳定版软件.初始安装的Arch只是一个基本系统,随 ...
- 在 VirtualBox 虚拟机中安装 Arch Linux 系统指南
How to install Arch Linux on VirtualBox 在 VirtualBox 虚拟机中安装 Arch Linux 系统指南 本文导航 1.Arch Linux 软件仓库2. ...
- 小米Air安装Arch Linux之图形界面配置(Gnome 和 sway)持续更新中……
0. 前言 上一篇文章简单讲述了在小米Air上安装Arch Linux的经验,但是安装完后基本系统后,还需要额外的配置才能进到日常使用.下文简单列举一些步骤. 1. 参考网站 主要还是参考ARCH W ...
- 小米Air 13.3 安装Arch Linux
0. 前言 最近新买了一台小米Air 13.3,除了但键盘手感外都比较满意.我比较喜欢折腾Linux,但又不想放弃原有的Windows 10 Home,于是在原有的windows 10基础上再安装了A ...
- Vmware Workstation 15 Pro安装Arch Linux并配置Docker
主机配置: CPU:Intel Core i7-7700HQ 2.8GHz 2.8GHz 内存:16GB 操作系统:Windows 10 Home 64bit 双显卡:Intel HD Graphic ...
- 怎样安装Arch Linux以及Deepin桌面环境
一.概述 Arch Linux 是一个轻量级的Linux发行版本,实际上,Arch Linux提供给用户很多选择,用户可以自定义自己的安装过程,不x像其他很多的Linux发行版本,安装过程甚至是一个只 ...
- VMware 安装Arch Linux记录
首先说明一下我的环境. 1.VMware Workstation 10.0.1 build-1379776 2.archlinux-2014.02.01-dual.iso 首先建立虚拟机,其他的不提了 ...
- VirtualBox 安装 Arch Linux 并配置桌面环境
最近无聊,就找来 Arch Linux 来玩一玩,去 archlinux wiki上看了一下教程.以下是操作过程. 1. 下载镜像,下载地址; 2. 启动 Archlinux 并选择 Boot Arc ...
- 安装Arch Linux
参考自:https://wiki.archlinux.org/index.php/Main_Page_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87) 用fdisk建立分区 ...
- 安装Arch Linux(桌面环境)
安装xorg-server # pacman -S xorg-server xorg-server-utils xorg-xinit 安装显卡驱动 如果不知道是什么显卡,就使用以下命令查看 # lsp ...
随机推荐
- [BZOJ3451] Normal 题解
这题分三步:葺网(期望).淀粉质(点分治).蓉翅(容斥),再佐以芬芳团(FFT),一道巨难无比的 luogu 黑题就诞生了. 期望 先考虑在淀粉树上,\(i\) 点在 \(j\) 点的子树里的概率.实 ...
- [POJ3237] 树的维护 题解
一眼树链剖分或 \(LCT\),由于在学后者所以就写了. 取反操作相当于把 \(min,max\) 取反后交换,所以要维护 \(min,max,val\). 时间复杂度 \(O(m\log n)\). ...
- [JXOI2017] 加法 题解
最小值最大,考虑二分答案,问题转为判断最小值是否能 \(\ge x\). 假如 \(a_i\ge x\),那我们肯定不管:假如 \(a_i<x\),那最好能让选择的区间 \(r\) 值更大,用优 ...
- Docker - 在docker中部署Nginx
1.docker search 查找ngix 2.docker pull下载镜像 3.查看镜像列表 4.docker run启动容器 5.测试nginx容器是否启动成功 1.docker search ...
- VMware虚拟机上安装CentOS8详细教程
1.准备工作 1.1.需要准备好已安装完成的VMware虚拟机,如果您的电脑未安装VMware虚拟机,请参考以下连接:https://www.cnblogs.com/x1234567890/p/148 ...
- ppt 实用技巧总结
全是图片且颜色单一 解决方案:在图片上添加图形,加图标 效果图 2.文本功能10个 解决方案:添加背景图片+文本+图标 效果图 只有文本 没有过多内容怎么办
- HTTP Runner 运行提示执行后提示找不到有效的测试用例怎么解决?
确保yaml文件编写正确 2.yaml文件名称test_xxx.yaml test开头 3.更改httprunner 版本号 pip install httprunner==1.4.2
- hexo 本地启动项目 hexo-browsersync 不工作原因总结
问题 1 : hexo-server 开启 compress 压缩后 hexo-browsersync 插件热更新完全无效,没办法自动刷新 此问题表现在 hexo 任何版本 问题原因: hexo-se ...
- Git工作流介绍
前言 工作流其实不是一个初级主题,背后的本质问题其实是有效的项目流程管理和高效的开发协同约定,不仅是Git或SVN等SCM工具的使用. 集中式工作流 如果你的开发团队成员已经很熟悉Subversion ...
- nginx + lua脚本
Nginx配合Lua 案例 今天实现一个非常简单的例子. 云服务器上部署的了一个很通用的应用程序(它没有保护策略),其端口是a,但是我想使用他,就要通过公网ip:端口去访问它.暴露在外面很不安全. 那 ...