# 'Rocky Setup Guide (Desktop + Cockpit + ZFS)

**URL:** <https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207>\
**Category:** General\
**Created:** [April 7, 2025, 1:07pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207 "2025-04-07T13:07:41Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Vikram-45HomeLab](https://forum.45homelab.com/user_avatar/forum.45homelab.com/vikram-45homelab/32/24_2.png) [@Vikram-45HomeLab](https://forum.45homelab.com/u/Vikram-45HomeLab)\
**Post date:** [April 7, 2025, 1:07pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/1 "2025-04-07T13:07:41Z")

</div>

Hey Homelabsers,

Here is the guide for Rocky Setup.

_# Rocky Linux Setup Guide: Desktop + Cockpit + ZFS_

_Requirements:_

_- Fresh Rocky Linux 8 or 9 installation_

_- User must have root privileges_

_- Internet connection_

_ **Step 1: Prepare the Scripts** _

_Save the following two scripts to your Rocky system:_

_1. install-desktop-environment.sh_

_Save the full contents of the desktop install script into this file._

_2. ZFS-setup.sh_

_Save the full contents of the ZFS install script into this file._

_Tip: Use nano or vim to create the files, or transfer them via scp from another system._

_ **Step 2: Make the Scripts Executable** _

_Run the following in a terminal:_

_chmod +x install-desktop-environment.sh ZFS-setup.sh_

_ **Step 3: Run the Desktop and Cockpit Setup** _

_Run:_

_sudo ./install-desktop-environment.sh_

_What it does:_

_- Detects and verifies the OS_

_- Installs XFCE desktop environment_

_- Configures SELinux to permissive_

_- Installs and configures Cockpit with useful modules_

_- Adds 45Drives repo_

_- Enables firewall rules for Cockpit_

_- Backs up any existing 45Drives repo configs_

_- Finishes by prompting for a reboot_

_After execution:_

_- Your system will reboot_

_- A graphical desktop (XFCE) will be available_

_- Cockpit is available at: https://:9090_

_ **Step 4: Install ZFS and Cockpit-ZFS** _

_After rebooting, run:_

_sudo ./ZFS-setup.sh_

_What it does:_

_- Installs ZFS using the appropriate repo_

_- Loads ZFS kernel modules_

_- Sets SELinux to permissive_

_- Reinstalls 45Drives repo if needed_

_- Installs cockpit-zfs_

_- Ensures cockpit.socket is active_

_- Prompts for another reboot_

_Final Result:_

_- XFCE desktop is running_

_- Cockpit is accessible at https://:9090_

_- ZFS and cockpit-zfs are installed and ready to use_

_- SELinux is set to permissive_

_- ZFS modules are loaded and enabled at boot_

_Optional (Post-Setup):_

_- Consider re-enabling SELinux and testing ZFS_

_- Create and import ZFS pools via Cockpit or CLI_

_- Update firewall rules or install additional Cockpit modules_

Let me know if this needs further details.

---

<div class="post-metadata">

**Author:** ![DigitalGarden](https://forum.45homelab.com/user_avatar/forum.45homelab.com/digitalgarden/32/1785_2.png) [@DigitalGarden](https://forum.45homelab.com/u/DigitalGarden)\
**Post date:** [April 7, 2025, 1:29pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/2 "2025-04-07T13:29:07Z")

</div>

Perhaps a dumb question since I have a custom build, but where are the two scripts;  
install-desktop-environment.sh  
ZFS-setup.sh  
?

---

<div class="post-metadata">

**Author:** ![Vikram-45HomeLab](https://forum.45homelab.com/user_avatar/forum.45homelab.com/vikram-45homelab/32/24_2.png) [@Vikram-45HomeLab](https://forum.45homelab.com/u/Vikram-45HomeLab)\
**Post date:** [April 8, 2025, 4:35pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/3 "2025-04-08T16:35:26Z")

</div>

Hey @DigitalGarden,

I have requested for scripts, and i will post them here as soon as they are available to me.

---

<div class="post-metadata">

**Author:** ![Vikram-45HomeLab](https://forum.45homelab.com/user_avatar/forum.45homelab.com/vikram-45homelab/32/24_2.png) [@Vikram-45HomeLab](https://forum.45homelab.com/u/Vikram-45HomeLab)\
**Post date:** [April 8, 2025, 7:36pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/4 "2025-04-08T19:36:38Z")

</div>

Hi all,

here are the link to those scripts:

[https://scripts.45drives.com/installation\_scripts/rocky8-setup-part1-install-desktop-environment.sh](https://scripts.45drives.com/installation_scripts/rocky8-setup-part1-install-desktop-environment.sh)  
[http://scripts.45drives.com/installation\_scripts/rocky8-setup-part2-ZFS-setup.sh](http://scripts.45drives.com/installation_scripts/rocky8-setup-part2-ZFS-setup.sh)

There are two:

- rocky8-setup-part1-install-desktop-environment.sh
- rocky8-setup-part2-ZFS-setup.sh

Running Part1 will install a desktop environment, Cockpit, our 45Drives Repos and most of our modules.  
After it runs the server needs to reboot (just have to press any key) and then after it boots, running Part 2 will install ZFS and the ZFS module.

We are currently working on Rocky 9 scripts, and as soon as they are available i will add them here.

---

<div class="post-metadata">

**Author:** ![DismalWizard](https://forum.45homelab.com/letter_avatar_proxy/v4/letter/d/94ad74/32.png) [@DismalWizard](https://forum.45homelab.com/u/DismalWizard)\
**Post date:** [May 5, 2025, 2:22pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/5 "2025-05-05T14:22:29Z")

</div>

Have 45Drives boffins considered putting the setup in an Ansible Playbook? You would need to add ansible to the load. And write the playbook. The advantage is that you have an executable description of the machine inventory and configuration making replication and user reinstallation easy.

Somebody got impatient during an update and interrupted replacement of the bootstrap. Doh. I hate it when that happens.

I have the USB Rocky 8 nub set aside for such misfortunes. Once Rocky 8 server + GUI was up,  
I just muddled through this drill by hand using the Knowledge Base articles and some help from Deep Seek.

Some of the stuff I ran into:

1. I used Rocky8 as was concerned 45Drives hardware stuff had not been compiled against Rocky9
2. I added Houston UI per the knowledge base
3. I added 45Drives repos
4. I added 45Drives Cockpit modules
5. Confirmed avahi and nsswitch were installed, opened 5353
6. Set hostname in Cockpit Overview
7. Installed ZFS per the KB found it did a bit more.
8. Imported my ZFS Pool
9. Setup ZFS mount at boot per Deep Seek charms
10. Added Portainer-CE per [portainer.io](http://portainer.io) instructions
11. Added Task Scheduler
12. Set up Rsync --one-file-system of / to ZFS pool dataset
13. Set up replication of / pool to TrueNAS local backup server
14. Setup Rsync of Roon Server / and Music disk to ZFS pool datasets
15. Added Channels-DVR to record off-the-air TV

---

<div class="post-metadata">

**Author:** ![r.schroeder](https://forum.45homelab.com/letter_avatar_proxy/v4/letter/r/13edae/32.png) [@r.schroeder](https://forum.45homelab.com/u/r.schroeder)\
**Post date:** [October 19, 2025, 4:08am UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/6 "2025-10-19T04:08:33Z")

</div>

Looking forward to the Rocky 9 scripts!

---

<div class="post-metadata">

**Author:** ![Vikram-45HomeLab](https://forum.45homelab.com/user_avatar/forum.45homelab.com/vikram-45homelab/32/24_2.png) [@Vikram-45HomeLab](https://forum.45homelab.com/u/Vikram-45HomeLab)\
**Post date:** [October 23, 2025, 3:06pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/7 "2025-10-23T15:06:57Z")

</div>

HI @r.schroeder

I have requested the scripts, and I will share them as soon as they are available.

---

<div class="post-metadata">

**Author:** ![Vikram-45HomeLab](https://forum.45homelab.com/user_avatar/forum.45homelab.com/vikram-45homelab/32/24_2.png) [@Vikram-45HomeLab](https://forum.45homelab.com/u/Vikram-45HomeLab)\
**Post date:** [October 27, 2025, 6:39pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/8 "2025-10-27T18:39:53Z")

</div>

Hey Homelabers,

I have our Knowelege Base document on Rocky 9 installation available here - [KB450474 - Rocky 8 & 9 Linux ZFS Installation - 45Drives Knowledge Base](https://knowledgebase.45drives.com/kb/kb450474-rocky-linux-zfs-installation/)

Kindly reach out to me at [info@45homelab.com](mailto:info@45homelab.com) with further questions.

---

<div class="post-metadata">

**Author:** ![r.schroeder](https://forum.45homelab.com/letter_avatar_proxy/v4/letter/r/13edae/32.png) [@r.schroeder](https://forum.45homelab.com/u/r.schroeder)\
**Post date:** [October 28, 2025, 4:22pm UTC](https://forum.45homelab.com/t/rocky-setup-guide-desktop-cockpit-zfs/3207/9 "2025-10-28T16:22:21Z")

</div>

Great! Thanks for this - adding to my notes.
