在阿里云服务器上面安装archLinux

前言:之前在阿里云服务器上面安装的centOS7停止了维护,软件都停留在2021年的版本,着实不方便,虽然是服务器,我也没有挂载什么云服务载阿里云上,不追求什么稳定性。于是奔着archLinux丰富的软件,计划着将阿里云服务器上面的操作系统换成archLinux。

  • 首先在阿里云上面自带的系统更换尝试更换系统,发现并没有ArchLinux可供选择(也对,ArchLinux的设计对象根本就不是服务器)于是就尝试从arch提供的live系统进行ArchLinux的安装。
  • 网上查了查资料,阿里云支持VNC服务,可以使用VNC远程桌面进行连接,像在本地电脑一样安装系统。

1. 首先通过ssh以root权限登录系统,下载ArchLinux的镜像文件。下载地址:ArchLinux(软件源:清华大学)

#切换到根目录
cd /
wget https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/latest/archlinux-x86_64.iso
#镜像文件
#修改镜像名字
mv ./archlinux-x86_64.iso ./archlinux.iso

2. 然后修改grub启动文件。

由于阿里云服务器引导方式通常是BIOS,所以定位到/boot/grub2/grub.cfg文件当中添加引导项。


#编辑grub.cfg文件,将下面内容塞到第一个menuentry前面,让grub自动引导Arch Live。
menuentry 'ArchISO' --class iso {set isofile=/archlinux.isoloopback loop0 $isofile#archisolabel设置ArchISO文件所在的文件系统标签。#img_dev指出ArchISO 文件所在的设备#img_loop是ArchISO文件在img_dev里的绝对位置# 下面这两个文件名字需要自己到镜像文件当中查看,Arch Linux 不同版本的名字可能不太一样。linux (loop0)/arch/boot/x86_64/vmlinuz archisolabel=ARCH img_dev=/dev/vda1 img_loop=$isofileinitrd (loop0)/arch/boot/x86_64/archiso.img
}

3. 然后就是通过VNC进行连接。

  • 在云服务器的实例当中选择 远程连接 然后选择 VNC连接 第一次进入设置密码,然后就进入到CentO是系统当中,重启,就可以进入Arch live当中。
  • 首先记录下 网络配置,输入
ip addr

然后保存输出的数据。

重启

restart

4. 开始系统的安装。

  • 首先查看硬盘状态。
lsblk

发现系统盘被挂载在
/run/archiso/img_dev里面,我是以只读方式挂载,于是修改挂载方式为读写。

mount -o remount,rw /run/archiso/img_dev

其实这个时候可以使用ssh进行连接,毕竟直接拷贝脚本比手敲要好。

5. 然后将原来 Linux根目录下的文件除了archiso.iso文件保留,其他全部删除。

cd /mnt
ls | grep -v archiso.iso | xargs rm -rf

6. 这里安装过程与arch官网的安装过程大同小异,可以直接使用用官网的安装教程。这里简单选用一些。arch安装教程

