一.刻录slackwareloong镜像
1.下载slackwareloong系统镜像
# 基于实际情况下载最新DVD或网络mini安装镜像,这里以现在最新的20230701为例
wget -c https://mirrors.wsyu.edu.cn/slackwareloong/iso/slackware64-current-loong64-20230701-DVD.iso
2.刻录 slackwareloong 系统U盘启动盘
dd if=slackware64-current-loong64-20230701-DVD.iso of=/dev/实际设备 bs=8M
二.从安装介质中启动
从安装介质启动意味着将刻录好的slackwareloong系统启动U盘插到机器上,然后选择U盘启动。你可能需要进入 UEFI BIOS 然后选择从光驱启动。一些厂商允许你在启动界面按特殊的按键进入启动选项的选择(例如 `F2`)。因为不同的厂商这个特殊的按键是不一样的,所以在这里没有办法统一说明,但是方法都是一样的。
Welcome to the Slackware Linux installation disk! (version 15.1)
###### IMPORTANT! READ THE INFORMATION BELOW CAREFULLY. ######
- You will need one or more partitions of type 'Linux' prepared. It is also
recommended that you create a swap partition (type 'Linux swap') prior
to installation. For more information, run 'setup' and read the help file.
- If you're having problems that you think might be related to low memory, you
can try activating a swap partition before you run setup. After making a
swap partition (type 82) with cfdisk or fdisk, activate it like this:
mkswap /dev/<partition> ; swapon /dev/<partition>
- Once you have prepared the disk partitions for Linux, type 'setup' to begin
the installation process.
- If you do not have a color monitor, type: TERM=vt100
before you start 'setup'.
You may now login as 'root'.
slackware login: root
和直接引导你到专用的安装程序的其他 Linux 发行版本不同,Slackware 提供给你一个载入到你的电脑内存中的小体积的 Linux 版本。这个小体积的版本被用来手动的运行所有的安装程序,或者被用来当作急救盘,修复引导失败的损坏的操作系统。现在你可以以 root 的的身份登录(无需密码),然后设置你的硬盘。你可以设置软 RAID 或者 LVM 甚至是加密的 root 分区,不过这些话题超出了这本手册的范围。我推荐你阅读 `README_RAID.txt` 、 `README_LVM.txt` 和 `README_CRYPT.txt` 文档来进行这些高级设置。大部分用户无需做什么直接进行分区即可。
三.分区
分区
和其他大多数的 Linux 发行版本不同,Slackware 没有一个专门的图形化分区工具,而是使用传统的 Linux 分区工具。传统情况下,分区是用 `fdisk` 或者 `cfdisk` 进行的,这两个都是命令行的工具。大多数人们倾向于使用 `cfdisk`,因为它是基于菜单的而且同样工作的很好。除此以外,Slackware 还包含 `sfdisk` 和 `gdisk` 命令行工具。 `gdisk` 被用于 GUID 的分区表。在这本书中,我们主要讲 `fdisk`,其他的工具用法相似。你可以在网上或是手册中找到其他工具的使用方法。
为了对硬盘进行分区,你首先要先知道如何识别它。在 Linux 中,所有的硬件都被识别成设备文件。这些文件位于 `/dev` 目录中。今天几乎所有的硬盘都被内核识别为 SCSI 硬盘,同时它们被分配为诸如 `/dev/sda` 的设备文件(曾经有一段时间每个硬盘类型都有它自己独有的识别,像是 `/dev/hda` 表示第一块 IDE 盘。几年后,内核的 SCSI 子系统演变成了通用的驱动接入系统被用于所有的硬盘和光驱而不论它们是如何接入你的计算机的。如果你对此感到困惑,想象一下如果你有一个接入了 SCSI 硬盘,SATA 光驱和 USB 的系统,所有的都是独特的子系统识别身份。而现在的系统不仅干净而且工作得更好)
如果你不知道你的硬盘被分配了那个设备文件,fdisk 可以帮助你。
root@slackware:/# fdisk -l
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: aigo SSD S500 12
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
这里你可以看到我的系统有一块位于 `/dev/sda` 的 119.24 GB 硬盘。你可以看到一些额外的信息。 `-l` 参数用来显示硬盘和分区信息,但是不会作出修改,为了进行分区需要告诉 fdisk 要对哪块硬盘进行操作。
root@slackware:/# fdisk /dev/sda
Welcome to fdisk (util-linux 2.38.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help):
现在我们告诉 `fdisk` 我们希望分区。输入 `m` 来获取帮助。
Command (m for help): m
Help:
DOS (MBR)
a toggle a bootable flag
b edit nested BSD disklabel
c toggle the dos compatibility flag
Generic
d delete a partition
F list free unpartitioned space
l list known partition types
n add a new partition
p print the partition table
t change a partition type
v verify the partition table
i print information about a partition
Misc
m print this menu
u change display/entry units
x extra functionality (experts only)
Script
I load disk layout from sfdisk script file
O dump disk layout to sfdisk script file
Save & Exit
w write table to disk and exit
q quit without saving changes
Create a new label
g create a new empty GPT partition table
G create a new empty SGI (IRIX) partition table
o create a new empty DOS partition table
s create a new empty Sun partition table
在最小情况下,你需要一个 `/` 分区、 `/boot` 分区、 `/boot/efi` 分区、以及一个 swap 分区。你可能也像单独分出 `/home` 分区用来存放用户文件(这对于之后升级和安装不同的 Linux 操作系统而要保持用户文件很容易)。首先创建 GPT 分区输入 `g`,然后创建一个新的分区可以输入 `n` 。
Command (m for help): g
Created a new GPT disklabel (GUID: B88F50AB-2DF8-6A49-BF74-DD28B2BE0E2E).
Command (m for help): n
Partition number (1-128, default 1):
First sector (2048-250069646, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-250069646, default 250068991): +100M
Created a new partition 1 of type 'Linux filesystem' and of size 100 MiB.
Command (m for help): n
Partition number (2-128, default 2):
First sector (206848-250069646, default 206848):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (206848-250069646, default 250068991): +200M
Created a new partition 2 of type 'Linux filesystem' and of size 200 MiB.
Command (m for help): n
Partition number (3-128, default 3):
First sector (616448-250069646, default 616448):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (616448-250069646, default 250068991): +8G
Created a new partition 3 of type 'Linux filesystem' and of size 8 GiB.
Command (m for help): n
Partition number (4-128, default 4):
First sector (17393664-250069646, default 17393664):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (17393664-250069646, default 250068991): +40G
Created a new partition 4 of type 'Linux filesystem' and of size 40 GiB.
这里我们创建了四个分区,分别为 100M、200M、8G、40G,可以输入 `p` 来查看。
Command (m for help): p
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: aigo SSD S500 12
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B88F50AB-2DF8-6A49-BF74-DD28B2BE0E2E
Device Start End Sectors Size Type
/dev/sda1 2048 206847 204800 100M Linux filesystem
/dev/sda2 206848 616447 409600 200M Linux filesystem
/dev/sda3 616448 17393663 16777216 8G Linux filesystem
/dev/sda4 17393664 101279743 83886080 40G Linux filesystem
这四个分区类型都是 Linux 文件系统。我们需要改变 `/dev/sda1` 为 `EFI System`(id 为 1),改变 `/dev/sda3` 为 `Linux swap`(id 为 19)。
Command (m for help): t
Partition number (1-4, default 4): 1
Partition type or alias (type L to list all): 1
Changed type of partition 'Linux filesystem' to 'EFI System'.
Command (m for help): t
Partition number (1-4, default 4): 3
Partition type or alias (type L to list all): 19
Changed type of partition 'Linux filesystem' to 'Linux swap'.
Command (m for help): p
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: aigo SSD S500 12
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B88F50AB-2DF8-6A49-BF74-DD28B2BE0E2E
Device Start End Sectors Size Type
/dev/sda1 2048 206847 204800 100M EFI System
/dev/sda2 206848 616447 409600 200M Linux filesystem
/dev/sda3 616448 17393663 16777216 8G Linux swap
/dev/sda4 17393664 101279743 83886080 40G Linux filesystem
swap 分区是一个被 Linxu 内核用于虚拟内存的特殊的分区。如果 RAM 不够使用就会将一部分的内容移到 swap 分区中,以此来避免崩溃。swap 分区的大小取决于你自己。对于应该分配多大很多人都有争论,但是一个好的建议是分配内存大小的两倍。分配更多的空间没有任何损害。如果你要使用挂起功能,你应该至少分配和你的 RAM 大小相同的 swap 分区大小。
现在我们可以将修改写入,不过我要再分一个分区给 `/home` 。
Command (m for help): n
Partition number (5-128, default 5):
First sector (101279744-250069646, default 101279744):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (101279744-250069646, default 250068991): +30G
Created a new partition 5 of type 'Linux filesystem' and of size 30 GiB.
现在我们可以将修改写入。
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
root@slackware:/#
现在我们已经完成了分区,可以进入安装了。
四.安装
创建分区之后现在是时候安装 Slackware 了。安装程序会处理格式化的分区、安装包,运行基本的配置脚本。输入 setup
并按回车键进入。
1.Help
如果你从来没有安装过 Slackware,你可以从 Help 菜单中了解到基本的 Slackware 安装大概。这里大部分的信息都是指导安装的,看上去很直观。如果你之前没有使用过基于 curses 的程序你会觉得很有帮助。
2.Keymap
在我们更进一步之前,Slackware 给你选择键盘映射的机会。如果你使用的是标准的英式键盘,你可以跳过这一步,但是如果你使用其他的键盘你可以在这里选择正确的键盘映射。这可以确保你按下的键位是你所希望输入的键。
3.Addswap
如果你创建了一个 swap 分区,这一步允许你在进行与内存有关的活动(比如说安装软件包)之前启用它。swap 空间是必要的虚拟内存。这是一个硬盘分区(或者一个文件,尽管 Slackware 安装器并不支持 swap 文件),当你的内存用尽时会移出一部分内容到这个分区中。这个交换分区允许你使用比你计算机实际有的物理内存更多的内存空间。这一步也会将 swap 分区添加到 `/etc/fstab` 中,这样在启动系统时就可以获得了。
4.Target
我们的下一步是选择根 root 分区以及其他我们需要 Slackware 使用的分区。在这期间,会有文件系统的选择并且是否用其来格式化分区的选择。如果你安装的是一个新的分区则必须格式化它。如果你以及有一个有数据的分区,并且你像保留数据,则不要格式化。例如大部分用户有一个分开的 `/home` 分区用来保存用户数据,那么就不要格式化这个分区。这使它们可以安装新的 Slackware 版本而无需备份和恢复这些用户数据。
5.Select(可以直接默认OK)
Slackware 一个独特的特点是将软件包进行了分类。在一开始的时候,FTP 网络最多只能以慢速 300 波特 modem 的方式接入,所以 Slackware 将软件包进行分类,这样就可以适用于软盘,用户也已下载并且安装它们感兴趣的软件包。如今这个方式被保留了下来并且安装器允许你选择要安装哪些集合。这允许你跳过一些不需要的软件包,像是服务器上就不需要“X”和“KDE”。注意“A”是必须要安装的核心软件包组。
6.Install
最后我们来到了最关键的一环。在这一步中,Slackware 会询问你要以哪种方式安装这些选择的软件包。如果这是你第一次安装,推荐选择“full”。
“menu”和“expert”选项允许你选择软件包来安装,这用来给那些对系统熟悉的用户进行选择。这两个方法允许这样的用户快速地对之前选择的集合中的软件包进行删减来构建一个最小化安装的系统。如果你并不知道你在做什么(有时候甚至你知道)你可能会删除一些关键的软件包而导致系统崩溃。
“newbie”对新手来说很有用,不过会花费很长时间。这个方法会显示你之前选择的集合中的所有软件包,并且一个个地询问你是否安装。这个方法的好处是可以暂停并且给你一个软件包的简介。对于新手来说,这个简介很有用,而对于大多数用户来说却很费时和乏味。
“custom”和“tagpath”只用于那些对 Slackware 有技术和专门知识的人。这两个选项允许用于从自定义的 Tagfiles 中安装软件包。Tagfiles 很少被用到。我们在这本书中不会讨论。
7.Configure (在配置阶段,不清楚的都可以先直接默认回车)
一旦所有的软件包都安装完就快接近结束了。在这一步,Slackware 会让你对新的操作系统进行配置。大多数都是可选的,不过大多数用户都需要在这里设置某些东西。取决于你安装的软件包,你可能看到的配置选项和这里不同,我们会包含一些重要的讲。
LoongArch Slackware 是使用 GRUB2 ,未使用 LILO,所以在 `INSTALL ELILO` 里选择 `skip Do not install ELILO`
译者注:LILO 只是可选的引导程序,Slackware 在“A”(基本系统)软件包组中提供了 GRUB2。
下面会让你配置并激活控制台鼠标用于图形化桌面。通过激活控制台鼠标可以方便地在 Slackware 的终端进行复制和粘贴操作。大部分用户都从前三个选项中进行选择。
下面是配置网络。如果你不想配置网络可以跳过,否则就需要给计算机提供一个主机名。如果你不清楚在做什么可以先看 slackbook_cn_loongarch64第十四章。
接下来会让你输入主机名、域名。主机名和域名被用来在使用了内部 DNS 服务的网络中定位计算机或者配置 `/etc/hosts` 文件。默认主机名为“darkstar”。
有三种方法可以配置 IP 地址:分配一个静态的 IP、DHCP 或者配置环回连接。最简单的是使用 DHCP。除非你安装 Slackwar 是作为网络服务器,这样你可能需要配置静态 IP。如果选择配置静态 IP,会让你输入 IP 地址、子网掩码、网关 IP 地址。最后是确认屏幕。
网络配置结束后会进行启动服务的配置。如果你不确定可以使用默认配置,之后可以通过 pkgtool 修改。
之后就是设置时间和时区。
如果你之前选择安装“X”集合,可能会提示你选择一个默认的窗口管理器或者桌面环境。你在这里选择的会应用于系统上的所有用户,除非某个用于运行 `xwmconfig` 来选择一个不同的。如果你看到的选项和下面的图片不同不要惊慌。 `xwmconfig` 只提供你安装的。
最后的配置是设置 root 密码。root 用户是 Linux 中的超级用户。
最后步骤结束后就可以退出 Slackware 安装器并且重启了。移除安装盘,如果你所有安装步骤都正确则会正常启动 Slackware。当你重启并进入 Slackware 系统后,你首先要做的就是新建一个用户。默认情况下,安装结束后只有 root 用户,如果使用 root 用户操作系统会有危险。
最简单的创建用户的方法就是先以 root 用户身份登录,然后输入 `adduser` 命令,详情见 slackbook_cn_loongarch64的管理用户组 章节。
至此系统就安装好了,选择最下面的EXIT --> reboot 即可重启,选择硬盘启动就可以进入slackwareloong系统了。