Skip to content
LFCSOperations DeploymentSingle Linux VMMedium

Local package repository, pinned install and package verification

Scenario lfcs-ops-004 · about 7 minutes · 8 points · 6 grader checks

Configure a local package repository, install and hold an exact package version, then find and restore a file that was modified after installation.

  • apt
  • packages
  • repositories
  • dpkg
  • verification

What you will practise

  • Add a local (file) repository to the package manager
  • Install an exact package version and hold it
  • Verify installed package files and restore a modified one

Start this lab

With the CLI installed and signed in, this command provisions a fresh Ubuntu 24.04 LTS virtual machine on your Mac, applies the scenario setup and prints the task below.

goldenkube start lfcs-ops-004

Task

The task text exactly as the CLI shows it. Solve it on the machine, then run goldenkube submit.

A package repository has been prepared in /srv/repo (flat layout: the Packages index sits directly in that directory; it is not signed). It carries gk-tools 1.0 and 1.1 and lab-config 1.0. 1. Configure the package manager to use it, then install version 1.0 of the package gk-tools from it. Make sure gk-tools stays at 1.0 during future upgrades. 2. The installed package lab-config has one file that was modified after it was installed. Use the package manager's verification to find it, write the file's absolute path to /root/modified-file.txt, then restore the original file from the package.

Requirements and details

Certification
LFCS · Linux Foundation Certified System Administrator
Domain
Operations Deployment
Difficulty
Medium
Environment
Single Linux VM
Recommended time
7 minutes
Points
8
Grader checks
6
Operating system
Ubuntu 24.04 LTS
Minimum CLI version
0.1.0
Scenario version
1
Published

Grading runs locally: 6 state checks read your machine when you submit; the scenario passes when every check passes. Hints, the reference solution and the check definitions are available only inside the CLI, not on this page.

LFCSOperations DeploymentHard

Kernel parameters and mandatory access control

Persist two sysctl values against a conflicting drop-in, set one runtime-only, confine a binary with AppArmor and prepare an SELinux policy rule.

Single Linux VM · ~9 min · 10 points

  • sysctl
  • kernel-parameters
  • apparmor
  • selinux
  • mac

goldenkube start lfcs-ops-001

LFCSOperations DeploymentMedium

Repair a failing service and re-prioritise a process

A systemd service crash-loops because of its unit file; fix it, enable it, and lower the priority of a running batch process without restarting it.

Single Linux VM · ~7 min · 8 points

  • systemd
  • services
  • troubleshooting
  • processes
  • nice

goldenkube start lfcs-ops-002

LFCSOperations DeploymentEasy

Schedule jobs with a systemd timer and cron

Run a backup script every day at 02:30 through a systemd timer that catches up missed runs, and add a weekday cron job for another user.

Single Linux VM · ~5 min · 7 points

  • systemd-timer
  • cron
  • scheduling
  • jobs

goldenkube start lfcs-ops-003

LFCSOperations DeploymentHard

Run a container as a service and register a virtual machine

Run nginx in a rootful podman container managed by systemd with a read-only bind mount, configure the registry search list, and define an autostarted libvirt domain.

Single Linux VM · ~8 min · 9 points

  • podman
  • containers
  • systemd
  • libvirt
  • virsh

goldenkube start lfcs-ops-005

Independent community project, not affiliated with or endorsed by CNCF or The Linux Foundation. Lab results are practice feedback, not an exam score.