安装
选择镜像
文件 /etc/pacman.d/mirrorlist 定义了软件包会从哪个镜像下载。在 LiveCD 启动的系统上,在连接到互联网后,reflector 会通过选择 20 个最新同步的 HTTPS 镜像并按下载速率对其进行排序来更新镜像列表。在列表中越前的镜像在下载软件包时有越高的优先权。您或许想检查一下文件,看看是否满意。如果不满意,可以相应的修改 /etc/pacman.d/mirrorlist 文件,并将地理位置最近的镜像源挪到文件的头部,同时也应该考虑一些其他标准。这个文件接下来还会被 pacstrap 拷贝到新系统里,所以请确保设置正确。安装必需的软件包
使用 pacstrap(8) 脚本,安装 base 软件包和 Linux 内核以及常规硬件的固件:# pacstrap /mnt base linux linux-firmware
提示:
可以将 linux 替换为内核页面中介绍的其他内核软件包。
在虚拟机或容器中安装时,可以不安装固件软件包。
base 软件包并没有包含 Live 环境中的全部程序。因此要获得一个功能齐全的基本系统,可能需要安装其他软件包。特别要考虑安装:管理所用文件系统的用户工具(比如 XFS 和 Btrfs 对应的管理工具);
访问RAID或LVM分区的工具;
未包含在 linux-firmware 中的额外固件(如用于声卡的sof-firmware);
联网所需要的程序 (如网络管理器或DHCP客户端);
文本编辑器(如:nano、vim 等);
访问 man 和 info 页面中文档的工具:man-db,man-pages 和 texinfo。
要安装其他软件包或软件包组(比如 base-devel),请将它们的名字追加到上文的 pacstrap 命令后 (用空格分隔),或者也可以在 Chroot 进新系统后使用 pacman 手动安装软件包或软件包组。packages.x86_64 中可以看到不同软件包或软件包组间的差异。配置系统
Fstab
用以下命令生成 fstab 文件 (用 -U 或 -L 选项设置 UUID 或卷标):# genfstab -U /mnt >> /mnt/etc/fstab
强烈建议在执行完以上命令后,检查一下生成的 /mnt/etc/fstab 文件是否正确。Chroot
chroot 到新安装的系统:# arch-chroot /mnt
时区
要设置时区:# ln -sf /usr/share/zoneinfo/Region(地区名)/City(城市名) /etc/localtime
提示: 以要设置为上海时区为例,请运行 # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
然后运行 hwclock(8) 以生成 /etc/adjtime:# hwclock --systohc
这个命令假定已设置硬件时间为 UTC 时间。详细信息请查看 System time#Time standard。本地化
程序和库如果需要本地化文本,都依赖区域设置,后者明确规定了地域、货币、时区日期的格式、字符排列方式和其他本地化标准。需在这两个文件设置:locale.gen 与 locale.conf。编辑 /etc/locale.gen,然后取消掉 en_US.UTF-8 UTF-8 和其他需要的 区域设置 前的注释(#)。接着执行 locale-gen 以生成 locale 信息:# locale-gen
然后创建 locale.conf(5) 文件,并 编辑设定 LANG 变量,比如:/etc/locale.conf
LANG=en_US.UTF-8
另外对于中文用户:提示:
用户可以设置自己的 locale,详情请参阅 在用户会话中覆盖系统区域设置 或 设置当前区域;
将系统 locale 设置为 en_US.UTF-8 ,系统的 log 就会用英文显示,这样更容易判断和处理问题;
也可以设置为 en_GB.UTF-8 或 en_SG.UTF-8,附带以下优点:
进入桌面环境后以 24 小时制显示时间;
LibreOffice 等办公软件的纸张尺寸会默认为 A4 而非 Letter(US);
可尽量避免不必要且可能造成处理麻烦的英制单位。
设置的 LANG 变量需与 locale 设置一致,否则会出现以下错误:
Cannot set LC_CTYPE to default locale: No such file or directory
警告: 不推荐在此设置任何中文 locale,会导致 tty 乱码。
如果需要修改 #控制台键盘布局,可编辑 vconsole.conf(5) 使其长期生效,例如:/etc/vconsole.conf
KEYMAP=de-latin1
网络配置
创建 hostname 文件:/etc/hostname
myhostname(主机名)
请接着完成新安装的环境的网络配置,配置过程中可能需要安装合适的网络管理软件。Initramfs
通常不需要自己创建新的 initramfs,因为在执行 pacstrap 时已经安装 linux,这时已经运行过 mkinitcpio 了。对于 LVM、 system encryption 或 RAID 等分区配置,请修改 mkinitcpio.conf 并用以下命令重新创建一个 Initramfs:# mkinitcpio -P
Root 密码
设置 Root 密码:# passwd
安装引导程序
需要安装 Linux 引导加载程序,才能在安装后启动系统,可以使用的的引导程序已在 启动加载器 中列出,请选择一个安装并配置它,GRUB (简体中文) 是最常见的选择。如果有 Intel 或 AMD 的 CPU,请另外启用 微码 更新。警告: 这是安装的最后一步也是至关重要的一步,请按上述指引正确安装好引导加载程序后再重新启动。否则重启后将无法正常进入系统。
重启
输入 exit 或按 Ctrl+d 退出 chroot 环境。可选用 umount -R /mnt 手动卸载被挂载的分区:这有助于发现任何「繁忙」的分区,并通过 fuser(1) 查找原因。最后,通过执行 reboot 重启系统,systemd 将自动卸载仍然挂载的任何分区,然后使用 root 帐户登录到新系统。

7. 配置sshd服务和远程桌面

编辑/etc/ssh/sshd_config 后 # sshd -t 无误再启动sshd.service

首先修改端口,然后将所有HostKey开头的行取消注释。

添加 AllowUsers 登录账户
PermitRootLogin no
PubkeyAuthentication yes
AuthorizedKeysFile /home/你的登录账户/.ssh/authorized_keys
PasswordAuthentication no
AuthenticationMethods publickey

PrintMotd yes # 可以在/etc/motd 中写入欢迎界面的字符,比如:

_(\_/)
,((((^`\
(((( (6 \
,((((( , \
,,,_ ,((((( /"._ ,`,
((((\\ ,... ,(((( / `-.-*
))) ;* `"*"*""(((( (
((( / ((( \
)) | |
(( | . * |
)) \ _ * `t ,.*)
( | y;- -,-""*"-.\ \/
) / ./ ) / `\ \
|./ ( ( / /*
|| \\ //*|
|| \\ _//*||
|| )) |_/ ||
\_\ |_/ ||
`*" \_\
`*"

在客户端sshkeygen生成公钥后拷贝到~/.ssh/authorized_keys。

在云服务器管理控制台为实例配置安全组规则,允许指定IP通过自定义TCP访问上述端口。

然后就完成的ssh的配置,可以通过ssh进行使用。

在阿里云上安装arch Linux相关推荐

  1. 在阿里云上安装MySQL的简单教程

    在阿里云上安装MySQL的简单教程 1,安装docker docker? 因为系统差异和软件之间的证书版权问题,要直接在CentOS或ubuntu系统上安装MySQL或其他软件会非常繁琐,所以我们有了 ...

  2. 阿里云上安装MQTT服务器

    在阿里云上安装好服务器后,进入linux控制台界面安装EMQX 执行wget https://www.emqx.com/zh/downloads/broker/5.0.3/emqx-5.0.3-ubu ...

  3. 在阿里云上安装mysql后,无法远程登陆

    在阿里云上安装mysql后,无法远程登陆 阿里云centos下安装mysql远程登陆不上 在阿里云上安装mysql后,无法远程登陆,报错: ERROR 1130: Host '192.168.1.3' ...

  4. 阿里云上安装FreeIPA(ipa-server ipa-client)

    基础配置 环境:Centos7.6 1core 2GB hostname:ipa.haohaozhu.hadoop 配置hosts 172.17.239.208 ipa.haohaozhu.hadoo ...

  5. 在阿里云下安装SQL Server

    今天应公司的要求,需要在阿里云上安装sql server 在本地使用,由于自己原来没有涉及过这样的安装所以走了很多的弯路.现在将我的安装过程与大家分享,希望能够帮到想要学习这个方面的人.以下是我用Ce ...

  6. Oracle APEX 系列文章2:在阿里云上打造属于你自己的APEX完整开发环境 (准备工作)... 1

    本文是钢哥的Oracle APEX系列文章中的其中一篇,完整 Oracle APEX 系列文章如下: Oracle APEX 系列文章1:Oracle APEX, 让你秒变全栈开发的黑科技 Oracl ...

  7. arch linux安装_如何从头开始安装Arch Linux

    arch linux安装 by Andrea Giammarchi 由Andrea Giammarchi In this article, you'll learn how to install Ar ...

  8. 攻略-联想 Yoga 900 安装 Arch Linux 系统

    导读 注意:这篇文章比较长,有一万多字,而且还有很多非常有意思的链接,因此,你最好还是先给自己准备点喝的吧,然后再花时间来阅读. 在联想 Yoga 2 笔记本电脑上使用了 3 年多的 Arch Lin ...

  9. 阿里云centos8安装rabbitMq

    阿里云centos8安装rabbitMq //linux笔记 https://note.youdao.com/ynoteshare1/index.html?id=1b00505d90f75f183e8 ...

最新文章

  1. CountDownTimer的简单使用
  2. 本地文件与服务器传输,云服务器 与本地文件传输
  3. Eclipse启动时DDMS files not found: D:\Eclipse\adt-bundle-windows-x86_64-20131030\sdk\tool
  4. 函数指针及其定义和用法,C++函数指针详解(附用法代码和注意事项)
  5. 【飞秋】Asp.net MVC2 model验证 看似美好,实则让人失望。
  6. 神经网络识别车牌字符
  7. oracle select机制_ORACLE的工作机制(转载)
  8. IaaS基础架构云 —— 云网络
  9. 解决Iframe嵌入帆软BI系统后,Chrome升级后跨域出现登录界面,Cookie写入不成功。解决办法
  10. 我要彻底搞懂SSD网络结构(1)VGG部分
  11. 基于Krpano的全景导游系统设计与实现(含word文档)
  12. unity自动生成敌人_敌人的自动生成 - Unity脚本编程 — Project 2:慕课英雄 MOOC HERO(第三人称射击简易版) | Coursera...
  13. Python tkinter 设置主题
  14. c语言结构体应用例程:输入今天日期,输出明天日期
  15. 【杂记】数据存储架构
  16. CSS的背景——颜色,图片,背景图片位置,
  17. Linux Signal信号详解
  18. cadence 通孔焊盘_allegro通孔类焊盘的制作方法
  19. java代码读取excel文件_Java 读取excel 文件流代码实例
  20. 中国教育模式的颠覆者--兄弟会

热门文章

  1. sql查询判断手机号
  2. Ardunio 电子秤 重力传感器HX711笔记
  3. 安装操作系统前须知的理论知识
  4. java 联合体_联合体(union)的使用方法及其本质
  5. linux 监控微信通知,一个 Linux 下基于 Bash 的文件和数据库监控及备份工具,可发送微信报警通知...
  6. 【转】VC编译器选项
  7. WEIXIN day_07(8.24) 学子影院项目实践3
  8. 最新注册gmail邮箱收不到验证码解决方法
  9. Python之OpenGL笔记(33):透视投影画六角星
  10. BurpSuite调用JavaScript处理Payload,通过JS完全自定义处理逻辑