MoinMoin Logo
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Navigation

  • Start
  • Sitemap
Revision 40 as of 2026-10-24 19:07:01
  • Slackware
  • VagrantSlack3215Box

Contents

  1. VagrantSlack3215Box
    1. Get ISO and install
    2. Test installation and install extra packages
    3. Install guest additions
    4. vagrant sudoers
    5. UseDNS in SSH
    6. SSH insecure pair in vagrant
    7. Disable audio in Virtualbox
    8. Set first network adapter as a NAT one
    9. Remove optical devices
    10. Create vagrant box
    11. Update Slackware

VagrantSlack3215Box

Steps to create a Slackware 15 (32-bit) vagrant box with LVM support.

Get ISO and install

   1 cd ~
   2 https://ftp.rnl.tecnico.ulisboa.pt/pub/slackware/slackware-iso/slackware-15.0-iso/slackware-15.0-install-dvd.iso
   3 sudo modprobe -r kvm_intel
   4 virtualbox &
   5 # start virtualbox 
   6 # new, name: slackware32-15
   7 # linux, other linux,  other linux(32-bit) , next 
   8 # 512 RAM, next 
   9 # Create a virtual hard disk now, create, VDI, next,  dynamically allocated, next,  64GB, create 
  10 # start VM 
  11 # choose slackware-15.0-install-dvd.iso
  12 # start 
  13 # boot: <enter>
  14 # 1, select keyboard 
  15 # qwerty/pt.map 
  16 # 1 <enter>
  17 # login as root 
  18 # create 2 partitions ...
  19 fdisk /dev/sda 
  20 # n p 1 default 2048 +512M
  21 # n p 2 default 1050624 +63G
  22 # select Linux LVM
  23 # t 2 L 8e 
  24 # p
  25 # w
  26 # LVM stuff 
  27 pvcreate /dev/sda2
  28 vgcreate sysvg /dev/sda2
  29 lvcreate -L 62G -n root sysvg
  30 pvscan 
  31 setup 
  32 # go to target # /dev/sysvg/root select 
  33 # quick format, ok ext 4
  34 # select other linux partition /dev/sda1 
  35 # quick format, ext4 
  36 # select mount point for /dev/sda1 mount point /boot 
  37 # fstab 
  38 # /dev/sysvg/root for the root directory (/) 
  39 # /dev/sda1 for /boot 
  40 # mount point /boot 
  41 # install from slackware cd or dvd 
  42 # scanning for cd or dvd: auto 
  43 # only select package A and AP
  44 # full 
  45 # configure the system, yes 
  46 # make usb flash boot: skip ok 
  47 # install lilo, simple 
  48 # configure lilo: lilo standard 
  49 # optional lilo:  <blank> 
  50 # select lilo destination MBR 
  51 # GPM configuration: no 
  52 # select services: crond messagebus syslog 
  53 # custom screen fonts no 
  54 # hw clock set to utc no 
  55 # timezone configuration: europe/lisbon 
  56 # nvi classic BSD utf8 
  57 # set root password: vagrant 
  58 # exit setup, go to shell 
  59 
  60 
  61 
  62 #chroot /mnt # it is probably the LVM volume !
  63 #$( /usr/share/mkinitrd/mkinitrd_command_generator.sh -r )
  64 #KERNEL_VER=$(ls /lib/modules | head -n 1)
  65 #echo $KERNEL_VER
  66 # get file system
  67 #mkinitrd -c -k $KERNEL_VER -f ext4 -r /dev/sysvg/root -m dm-#mod:ata_piix:ahci:libata:sd_mod -L
  68 #
  69 # /boot/initrd.gz 
  70 #cat /etc/lilo.conf | grep -v "#"
  71 #
  72 #nano /etc/lilo.conf
  73 #append=" "
  74 #boot = /dev/sda
  75 #compact 
  76 #
  77 #prompt
  78 #timeout = 50
  79 #change-rules
  80 #  reset
  81 #vga = normal
  82 #image = /boot/vmlinuz-generic
  83 #  label = LinuxTest
  84 #  initrd = /boot/initrd.gz
  85 #  read-only
  86 # 
  87 #lilo
  88 #exit 
  89 
  90 vgscan --mknodes
  91 vgchange -ay
  92 mount /dev/sysvg/root /mnt
  93 mount /dev/sda1 /mnt/boot
  94 mount -o bind /dev /mnt/dev
  95 mount -o bind /proc /mnt/proc
  96 mount -o bind /sys /mnt/sys
  97 
  98 chroot /mnt /bin/bash
  99 # in chroot
 100 mount /dev/sr0 /mnt
 101 upgradepkg --reinstall /mnt/slackware/a/kernel-modules-5.15.19*.txz
 102 ls -l /lib/modules/5.15.19/kernel/fs/ext4/
 103 
 104 KERNEL_VER=$(ls /lib/modules | head -n 1)
 105 echo $KERNEL_VER
 106 mkinitrd -c -k $KERNEL_VER -f ext4 -r /dev/sysvg/root -m dm-mod:ext4 -L
 107 
 108 #Several modules added after mkinitrd
 109 #jdb2 mbcache ext4 dm-bufio dm-snapshot
 110 
 111 nano /etc/lilo.conf
 112 append=" "
 113 boot = /dev/sda
 114 compact 
 115 
 116 prompt
 117 timeout = 50
 118 change-rules
 119   reset
 120 vga = normal
 121 image = /boot/vmlinuz-generic
 122   label = LinuxTest
 123   initrd = /boot/initrd.gz
 124   read-only
 125 
 126 exit 
 127 
 128 lilo -r /mnt
 129 exit
 130 reboot 

