I recently built my first CentOS kickstart config on a CentOS 7 system; it runs well, but the OS and its tools are old enough that it's causing pain with the apps I want to run on top of said system, so I'm trying to port it to CentOS 8.
I've taken the anaconda-ks.cfg file created from a successful manual install (of both regular 8 and Stream), placed it on my DVD ISO, and wrapped things back up like I was doing with CentOS 7. I'm successfully beginning the installation, but running into "Error setting up base repository" - despite having not touched either the filesystem structure of the ISO, or the generated kickstart file that points at my repos.
Here is the relevant config:
#version=RHEL8 # Use graphical install graphical
repo --name="AppStream" --baseurl=file:///run/install/sources/mount-0000-cdrom/AppStream
%packages @^minimal-environment @development kexec-tools
%end
# Keyboard layouts keyboard --xlayouts='us' # System language lang en_US.UTF-8
# Network information network --hostname=localhost.localdomain
# Use CDROM installation media cdrom
# Run the Setup Agent on first boot firstboot --enable
ignoredisk --only-use=sda autopart # Partition clearing information clearpart --none --initlabel
# System timezone timezone America/New_York --isUtc
%addon com_redhat_kdump --enable --reserve-mb='auto'
%end
%anaconda pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty %end
When I switched over to a console to try to troubleshoot this, I noticed that /run/install/sources/mount-0000-cdrom/AppStream didn't exist (the "mount-0000-cdrom" directory is empty), but /run/install/repo/AppStream does, and appears to have all the right information within it. I've tried specifying that directory as the baseurl instead, and get no difference in behavior.
The only other file I've touched is isolinux/isolinux.cfg on the DVD, with the relevant line now being:
append initrd=initrd.img inst.ks=cdrom:/ks.cfg inst.stage2=hd:LABEL=CentOS-Stream-8-x86_64-dvd quiet
What am I doing wrong here? This seems like basic config, but obviously I've missed something...
On Tue, 19 Jan 2021 at 12:27, Alex Kirk akirk@corelight.com wrote:
I recently built my first CentOS kickstart config on a CentOS 7 system; it runs well, but the OS and its tools are old enough that it's causing pain with the apps I want to run on top of said system, so I'm trying to port it to CentOS 8.
I've taken the anaconda-ks.cfg file created from a successful manual install (of both regular 8 and Stream), placed it on my DVD ISO, and wrapped things back up like I was doing with CentOS 7. I'm successfully beginning the installation, but running into "Error setting up base repository" - despite having not touched either the filesystem structure of the ISO, or the generated kickstart file that points at my repos.
Here is the relevant config:
#version=RHEL8 # Use graphical install graphical
repo --name="AppStream" --baseurl=file:///run/install/sources/mount-0000-cdrom/AppStream
I think you need to have a repo for every repository used including the baseOS one.. like
repo --name="BaseOS" --baseurl=file:///run/install/sources/mount-0000-cdrom/BaseOS
Alex Kirk wrote:
I recently built my first CentOS kickstart config on a CentOS 7 system; it I've taken the anaconda-ks.cfg file created from a successful manual install (of both regular 8 and Stream), placed it on my DVD ISO, and wrapped things back up like I was doing with CentOS 7. I'm successfully beginning the installation, but running into "Error setting up base repository" - despite having not touched either the filesystem structure of the ISO, or the generated kickstart file that points at my repos.
I don't know if it's connected, but I had a problem (with a similar errors) when installing 8.3.2011 over httpd using a copy of the contents of the 8.3.2011 iso
My kickstart file contained:
url --url="http://distro/CentOS/8.3.2011" repo --name="AppStream" --baseurl=http://disto/CentOS/8.3.2011/AppStream
This was a copy of what I has done with 8.1.1911 - which worked OK
I couldn't get 8.3.2011 to install, until I hacked things so the kickstart contained:
url --url="http://distro/CentOS/8.3.2011/BaseOS" repo --name="AppStream" --baseurl=http://disto/CentOS/8.3.2011/AppStream
but I also had to put a symlink in the BaseOS subdir of:
images -> ../images
i.e. it worked with 8.1.1911 but not 8.3.2011 (I never tried 8.2.2004)
I don't know if this is a bug or I'm doing something wrong?
James Pearson
So adding on:
repo --name="BaseOS" --baseurl=file:///run/install/sources/mount-0000-cdrom/BaseOS
...didn't help at all. Neither did adding the symlink out of the BaseOS directory to the images subdirectory above it.
I did notice this time, however, that when I click into the "Installation Source" button of the UI where the erorr is, if I click on the repos being read from my Kickstart file, there's a small error at the bottom of the page that says "Repository name conflicts with internal repository name". That seems weird, since again I'm basing this on a successful manual install - why would that write a conflicting repo name to the config?
On Tue, Jan 19, 2021 at 12:52 PM James Pearson james-p@moving-picture.com wrote:
Alex Kirk wrote:
I recently built my first CentOS kickstart config on a CentOS 7 system;
it
I've taken the anaconda-ks.cfg file created from a successful manual install (of both regular 8 and Stream), placed it on my DVD ISO, and wrapped things back up like I was doing with CentOS 7. I'm successfully beginning the installation, but running into "Error setting up base repository" - despite having not touched either the filesystem structure
of
the ISO, or the generated kickstart file that points at my repos.
I don't know if it's connected, but I had a problem (with a similar errors) when installing 8.3.2011 over httpd using a copy of the contents of the 8.3.2011 iso
My kickstart file contained:
url --url="http://distro/CentOS/8.3.2011" repo --name="AppStream" --baseurl=http://disto/CentOS/8.3.2011/AppStream
This was a copy of what I has done with 8.1.1911 - which worked OK
I couldn't get 8.3.2011 to install, until I hacked things so the kickstart contained:
url --url="http://distro/CentOS/8.3.2011/BaseOS" repo --name="AppStream" --baseurl=http://disto/CentOS/8.3.2011/AppStream
but I also had to put a symlink in the BaseOS subdir of:
images -> ../images
i.e. it worked with 8.1.1911 but not 8.3.2011 (I never tried 8.2.2004)
I don't know if this is a bug or I'm doing something wrong?
James Pearson _______________________________________________ CentOS mailing list CentOS@centos.org https://lists.centos.org/mailman/listinfo/centos
On Tue, 19 Jan 2021 at 15:54, Alex Kirk akirk@corelight.com wrote:
So adding on:
repo --name="BaseOS" --baseurl=file:///run/install/sources/mount-0000-cdrom/BaseOS
...didn't help at all. Neither did adding the symlink out of the BaseOS directory to the images subdirectory above it.
I did notice this time, however, that when I click into the "Installation Source" button of the UI where the erorr is, if I click on the repos being read from my Kickstart file, there's a small error at the bottom of the page that says "Repository name conflicts with internal repository name". That seems weird, since again I'm basing this on a successful manual install - why would that write a conflicting repo name to the config?
so I think the error (or warning) is because according to the repo command you can't name repositories the same as ones already defined in anaconda. However somehow our working kickstarts have # Use network install url --url=http://10.0.0.1/repo/rhel/RHEL/8.2/x86_64/ repo --name=epel --baseurl=http://10.0.0.1/pub/epel/8/Everything/x86_64/ repo --name="BaseOS" --baseurl= http://10.0.0.1/repo/rhel/rhel8/x86_64/rhel-8-for-x86_64-baseos-rpms/ repo --name="AppStream" --baseurl= http://10.0.0.1/repo/rhel/rhel8/x86_64/rhel-8-for-x86_64-appstream-rpms/ repo --name="PowerTools" --baseurl= http://10.0.0.1/repo/rhel/rhel8/x86_64/codeready-builder-for-rhel-8-x86_64-r...
are you able to get to a console when this box is 'failing'? control-b 2 or something to move to a shell? if you can there might be a way to see if the cdrom is even mounted and in the directory listed. If it isn't //run/install/sources/mount-0000-cdrom then none of the repositories would work. I don't have any systems with cdroms anymore so I am not sure how to test to see myself.