Skip to content
Search Rocky Linux

    Browse this documentation

    Rocky 9 self-check: 8 tasks — if you can finish them alone, you are good

    Take one Rocky 9 VM (snapshot it first) and work through the 8 tasks in order. Every task has verification commands: if all pass, you can handle this class of problem on your own; if one fails, follow the link back to its page.

    The checklist only covers hands-on pages published on this site. The tasks do not come from any official exam bank and do not represent Red Hat certification content.

    Terminal window
    sudo dnf -y install tree
    dnf history list | head -3 # note the install transaction ID
    sudo dnf -y history undo <ID>
    rpm -q tree # expected: package tree is not installed

    See: dnf transaction rollback

    Terminal window
    sudo firewall-cmd --permanent --zone=public --add-port=8443/tcp
    sudo firewall-cmd --reload
    firewall-cmd --zone=public --list-ports # should include 8443/tcp
    sudo systemctl restart firewalld
    firewall-cmd --zone=public --list-ports # still there after restart

    See: firewall-cmd port rules

    Terminal window
    # connected host
    sudo dnf -y install --downloadonly --destdir=/srv/offline tree
    sudo createrepo_c /srv/offline
    # isolated host (local.repo points at file:///srv/offline)
    sudo dnf --disablerepo="*" --enablerepo=local-offline -y install tree
    rpm -q tree

    See: Offline package installs

    Terminal window
    dnf repolist --enabled # baseos/appstream/extras, CRB off
    timedatectl status | grep "Time zone"
    hostname -f
    getenforce # Enforcing
    firewall-cmd --zone=public --list-services
    needs-restarting -r; echo $? # 0
    rpm -q firewalld chrony

    See: First-hour checks

    Terminal window
    sudo tee /etc/logrotate.d/lab >/dev/null <<'EOF'
    /var/log/lab/*.log { daily rotate 3 compress copytruncate }
    EOF
    sudo logrotate -f /etc/logrotate.d/lab
    ls /var/log/lab/ # expected: a.log (0 bytes) + a.log.1.gz

    See: logrotate in practice

    Terminal window
    sudo fallocate -l 4G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile
    swapon --show # expected: a /swapfile entry

    See: swap sizing

    Terminal window
    sudo dnf --disablerepo="*" --enablerepo=multi install -y tree
    rpm -q tree
    # add includepkgs=tree to multi.repo, run dnf clean all, then:
    dnf --disablerepo="*" --enablerepo=multi list available | grep -c wget # expected 0

    See: Repository conflicts

    Terminal window
    nmcli connection modify "<connection>" ipv4.method manual \
    ipv4.addresses 192.0.2.10/24 ipv4.gateway 192.0.2.1 ipv4.dns 192.0.2.53
    nmcli connection up "<connection>"
    ip -4 addr show; ip route show default; cat /etc/resolv.conf

    See: nmcli static IP

    PassedMeaning
    8/8You can handle package management, firewall, networking and storage buffering on your own
    6–7Revisit the failed pages, focusing on the verification commands rather than typing them once
    < 6Redo the tasks in order; write your own verification commands before running anything