Test installation and install extra packages

   1 # login root:vagrant 
   2 df -h # used 1.4G 
   3 # mount DVD slack iso virtualbox 
   4 mount /dev/sr0 /mnt/dvd 
   5 cd /mnt/dvd/slackware/
   6 installpkg k/kernel-source*txz 
   7 
   8 installpkg l/libunis*txz 
   9 installpkg l/gc-8*txz 
  10 installpkg l/ncurses-6*txz
  11 
  12 installpkg d/make*txz 
  13 installpkg d/gcc-11.2*txz 
  14 installpkg d/perl-5*txz 
  15 installpkg d/guile-3*txz 
  16 installpkg d/binutils*txz 
  17 
  18 installpkg ap/slackpkg-15*.txz 
  19 installpkg ap/sudo-*.txz
  20 
  21 installpkg n/network-scripts-15.0-noarch-18.txz
  22 installpkg n/net-tools-20181103_0eebece-x86_64-3.txz
  23 installpkg n/dhcp-4.4.2_P1-x86_64-1.txz
  24 installpkg n/iproute2*.txz
  25 installpkg n/libmnl-1*.txz
  26 installpkg n/dhcpcd-9*txz
  27 installpkg n/iputils-*.txz
  28 installpkg n/openssh-*.txz
  29 installpkg n/wget-1*.txz
  30 installpkg n/ca-certificates-2021*.txz
  31 installpkg n/openssl-1*.txz
  32 installpkg n/gnupg-1.4.23-x86_64-4.txz
  33 
  34 vi /etc/rc.d/rc.inet1.conf 
  35 USE_DHCP[0]="yes" 
  36 
  37 /etc/rc.d/rc.inet1  # run command, it should get an ip
  38 ping -c 3 www.google.com # should get replies
  39 
  40 cd / 
  41 umount /mnt/dvd  
  42 # remove in virtualbox the ISO for slack
  43 reboot 
  44 
  45 # login root:vagrant 
  46 ping -c 3 www.sapo.pt 

Install guest additions

   1 umount /mnt/dvd 
   2 # Menu "Devices" followed by "Insert guest additions cd image ". 
   3 mount /dev/sr0 /mnt/dvd
   4 cd /mnt/dvd 
   5 ./VBoxLinuxAdditions.run 
   6 # unmount cd image in Virtualbox
   7 reboot 
   8 # login and reboot again 
   9 

vagrant sudoers

login with root:vagrant

   1 adduser vagrant # with pwd vagrant 
   2 groupadd sudo 
   3 
   4 usermod -aG sudo vagrant 
   5 visudo # insert after root user line
   6 
   7 vagrant ALL=(ALL) NOPASSWD: ALL
   8 
   9 exit 
  10 login vagrant:vagrant 
  11 
  12 sudo bash # should not ask for password 
  13 exit 

UseDNS in SSH

   1 sudo bash 
   2 cd /etc/ssh 
   3 vi sshd_config 
   4 # disable line with "UseDNS" no 
   5 #UseDNS no
   6 /etc/rc.d/rc.sshd restart 

