Update README.md
This commit is contained in:
87
README.md
87
README.md
@@ -1,24 +1,29 @@
|
|||||||
Microsoft Surface Pro 3 with Arch Linux and i3
|
Microsoft Surface Pro 3 with Arch Linux and i3
|
||||||
==============================================
|
==============================================
|
||||||
|
**!!! documentation unfinished !!!**
|
||||||
|
|
||||||
(Dual) Booting Arch Linux (and Windows) with UEFI and Secure Boot
|
(Dual) Booting Arch Linux (and Windows) with UEFI and Secure Boot
|
||||||
-----------------------------------------------------------------
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
- Download Arch Linux ISO [archlinux-yyyy.mm.dd-dual.iso] [arch] via HTTP Direct Downloads or BitTorrent Download
|
- Save all your files, will will format the whole file system.
|
||||||
|
- Download Arch Linux ISO [archlinux-yyyy.mm.dd-dual.iso] [arch] via HTTP Direct
|
||||||
|
Downloads (choose a Mirror) or BitTorrent Download
|
||||||
[arch]: https://www.archlinux.org/download/ "Arch Linux Downloads"
|
[arch]: https://www.archlinux.org/download/ "Arch Linux Downloads"
|
||||||
|
|
||||||
- Create UEFI bootable USB device with [Rufus] [rufus] with default settings
|
- Create UEFI bootable USB device (with [Rufus] [rufus] and default settings)
|
||||||
[rufus]: https://rufus.akeo.ie/ "Rufus"
|
[rufus]: https://rufus.akeo.ie/ "Rufus"
|
||||||
|
|
||||||
- Disable Secure Boot [\[Source: Windows\]] [win:sb]
|
- Disable Secure Boot [\[Source: Windows\]] [win:sb]
|
||||||
1. Shut down your Surface.
|
1. Shut down your Surface.
|
||||||
2. Press and hold the volume-up button on your Surface and at the same time, press and release the power button.
|
2. Press and hold the volume-up button on your Surface and at the same time,
|
||||||
|
press and release the power button.
|
||||||
3. When you see the Surface logo, release the volume-up button.
|
3. When you see the Surface logo, release the volume-up button.
|
||||||
The UEFI menu will display within a few seconds.
|
The UEFI menu will display within a few seconds.
|
||||||
4. Disable *Secure Boot Control*
|
4. Disable *Secure Boot Control*
|
||||||
[win:sb]: https://www.microsoft.com/surface/en-us/support/warranty-service-and-recovery/how-to-use-the-bios-uefi?os=windows-10&=undefined "Windows"
|
[win:sb]: https://www.microsoft.com/surface/en-us/support/warranty-service-and-recovery/how-to-use-the-bios-uefi?os=windows-10&=undefined "Windows"
|
||||||
|
|
||||||
- (Disable Windows Fast Boot — to switch between operating systems)
|
- (Optionally: Disable Windows Fast Boot — to switch between operating
|
||||||
|
systems)
|
||||||
|
|
||||||
|
|
||||||
# Installing the Linux distro
|
# Installing the Linux distro
|
||||||
@@ -28,7 +33,7 @@ Optionally set the keyboard layout (default is US)
|
|||||||
|
|
||||||
$ loadkeys de-latin1
|
$ loadkeys de-latin1
|
||||||
|
|
||||||
Increase font size
|
Set or in this case increase the font size
|
||||||
|
|
||||||
$ setfont latarcyrheb-sun32
|
$ setfont latarcyrheb-sun32
|
||||||
|
|
||||||
@@ -46,7 +51,8 @@ Update the system clock
|
|||||||
|
|
||||||
|
|
||||||
## Partitioning
|
## Partitioning
|
||||||
Note: Using `parted` with `mkpart` defines partitions via a *from* and a *to* argument.
|
Note: Using `parted` with `mkpart` defines partitions via a *from* and a *to*
|
||||||
|
argument.
|
||||||
|
|
||||||
$ lsblk # list devices /dev/sda?
|
$ lsblk # list devices /dev/sda?
|
||||||
$ parted /dev/sdx # could be /dev/sda
|
$ parted /dev/sdx # could be /dev/sda
|
||||||
@@ -58,7 +64,10 @@ Note: Using `parted` with `mkpart` defines partitions via a *from* and a *to* ar
|
|||||||
(parted) mkpart primary ntfs 40% 60% # Shared partition
|
(parted) mkpart primary ntfs 40% 60% # Shared partition
|
||||||
(parted) quit
|
(parted) quit
|
||||||
|
|
||||||
That last entry is for a shared NTFS filesystem that both operating systems (Linux and Windows) can use, e. g. for a cloud service like Dropbox, email, downloads, etc. The Windows section is left unallocated, it will be formatted by the windows installer.
|
That last entry is for a shared NTFS filesystem that both operating systems
|
||||||
|
(Linux and Windows) can use, e. g. for a cloud service like Dropbox, email,
|
||||||
|
downloads, etc. The Windows section is left unallocated, it will be formatted by
|
||||||
|
the windows installer.
|
||||||
|
|
||||||
|
|
||||||
## Formatting
|
## Formatting
|
||||||
@@ -69,9 +78,71 @@ That last entry is for a shared NTFS filesystem that both operating systems (Lin
|
|||||||
$ mkfs.ext4 /dev/sdx3 # Linux root
|
$ mkfs.ext4 /dev/sdx3 # Linux root
|
||||||
$ mkfs.ntfs -f /dev/sdx4
|
$ mkfs.ntfs -f /dev/sdx4
|
||||||
|
|
||||||
|
|
||||||
## Mount
|
## Mount
|
||||||
Mount the root partition on `/mnt` and for the boot partition first create directory and then mount it also.
|
Mount the root partition on `/mnt` and for the boot partition first create
|
||||||
|
directory and then mount it also.
|
||||||
|
|
||||||
$ mount /dev/sdx3 /mnt
|
$ mount /dev/sdx3 /mnt
|
||||||
$ mkdir -p /mnt/boot
|
$ mkdir -p /mnt/boot
|
||||||
$ /dev/sbx1 /mnt/boot
|
$ /dev/sbx1 /mnt/boot
|
||||||
|
|
||||||
|
|
||||||
|
## Install the base packages and configure the system
|
||||||
|
Edit `/etc/pacman.d/mirrorlist` and select a download mirror (uncommenting the
|
||||||
|
specific line). [\[see also Arch Linux Wiki: Mirrors\]] [arch:mirrors]
|
||||||
|
[arch:mirrors]: https://wiki.archlinux.org/index.php/Mirrors "Arch Linux Mirrors"
|
||||||
|
|
||||||
|
Install the base packages or more
|
||||||
|
|
||||||
|
$ pacstrap /mnt base
|
||||||
|
# or
|
||||||
|
$ pacstrap -i /mnt base base-devel btrfs-progs
|
||||||
|
|
||||||
|
Generate an `fstab` file, so the filesystem knows how to mount the disk
|
||||||
|
partitions. [\[see also Arch Linux Wiki: fstab\]] [arch:fstab]
|
||||||
|
[arch:fstab]: https://wiki.archlinux.org/index.php/Fstab "Arch Linux fstab"
|
||||||
|
|
||||||
|
$ genfstab -U /mnt >> /mnt/etc/fstab
|
||||||
|
|
||||||
|
Change root into the new system
|
||||||
|
|
||||||
|
$ arch-chroot /mnt /bin/bash # bash shell instead of the default sh
|
||||||
|
|
||||||
|
For localizations uncomment `en_US.UTF-8 UTF-8` and other needed localizations
|
||||||
|
in `/etc/locale.gen`, e. g. `de_DE.UTF-8 UTF-8`. Finally generate the locale
|
||||||
|
files:
|
||||||
|
|
||||||
|
$ locale-gen
|
||||||
|
|
||||||
|
Set the LANG variable in `/etc/locale.conf` accordingly
|
||||||
|
|
||||||
|
LANG=en_US.UTF-8
|
||||||
|
|
||||||
|
Optionally set the keyboard layout and set the font in `/etc/vconsole.conf`
|
||||||
|
|
||||||
|
KEYMAP=de-latin1
|
||||||
|
FONT=latarcyrheb-sun32
|
||||||
|
|
||||||
|
Set the time zone, e. g. for Germany as Europe/Berlin.
|
||||||
|
Three ways possible: [\[see also Arch Linux Wiki: Time zone\]] [arch:tz]
|
||||||
|
[arch:tz]: https://wiki.archlinux.org/index.php/Fstab "Arch Linux Time zone"
|
||||||
|
|
||||||
|
- interactively with `tzselect` (e. g. 7) Europe, 16) Germany, 2) Germany, 1) yes),
|
||||||
|
- via `timedatectl`
|
||||||
|
|
||||||
|
$ timedatectl # check the current zone
|
||||||
|
$ timedatectl list-timezones # list available zones
|
||||||
|
$ timedatectl set-timezone Europe/Berlin # change your time zone
|
||||||
|
|
||||||
|
- or create the symlink manually
|
||||||
|
|
||||||
|
$ ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
|
||||||
|
|
||||||
|
Set the Hardware Clock from the System Clock, and update the timestamps in
|
||||||
|
`/etc/adjtime` via:
|
||||||
|
|
||||||
|
hwclock --systohc --utc
|
||||||
|
|
||||||
|
|
||||||
|
...
|
||||||
|
|||||||
Reference in New Issue
Block a user