mirror of
https://github.com/luisgbm/lfs-scripts.git
synced 2026-03-09 20:31:09 +00:00
Final script to configure the system
This commit is contained in:
parent
90ce5fad1c
commit
0c3f31c1ff
1 changed files with 235 additions and 0 deletions
235
lfs-final.sh
Normal file
235
lfs-final.sh
Normal file
|
|
@ -0,0 +1,235 @@
|
|||
#!/bin/bash
|
||||
# LFS 10.0 Build Script
|
||||
# Final steps to configure the system
|
||||
# by Luís Mendes :)
|
||||
# 17/09/2020
|
||||
|
||||
package_name=""
|
||||
package_ext=""
|
||||
|
||||
begin() {
|
||||
package_name=$1
|
||||
package_ext=$2
|
||||
|
||||
echo "[lfs-scripts] Starting build of $package_name at $(date)"
|
||||
|
||||
tar xf $package_name.$package_ext
|
||||
cd $package_name
|
||||
}
|
||||
|
||||
finish() {
|
||||
echo "[lfs-scripts] Finishing build of $package_name at $(date)"
|
||||
|
||||
cd /sources
|
||||
rm -rf $package_name
|
||||
}
|
||||
|
||||
cd /sources
|
||||
|
||||
# 9.2. LFS-Bootscripts-20200818
|
||||
begin lfs-bootscripts-20200818 tar.xz
|
||||
make install
|
||||
finish
|
||||
|
||||
# 9.4.1.2. Creating Custom Udev Rules
|
||||
bash /lib/udev/init-net-rules.sh
|
||||
|
||||
# 9.5.1. Creating Network Interface Configuration Files
|
||||
cd /etc/sysconfig/
|
||||
cat > ifconfig.enp0s3 << "EOF"
|
||||
ONBOOT=yes
|
||||
IFACE=enp0s3
|
||||
SERVICE=ipv4-static
|
||||
IP=192.168.1.2
|
||||
GATEWAY=192.168.1.1
|
||||
PREFIX=24
|
||||
BROADCAST=192.168.1.255
|
||||
EOF
|
||||
|
||||
# 9.5.2. Creating the /etc/resolv.conf File
|
||||
cat > /etc/resolv.conf << "EOF"
|
||||
# Begin /etc/resolv.conf
|
||||
|
||||
nameserver 8.8.8.8
|
||||
nameserver 8.8.4.4
|
||||
|
||||
# End /etc/resolv.conf
|
||||
EOF
|
||||
|
||||
# 9.5.3. Configuring the system hostname
|
||||
echo "lfs" > /etc/hostname
|
||||
|
||||
# 9.5.4. Customizing the /etc/hosts File
|
||||
cat > /etc/hosts << "EOF"
|
||||
# Begin /etc/hosts
|
||||
|
||||
127.0.0.1 localhost.localdomain localhost
|
||||
::1 localhost ip6-localhost ip6-loopback
|
||||
ff02::1 ip6-allnodes
|
||||
ff02::2 ip6-allrouters
|
||||
|
||||
# End /etc/hosts
|
||||
EOF
|
||||
|
||||
# 9.6.2. Configuring Sysvinit
|
||||
cat > /etc/inittab << "EOF"
|
||||
# Begin /etc/inittab
|
||||
|
||||
id:3:initdefault:
|
||||
|
||||
si::sysinit:/etc/rc.d/init.d/rc S
|
||||
|
||||
l0:0:wait:/etc/rc.d/init.d/rc 0
|
||||
l1:S1:wait:/etc/rc.d/init.d/rc 1
|
||||
l2:2:wait:/etc/rc.d/init.d/rc 2
|
||||
l3:3:wait:/etc/rc.d/init.d/rc 3
|
||||
l4:4:wait:/etc/rc.d/init.d/rc 4
|
||||
l5:5:wait:/etc/rc.d/init.d/rc 5
|
||||
l6:6:wait:/etc/rc.d/init.d/rc 6
|
||||
|
||||
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
|
||||
|
||||
su:S016:once:/sbin/sulogin
|
||||
|
||||
1:2345:respawn:/sbin/agetty --noclear tty1 9600
|
||||
2:2345:respawn:/sbin/agetty tty2 9600
|
||||
3:2345:respawn:/sbin/agetty tty3 9600
|
||||
4:2345:respawn:/sbin/agetty tty4 9600
|
||||
5:2345:respawn:/sbin/agetty tty5 9600
|
||||
6:2345:respawn:/sbin/agetty tty6 9600
|
||||
|
||||
# End /etc/inittab
|
||||
EOF
|
||||
|
||||
# 9.6.4. Configuring the System Clock
|
||||
cat > /etc/sysconfig/clock << "EOF"
|
||||
# Begin /etc/sysconfig/clock
|
||||
|
||||
UTC=1
|
||||
|
||||
# Set this to any options you might need to give to hwclock,
|
||||
# such as machine hardware clock type for Alphas.
|
||||
CLOCKPARAMS=
|
||||
|
||||
# End /etc/sysconfig/clock
|
||||
EOF
|
||||
|
||||
# 9.7. The Bash Shell Startup Files
|
||||
cat > /etc/profile << "EOF"
|
||||
# Begin /etc/profile
|
||||
|
||||
export LANG=en_US.UTF-8
|
||||
|
||||
# End /etc/profile
|
||||
EOF
|
||||
|
||||
# 9.8. Creating the /etc/inputrc File
|
||||
cat > /etc/inputrc << "EOF"
|
||||
# Begin /etc/inputrc
|
||||
# Modified by Chris Lynn <roryo@roryo.dynup.net>
|
||||
|
||||
# Allow the command prompt to wrap to the next line
|
||||
set horizontal-scroll-mode Off
|
||||
|
||||
# Enable 8bit input
|
||||
set meta-flag On
|
||||
set input-meta On
|
||||
|
||||
# Turns off 8th bit stripping
|
||||
set convert-meta Off
|
||||
|
||||
# Keep the 8th bit for display
|
||||
set output-meta On
|
||||
|
||||
# none, visible or audible
|
||||
set bell-style none
|
||||
|
||||
# All of the following map the escape sequence of the value
|
||||
# contained in the 1st argument to the readline specific functions
|
||||
"\eOd": backward-word
|
||||
"\eOc": forward-word
|
||||
|
||||
# for linux console
|
||||
"\e[1~": beginning-of-line
|
||||
"\e[4~": end-of-line
|
||||
"\e[5~": beginning-of-history
|
||||
"\e[6~": end-of-history
|
||||
"\e[3~": delete-char
|
||||
"\e[2~": quoted-insert
|
||||
|
||||
# for xterm
|
||||
"\eOH": beginning-of-line
|
||||
"\eOF": end-of-line
|
||||
|
||||
# for Konsole
|
||||
"\e[H": beginning-of-line
|
||||
"\e[F": end-of-line
|
||||
|
||||
# End /etc/inputrc
|
||||
EOF
|
||||
|
||||
# 9.9. Creating the /etc/shells File
|
||||
cat > /etc/shells << "EOF"
|
||||
# Begin /etc/shells
|
||||
|
||||
/bin/sh
|
||||
/bin/bash
|
||||
|
||||
# End /etc/shells
|
||||
EOF
|
||||
|
||||
# 10.2. Creating the /etc/fstab File
|
||||
cat > /etc/fstab << "EOF"
|
||||
# Begin /etc/fstab
|
||||
|
||||
# file system mount-point type options dump fsck
|
||||
# order
|
||||
|
||||
/dev/sda1 / ext4 defaults 1 1
|
||||
proc /proc proc nosuid,noexec,nodev 0 0
|
||||
sysfs /sys sysfs nosuid,noexec,nodev 0 0
|
||||
devpts /dev/pts devpts gid=5,mode=620 0 0
|
||||
tmpfs /run tmpfs defaults 0 0
|
||||
devtmpfs /dev devtmpfs mode=0755,nosuid 0 0
|
||||
|
||||
# End /etc/fstab
|
||||
EOF
|
||||
|
||||
# 10.3. Linux-5.8.3
|
||||
begin linux 5.8.3.tar.xz
|
||||
make mrproper
|
||||
make defconfig
|
||||
make
|
||||
make modules_install
|
||||
cp -iv arch/x86/boot/bzImage /boot/vmlinuz-5.8.3-lfs-10.0
|
||||
cp -iv System.map /boot/System.map-5.8.3
|
||||
cp -iv .config /boot/config-5.8.3
|
||||
install -d /usr/share/doc/linux-5.8.3
|
||||
cp -r Documentation/* /usr/share/doc/linux-5.8.3
|
||||
finish
|
||||
|
||||
# 10.3.2. Configuring Linux Module Load Order
|
||||
install -v -m755 -d /etc/modprobe.d
|
||||
cat > /etc/modprobe.d/usb.conf << "EOF"
|
||||
# Begin /etc/modprobe.d/usb.conf
|
||||
|
||||
install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe -i ohci_hcd ; true
|
||||
install uhci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe -i uhci_hcd ; true
|
||||
|
||||
# End /etc/modprobe.d/usb.conf
|
||||
EOF
|
||||
|
||||
# 10.4. Using GRUB to Set Up the Boot Process
|
||||
grub-install /dev/sdb
|
||||
cat > /boot/grub/grub.cfg << "EOF"
|
||||
# Begin /boot/grub/grub.cfg
|
||||
set default=0
|
||||
set timeout=5
|
||||
|
||||
insmod ext2
|
||||
set root=(hd0,1)
|
||||
|
||||
menuentry "GNU/Linux, Linux 5.8.3-lfs-10.0" {
|
||||
linux /boot/vmlinuz-5.8.3-lfs-10.0 root=/dev/sda1 ro
|
||||
}
|
||||
EOF
|
||||
Loading…
Add table
Add a link
Reference in a new issue