zoukankan      html  css  js  c++  java
  • Arch Linux 硬盘引导-联网安装

    Arch Linux 硬盘引导-联网安装

    ============
    https://www.archlinux.org/
    https://wiki.archlinux.org/
    https://wiki.archlinux.org/index.php/Installation_guide  <<官方安装指南(强烈推荐)
    https://wiki.archlinux.org/index.php/Main_page
    ============
    主要步骤

    完全的离线安装可参考如下:
    https://wiki.archlinux.org/index.php/Offline_installation

    完全的联网安装:
    https://www.archlinux.org/releng/netboot/

    说明:本文仅通过硬盘引导启动,还需要联网安装,与以上官方教程主要区别是跳过U盘制作的过程。
    当前电脑仅支持BIOS的MBR分区,所以这里不考虑UEFI的GPT分区。
    提前规划好分区,(/根分区,/home分区,/swap交换区,等)
    =>最近更新:20190512 

    01. 文件准备,下载并验证
    02. 添加启动项目(或者制作启动U盘)
    03. [重启]进入[rootfs] 挂载iso
    04. 退出[rootfs]进入iso的[root(zsh)] 磁盘管理
    05. 网络设置
    06. 安装 base,生成分区表
    07. 转换到已安装系统的root权限下[本机硬盘的root下]
    08. 安装网络必要组建
    09. 安装grub
    10. 基本设置
    11. 退出并[重启]

    ==== 基本系统安装后 ====
    12. 安装驱动,桌面环境及其他组建
    13. [重启]登录桌面
    14. 安装输入法,字体
    15. 桌面下安装其他
    16. 附1:桌面选择
    16. 附2:软件列表
    17. 附3:防火墙

    =======

    ==== 01. 文件准备,下载并验证
    https://www.archlinux.org/download/
    当前版本: 2019.03.01
    包含的内核: 4.20.13
    ISO尺寸: 602.0 MB
    PGP签名: https://www.archlinux.org/iso/2019.03.01/archlinux-2019.03.01-x86_64.iso.sig
    MD5: 8164667750c46cf297720b21145e1e27
    SHA1: e32acb5a7b7cfb2bdba10697cce48ab69e13c186

    $ ls
    archlinux-2019.03.01-x86_64.iso
    archlinux-2019.03.01-x86_64.iso.sig
    $
    $ md5sum archlinux-2019.03.01-x86_64.iso
    8164667750c46cf297720b21145e1e27 archlinux-2019.03.01-x86_64.iso
    $ sha1sum archlinux-2019.03.01-x86_64.iso
    e32acb5a7b7cfb2bdba10697cce48ab69e13c186 archlinux-2019.03.01-x86_64.iso
    $

    现有Arch Linux系统下验证
    $ pacman-key -v archlinux-2019.03.01-x86_64.iso.sig
    ==> Checking archlinux-2019.03.01-x86_64.iso.sig...
    gpg: assuming signed data in 'archlinux-2019.03.01-x86_64.iso'
    gpg: Signature made Fri 01 Mar 2019 11:57:55 PM CST
    gpg: using RSA key 4AA4767BBC9C4B1D18AE28B77F2D434B9741E8AC
    gpg: Note: trustdb not writable
    gpg: Good signature from "Pierre Schmitz <pierre@archlinux.de>" [full]
    $

    其他Linux系统下验证
    $ gpg --keyserver pgp.mit.edu --keyserver-options auto-key-retrieve --verify archlinux-2019.03.01-x86_64.iso.sig
    gpg: assuming signed data in 'archlinux-2019.03.01-x86_64.iso'
    gpg: Signature made Fri 01 Mar 2019 11:57:55 PM CST
    gpg: using RSA key 4AA4767BBC9C4B1D18AE28B77F2D434B9741E8AC
    gpg: requesting key 7F2D434B9741E8AC from hkp server pgp.mit.edu
    gpg: key 7F2D434B9741E8AC: 32 signatures not checked due to missing keys
    gpg: key 7F2D434B9741E8AC: public key "Pierre Schmitz <pierre@archlinux.de>" imported
    gpg: no ultimately trusted keys found
    gpg: Total number processed: 1
    gpg: imported: 1
    gpg: Good signature from "Pierre Schmitz <pierre@archlinux.de>" [unknown]
    gpg: WARNING: This key is not certified with a trusted signature!
    gpg: There is no indication that the signature belongs to the owner.
    Primary key fingerprint: 4AA4 767B BC9C 4B1D 18AE 28B7 7F2D 434B 9741 E8AC
    $

    (可选步骤1)镜像文件准备,这个步骤可以适当加快后续安装过程中,联网下载的速度。
    https://www.archlinux.org/mirrorlist/ 这里可以生成并下载最新的 pacman 镜像列表
    https://www.archlinux.org/mirrors/status/ 这里可以查看镜像状态 部分站点未同步
    https://wiki.archlinux.org/index.php/Mirrors 更多镜像内容
    参考以上编辑自己的镜像文件,锅内将china放在最前面. 注意:生成的文件里,去掉站点前面的#号。
    mirrorlist 文件,后续复制到 /etc/pacman.d/ 目录下

    (可选步骤2)安装菜单 archinstall.txt 文件,将主要步骤及命令写好,一遍安装过程中查看。
    注意,备注说明等要使用英文的,安装过程中命令行下无法显示中文。

    (可选步骤3)不习惯命令行分区的,且还要双系统环境,保留数据分区等,建议提前完成分区的步骤。

    • 使用其他有桌面的发行版iso启动后进行分区操作,比如Mint linux等.
    • 或者在windows下使用 DiskGenius 工具进行分区操作,http://www.diskgenius.cn/

    ==== 02. 添加启动项目(或者制作启动U盘) 

    title Install Arch3
    root (hd0,2)
    kernel /arch20190301/vmlinuz archisolabel=ARCH_201903
    initrd /arch20190301/archiso.img

    可参考:硬盘安装Linux 系统
    https://www.cnblogs.com/sztom/p/10292522.html

    ==== 03. [重启]进入[rootfs] 挂载iso
    启动过程提示找不到,得到一个 Shell [rootfs]状态,手动挂载iso
    通过df, lsblk, blkid, fdisk -l, mount等命令再次确认磁盘状态,
    我这里的状态是:要挂载的archlinux-2019.03.01-x86_64.iso文件在 sdb3分区的arch文件夹里
    添加2个目录,先挂载sdb3分区到目录/sb3下,再挂在iso镜像文件到/iso目录下.
    # mkdir /sb3
    # mkdir /iso
    # mount /dev/sdb3 /sb3
    # mount /sb3/arch/archlinux-2019.03.01-x86_64.iso
    # exit

    ==== 04. 退出[rootfs], 进入[iso的root(彩色的zsh环境) ],进行磁盘管理

    root@archiso~#

    # blkid
    /dev/sda6: TYPE="ext4" //用于根目录
    /dev/sda7: TYPE="ext4" //用于home目录
    /dev/sda9: TYPE="swap" //用于交换区

    # mkfs.ext4 /dev/sda6
    # mount /dev/sda6 /mnt
    # mkdir /mnt/home
    # mount /dev/sda7 /mnt/home
    # mkswap /dev/sda9
    # swapon /dev/sda9

    ==== 05. 网络设置
    若是有线DHCP网络直接自动获取ip,ping测试一下链接即可。
    dhcpcd 

    若是无线wifi网络
    # wifi-menu //选择wifi联网
    # ip link //查看本机的无线网卡名称
    # iw dev 无线网卡名称 link //查看链接状态
    # ping archlinux.org //测试网络

    更新系统时钟
    # timedatectl set-ntp true
    # timedatectl status //To check the service status

    ==== 06. 安装 base,生成分区表
    (可选步骤)检查镜像列表文件,适当调整,比如把china的站点放在最前面。
    步骤1若有准备,这里可以直接使用,复制过来即可。/etc/pacman.d/mirrorlist

    没有准备也可以直接vim编辑当前的文件(不熟悉vi命令,可以先cp备份一个副本再修改):

    1. vim /etc/pacman.d/mirrorlist
    2. /China  找到国内源(注意大小写)
    3. 2dd    剪切2行(yy是复制;dd是剪切)
    4. :1    返回第一行,方向键向下,将焦点移动到空行,(按i进入插入模式,可以多按几次回车,提前准备好空行。然后按esc返回普通模式)
    5. p    粘帖
    6. 重复2~5步骤,直到将所有能找到的China都移动到最前面。
    7. :wq    保存并退出(如果该乱了,可以:q! 不保存退出;然后重新修改)

    当然,不修改也可以,只要网络好就没问题。

    通过 pacstrap 安装基本系统
    # pacstrap /mnt base
    pacstrap -i /mnt base base-devel  //(-i 交互模式)
    https://git.archlinux.org/arch-install-scripts.git/tree/pacstrap.in
    Options:
    -C config Use an alternate config file for pacman
    -c Use the package cache on the host, rather than the target
    -G Avoid copying the host's pacman keyring to the target
    -i Prompt for package confirmation when needed (run interactively)
    -M Avoid copying the host's mirrorlist to the target
    -h Print this help message

    生成 fstab 配置
    # genfstab -U /mnt >> /mnt/etc/fstab

    ==== 07. 转换到已安装系统的root权限下[本机硬盘的root下]
    # arch-chroot /mnt

    [root@archiso /]# 

    已进入新装的系统命令行下,是默认的 /bin/bash
    # alias ls='ls --color' //增加列表颜色显示

    (可选步骤2)若准备了安装菜单,这时就可以使用 Alt + 方向键,切换到第二个tty,登录打开
    随时使用 Alt + 方向键查看说明,指导安装过程。

    ==== 08. 无线wifi安装网络必要组建
    # pacman -S dialog
    # pacman -S wpa_supplicant
    # pacman -S iw

    ==== 09. 安装grub
    # pacman -S grub
    # pacman -S os-prober
    # grub-install --target=i386-pc /dev/sda 
    # grub-mkconfig -o /boot/grub/grub.cfg

    ==== 10. 基本设置
    设置root 密码:
    #passwd
    创建用户,并设置密码
    # useradd -m -g users -s /bin/bash tom
    # passwd tom
    安装并配置顺手的 Sudo
    # pacman -S sudo
    /etc/sudoers
    root ALL=(ALL)ALL
    tom ALL=(ALL)ALL

    终端字体(可选)
    编辑 /etc/vconsole.conf:
    KEYMAP=us
    FONT=Lat2-Terminus16
    or
    FONT=

    配置时区及硬件时间
    # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    设置系统时间:

    $ date -s "03 23, 2019 12:23:04"
    或利用 ntp 自动校时:
    $ pacman -S ntp
    $ ntpdate time.nist.gov
    将系统时间写入硬件时钟:
    $ hwclock --systohc --utc
    注意:
    Linux 的硬件时钟使用 UTC,而 Windows 则使用本地时间。
    如果要和 Windows 进行双系统启动,可以将 Windows 设置为使用 UTC 硬件时钟,参见这里。
    同时关闭 Windows 上的自动校时功能,只用 Linux 上的 ntp。
    https://wiki.archlinux.org/index.php/System_time
    https://linux.cn/lfs/LFS-BOOK-7.7-systemd/chapter07/clock.html

    设置 hostname
    # echo tompc > /etc/hostname
    你还得修改/etc/hosts文件的内容

    # vim /etc/hosts
    127.0.0.1 localhost
    ::1 localhost
    127.0.1.1 myhostname.localdomain myhostname

    本土化
    修改 Locale,取消en_US.UTF-8 UTF-8和其他必要的语言前面的注释符号
    # vi /etc/locale.gen
    en_US.UTF-8 UTF-8
    zh_CN.GB18030 GB18030
    zh_CN.GBK GBK
    zh_CN.UTF-8 UTF-8
    zh_CN GB2312
    # locale-gen
    # cat /etc/locale.conf
    LANG="en_US.UTF-8"
    # echo LANG=en_US.UTF-8 > /etc/locale.conf
    # export LANG=en_US.UTF-8
    注意:不要在这里把系统全局设置成中文,因为终端无法显示中文,请单独将桌面环境设置为中文。

    引导加载程序 有关支持Linux的引导加载程序列表,请参阅Arch引导进程#Boot loader。
    Intel或AMD CPU,请启用微码更新。
    # pacman -S intel-ucode
    # pacman -S amd-ucode

    ==== 11. 退出并[重启]
    # exit
    # umount -R /mnt/home
    # umount -R /mnt
    # reboot


    ==== 基本系统安装后 ==== 
    请参阅系统管理指导和安装后教程的一般建议(如设置图形用户界面,声音或触摸板)。
    https://wiki.archlinux.org/index.php/General_recommendations
    有关可能感兴趣的应用程序列表,请参阅应用程序列表。
    https://wiki.archlinux.org/index.php/List_of_applications

    ==== 12. 安装驱动,桌面环境及其他组建
    这次重新登录,就可以使用普通用户登录了,比如前面新建的用户tom

    初次登录系统,无网络,
    $ sudo systemctl status netctl  //查看网络服务状态
    $ sudo systemctl start netctl  //启动网络服务
    $ sudo systemctl enable netctl  //开机启用网络服务

    有线网络自动获取ip地址:
    dhcpcd

    若是无线wifi网络
    # wifi-menu //选择wifi联网
    # ip link //查看本机的无线网卡名称
    # iw dev 无线网卡名称 link //查看链接状态
    # ping archlinux.org //测试网络

    驱动
    1.安装ALSA(声卡)
    $ sudo pacman -S alsa-utils
    2.安装显卡驱动
    当前本机是Intel核显,若使用的是其他显卡,请参考官方wiki,点击进入。
    $ sudo pacman -S mesa xf86-video-intel
    3.安装触摸板驱动
    $ sudo pacman -S xf86-input-synaptics

    不建议安装xorg包,大部分用不到的;只需要单独安装xorg-xinit, xorg-server即可。
    $ sudo pacman -S xorg-xinit xorg-server
    $ startx 启动测试

    桌面这里安装xfce
    $ sudo pacman -S xfce4
    $ startxfce4   启动桌面
    到此已经有桌面了,且所有操作可以在桌面上打开终端操作。

    测试声卡,没法调整音量,继续安装如下2个,在面板里手动添加pulseaudio即可。
    $ sudo pacman -S pulseaudio
    $ sudo pacman -S pavucontrol

    ==== 13. [重启]登录桌面
    已经安装了桌面,但重启后还是进入ctl命令行,要打开xfce桌面,要用命令startxfce4,
    继续安装桌面管理lightdm即可启动直接进入xfce桌面了。
    $ sudo pacman -S lightdm
    $ sudo pacman -S lightdm-gtk-greeter

    安装增加开机启动:
    $ sudo systemctl enable lightdm.service  

    更多的桌面常用组建(懒人包)
    $ sudo pacman -S xfce4-goodies

    ==== 14. 安装输入法,字体
    $ sudo pacman -S ibus
    $ sudo pacman -Ss '^ibus*'
    $ sudo pacman -S ibus-googlepinyin
    $ ibus-setup

    $HOME/.bashrc
    export GTK_IM_MODULE=ibus
    export XMODIFIERS=@im=ibus
    export QT_IM_MODULE=ibus
    ibus-daemon -x -d
    $ source ~/.bashrc

    字体
    $ sudo pacman -S noto-fonts-cjk
    $ sudo pacman -S adobe-source-han-sans-cn-fonts

    ==== 15. 桌面下安装其他
    办公软件
    $ sudo pacman -S libreoffice
    $ sudo pacman -S libreoffice-fresh-zh-cn
    3D制作软件
    $ sudo pacman -S blender

    更多软件
    $ sudo pacman -S ntfs-3g exfat-utils
    $ sudo pacman -S shadowsocks
    $ sudo pacman -S chromium
    $ sudo pacman -S firefox
    $ sudo pacman -S vlc
    $ sudo pacman -S qbittorrent
    $ sudo pacman -S amule
    xarchiver p7zip unrar unzip zip
    flameshot
    mate-system-monitor 
    htop atop archey3 gkrellm glances hardinfo hwinfo iftop iotop jnettop lshw nethogs nmon screenfetch sysstat smem 

    ==== 16. 附1:桌面的选择 

    +++ GNOME桌面 

    gnome 包含了基本的 GNOME桌面,gnome-extra 则包含 GNOME 应用、归档管理器、磁盘管理器、文本编辑器和其它的应用。
    $ sudo pacman -S gnome gnome-extra
    # pacman -S gnome-tweak-tool 安装gnome桌面优化工具
    # pacman -S alacarte 安装gnome桌面菜单编辑器
    常用包:pacman -S file-roller evolution gedit gnome-photos cheese
    $ pacman -S gnome-packagekit gnome-settings-daemon-updates
    pacman -S unrar unzip p7zip
    最后一步是在 Arch 上开启 GDM 显示管理器。
    $ sudo systemctl start gdm.service
    $ sudo systemctl enable gdm.service

    +++ KDE桌面  
    安装kde-plasma桌面环境
    # pacman -S plasma 基础包
    # pacman -S konsole 安装kde下的控制台终端
    # pacman -S dolphin 安装kde下的文件管理器
    # pacman -S kate 安装kde下的文字编辑器
    or
    # pacman -S plasma-desktop 最简安装(仅有桌面软件)
    or
    # pacman -S kde-applications 安装kde套件,包含了常用的系统工具
    # pacman -S sddm 登录管理器SDDM
    # systemctl enable sddm 启用 sddm显示管理器
    # pacman -S plasma-nm 安装 网络管理的前端工具(图形界面)

    +++ XFCE4桌面,通过LXDM启动
    LXDM是个桌面管理器,用来登录系统及启动XFCE桌面。
    # pacman -S lxdm
    # systemctl enable lxdm.service
    安装XFCE4
    # pacman -S xfce4
    经过以上步骤,可以通过下面的命令来启动XFCE4了:
    startxfce4

    +++ LXDE桌面 
    安装LXDM管理器和LXDE桌面:
    # pacman -S lxdm lxde
    设置lxdm开机启动:
    # systemctl enable lxdm

    ==== 17. 附2:软件列表 

    https://wiki.archlinux.org/index.php/List_of_applications

    https://wiki.archlinux.org/index.php/General_recommendations
    ==== 18. 附3:防火墙 

    https://wiki.archlinux.org/index.php/Category:Firewalls

    https://wiki.archlinux.org/index.php/Nftables

    https://firewalld.org/

    https://gufw.org/

    ======================================================
    ======================================================

    其他...
    安装os-prober这个包,它可以配合Grub检测已经存在的系统,自动设置启动选项。
    pacman -S os-prober
    上述步骤没有安装,这个基本就用1次,所以手动添加windows启动项也一样。

    网络管理主要有这几种
    netctl.service
    systemd-networkd.service
    NetworkManager.service
    启用/停用 systemctl enable/disable xxx

    配置网络命令
    # pacman -S wireless_tools wpa_actiond
    # wifi-menu wlan0
    # systemctl enable net-auto-wireless.service

    最新的flash插件需要到AUR上去下,这里提供下载地址,点击下载。
    下载完成后,解压,进入相关目录。
    makepkg
    pacman -U 生成的文件名,以.xz结尾

    以下参考,有包含UEFI模式的部分。
    https://linux.cn/article-9170-1.html
    https://www.viseator.com/2017/05/17/arch_install/
    https://www.jianshu.com/p/7c78dc4c53e5
    https://bbs.archlinuxcn.org/viewtopic.php?id=1037
    https://blog.csdn.net/r8l8q8/article/details/76516523
    https://blog.yoitsu.moe/arch-linux/installing_arch_linux_for_complete_newbies.html
    https://www.cnblogs.com/bluestorm/p/5929172.html
    http://blog.lucode.net/linux/archlinux-install-tutorial.html
    https://wiki.archlinux.org/index.php/Systemd-boot#Configuration
    https://blog.fooleap.org/hard-disk-installation-for-archlinux.html
    https://vsxen.github.io/2016/11/08/install-arch-with-win7/
    https://hyjk2000.github.io/2014/01/23/arch-linux-install-guide/
    ==================
    https://wiki.archlinux.org/index.php/List_of_applications/Security#Encryption,_signing,_steganography
    网络安全
    另见维基百科:数据包分析器的比较。
    https://en.wikipedia.org/wiki/Comparison_of_packet_analyzers
    =====================

    [root@archiso /]#

  • 相关阅读:
    linux定时器【转】
    Linux Timer定时器【转】
    Linux使用一个定时器实现设置任意数量定时器功能【转】
    Ubuntu 12.04将默认集成Landscape管理套件【转】
    【Linux系统编程应用】Linux音频编程基础(一)【转】
    CRT/LCD/VGA Information and Timing【转】
    记录自己对EventLoop和性能问题处理的一点心得【转】
    Linux下select&poll&epoll的实现原理(一)【转】
    MQTT--入门【转】
    RESTful 个人理解总结【转】
  • 原文地址:https://www.cnblogs.com/sztom/p/10587035.html
Copyright © 2011-2022 走看看