SSH insecure pair in vagrant

   1 # in /home/vagrant folder as vagrant user
   2 mkdir ~/.ssh 
   3 cd ~/.ssh 
   4 wget -k https://raw.githubusercontent.com/hashicorp/vagrant/main/keys/vagrant.pub
   5 mv vagrant.pub authorized_keys
   6 chmod 0600 authorized_keys 
   7 chmod 0700 /home/vagrant/.ssh 
   8 sudo /sbin/shutdown -h now 

Disable audio in Virtualbox

Virtualbox, vm settings, audio, disable

Set first network adapter as a NAT one

Virtualbox, settings vm, adapter 1, NAT

Remove optical devices

Virtualbox, settings, storage, remove mounted optical drives

Create vagrant box

   1 cd /tmp 
   2 vagrant package --base slackware32-15
   3 ls
   4 # package.box
   5 vagrant box add --name slack32-15-box /tmp/package.box
   6 vagrant init slack32-15-box
   7 vagrant up
   8 vagrant ssh
   9 df -h
  10 # /dev/sysvg/root   61G  3.7G   54G   7% /
  11 md5sum /vagrant/package.box
  12 xxxxx  /vagrant/package.box

Update Slackware

   1 vagrant ssh 
   2 sudo bash 
   3 
   4 /sbin/removepkg zsh xorriso xfsdump xfsprogs  vorbis-tools usbutils unarj neofetch mariadb lxc mpg123  floppy gpm   floppy dvd+rw-tools  alsa-utils cdparanoia cdrdao cdrtools cups cups-filters  joe jove jed  amp dash dosfstools enscript flac genpower  ghostscript ghostscript-fonts gphoto2 gutenprint hplip isapnptools itstool jfsutils ksh93 lhasa madplay   mc minicom moc most mt-st mtx normalize ntfs-3g   opus-tools pamixer pciutils pcmciautils qpdf radeontool   reiserfsprogs rpm rpm2tgz sc sc-im seejpg soma sox squashfs terminus vbetool   kernel-generic-smp kernel-modules-smp   nvme-cli  efibootmgr efivar acct at bc bpe diffstat diffutils dmidecode groff htop libx86  linuxdoc-tools lm_sensors lsof man-db man-pages powertop rzip screen sqlite sysstat  texinfo tmux usbmuxd  ghostscript-fonts  ghostscript-fonts-std  btrfs-progs  elilo  terminus-font  squashfs-tools  a2ps  dc3dd ddrescue dmapi   f2fs-tools inxi ispell   exfatprogs   kernel-huge   kernel-huge-smp   sdparm seejpeg sdparm undervolt  lsscsi elvis vim  hdparm  kernel-source
   5 
   6 cd /var/log/packages
   7 grep -i -H "package location" *  | grep "\/ap\/"
   8 #nano-6.0-i586-1:PACKAGE LOCATION: /var/log/mount/slackware/ap/nano-6.0-i586-1.txz
   9 #vim-8.2.4256-i586-1:PACKAGE LOCATION: /var/log/mount/slackware/ap/vim-8.2.4256-i586-1.txz
  10 
  11 exit
  12 mv package.box package1.box 
  13 vagrant package # create package.box after /sbin/removepkg
  14 

export SLACK_MIRROR="https://ftp.rnl.tecnico.ulisboa.pt/pub/slackware/slackware-15.0"
cd /tmp 
wget -k $SLACK_MIRROR/slackware/n/openssl-1.1.1m-i586-1.txz
wget -k $SLACK_MIRROR/slackware/n/ca-certificates-20211216-noarch-1.txz
/sbin/installpkg ca-certificates-20211216-noarch-1.txz
/sbin/installpkg openssl-1.1.1m-i586-1.txz
/usr/sbin/update-ca-certificates --fresh

echo "$SLACK_MIRROR/" >>  /etc/slackpkg/mirrors

wget  $SLACK_MIRROR/slackware/n/gnupg-1.4.23-i586-4.txz
/sbin/installpkg gnupg-1.4.23-i586-4.txz
/usr/sbin/slackpkg update gpg 
/usr/sbin/slackpkg update
/usr/sbin/slackpkg upgrade-all
exit
exit 
vagrant reload 
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01