Install Dell Command CCTK via .deb

Asked by Daniel Lawrence

trying to install Dell Command CCTK via dpkg

I'm using Ubuntu 20.04.02 ISO
Files for CCTK are from https://www.dell.com/support/kbdoc/en-au/000178000/dell-command-configure

Output is

dpkg -i srvadmin-hapi_9.5.0_amd64.deb
Selecting previously unselected package srvadmin-hapi.
(Reading database ... 160826 files and directories currently installed.)
Preparing to unpack srvadmin-hapi_9.5.0_amd64.deb ...
Unpacking srvadmin-hapi (9.5.0) ...
Setting up srvadmin-hapi (9.5.0) ...
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
dpkg: error processing package srvadmin-hapi (--install):
 installed srvadmin-hapi package post-installation script subprocess returned error exit status 1
Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
Errors were encountered while processing:
 srvadmin-hapi

Question information

Language:
English Edit question
Status:
Solved
For:
Cubic Edit question
Assignee:
No assignee Edit question
Solved by:
Cubic PPA
Solved:
Last query:
Last reply:
Revision history for this message
Cubic PPA (cubic-wizard) said :
#1

Do you need this to be available in the customized Live Environment, or you just want it to be available ~after~ you have installed the customized OS to a computer?

Revision history for this message
Daniel Lawrence (usualdesk) said :
#2

I would need it to be available in the "try ubunto before installing" option at the very least

Revision history for this message
Cubic PPA (cubic-wizard) said :
#3

The package install is failing because it requires services to be running during installation. However, the terminal environment in Cubic is just a set of files to which you have isolated/safe root access. In other words you can change/add/delete files, but you can't run any services, as you would in a running operating system.

However, let me think about how to achieve what you want. (Having the package available ~after~ the system is actually installed to a PC would probably be easier).

It may take me a few days to respond.

Revision history for this message
Daniel Lawrence (usualdesk) said :
#4

Thank you for your assistance

I'd like for the end state to be on a usb that is reusable on different Dell Hardware

I have toyed with putting a full install on usb stick. I'll look at revisiting it.

Revision history for this message
Cubic PPA (cubic-wizard) said (last edit ):
#5

----------------
OPTION 1
----------------

Here is how to automatically install these packages when the custom OS is installed to a computer.

(Note the packages will *not* be available while you are in the custom Live environment; they will be available only *after* installation).

 1. Extract two files from command-configure_4.5.0-205.ubuntu20_amd64.tar.gz

    a) command-configure_4.5.0-205.ubuntu20_amd64.deb
    b) srvadmin-hapi_9.5.0_amd64.deb

 2. Start Cubic
 3. Create a new project or open your existing project
 4. Navigate to the Options page
 5. Open on the "Preseed" tab from the headerbar
 6. Select "ubuntu.seed" in the left panel
 7. Add the following line at the end of "ubuntu.seed":

    ubiquity ubiquity/success_command string \
        bash -c 'cp -r /cdrom/pool/dell /target/tmp'; \
        in-target bash -c 'dpkg -i /tmp/dell/*.deb';

 8. Open Files (Nautilus)
 9. Navigate to <your Cubic project>/custom-disk/pool
10. Create a directory named "dell" under the "pool" directory
11. Copy the two files from step 1 into the new "dell" directory:

    a) command-configure_4.5.0-205.ubuntu20_amd64.deb
    b) srvadmin-hapi_9.5.0_amd64.deb

12. In Cubic, click "Next" to finish generating your custom ISO

Revision history for this message
Cubic PPA (cubic-wizard) said (last edit ):
#6

--------------------------------------------
RUNNING DELL COMMANDS
--------------------------------------------

I noticed that in the Dell documentation (in the link you provided above), the user is supposed to execute a command called: `cctk`.

Examining the contents of both *.deb packages (command-configure_4.5.0-205.ubuntu20_amd64.deb, srvadmin-hapi_9.5.0_amd64.deb), I do not see an executable file that is added to the /bin directory.

Therefore, you wouldn't be able to just open a terminal and execute `cctk` from any directory.

I'm not sure if you were expecting to be able to do this?

Instead, you will need to `cd /opt/dell/dcc` first, and then execute `./cctk <options>`. (The Dell documentation specifies this, but I just wanted to point this out, in case you didn't realize).

Revision history for this message
Cubic PPA (cubic-wizard) said :
#7

In addition to the solution in comment # 5, I will also add instructions on how to install these packages inside Cubic's terminal environment, so that the software is also available in the customized Live environment. It will take me a few days to add this.

Revision history for this message
Best Cubic PPA (cubic-wizard) said (last edit ):
#8

----------------
OPTION 2
----------------

Here is how to install these packages so that they are available in the custom Live environment *and* in the installed system.

[1] Get the software

Download command-configure_4.5.0-205.ubuntu20_amd64.tar.gz to your host computer.

Launch Cubic and navigate to the Terminal page.

Execute the following:

$ mkdir ~/Dell
$ cd ~/Dell

Copy command-configure_4.5.0-205.ubuntu20_amd64.tar.gz to ~/Dell by dragging the file onto Cubic's Terminal window.

Execute the following in Cubic's Terminal:

$ apt install --no-install-recommends binutils
$ tar -xvf command-configure_4.5.0-205.ubuntu20_amd64.tar.gz
$ mkdir srvadmin-hapi command-configure

$ ls -1
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    command-configure
    command-configure_4.5.0-205.ubuntu20_amd64.deb
    command-configure_4.5.0-205.ubuntu20_amd64.tar.gz
    srvadmin-hapi
    srvadmin-hapi_9.5.0_amd64.deb
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[2] Install the software

$ cd ~/Dell/srvadmin-hapi
$ ar -xv ../srvadmin-hapi_9.5.0_amd64.deb
$ tar -xvf data.tar.xz -C /

$ cd ~/Dell/command-configure
$ ar -xv ../command-configure_4.5.0-205.ubuntu20_amd64.deb
$ tar -xvf data.tar.xz -C /

[3] Create the configuration file

$ cd ~
$ cat /opt/dell/srvadmin/etc/omreg.d/*.cfg | tee /opt/dell/srvadmin/etc/omreg.cfg

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    hapi.omilcore.version=9.5.0
    hapi.configtool=/opt/dell/srvadmin/sbin/dchcfg
    hapi.installpath=/opt/dell/srvadmin
    hapi.logpath=/opt/dell/srvadmin/var/log/openmanage
    hapi.vardatapath=/opt/dell/srvadmin/var/lib/openmanage
    hapi.inipath=/opt/dell/srvadmin/etc/srvadmin-hapi

    openmanage.openipmi.kernel.2.4.x.ver_min_major=35
    openmanage.openipmi.kernel.2.4.x.ver_min_minor=13
    openmanage.openipmi.kernel.2.6.x.ver_min_major=33
    openmanage.openipmi.kernel.2.6.x.ver_min_minor=13
    openmanage.openipmi.kernel.ver_min_major=2
    openmanage.openipmi.kernel.ver_min_minor=6
    openmanage.openipmi.kernel.ver_min_patch=15
    openmanage.openipmi.rhel3.ver_min_major=35
    openmanage.openipmi.rhel3.ver_min_minor=13
    openmanage.openipmi.rhel4.ver_min_major=33
    openmanage.openipmi.rhel4.ver_min_minor=13
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

$ ldconfig

$ ls -l /usr/lib | grep libdch

You should have 18 links...
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    libdchapi64.so -> ../..//opt/dell/srvadmin/lib64/libdchapi.so.9.5.0
    libdchapi.so.5 -> ../..//opt/dell/srvadmin/lib64/libdchapi.so.9.5.0
    libdchapi.so.9 -> libdchapi64.so
    libdchbas64.so -> ../..//opt/dell/srvadmin/lib64/libdchbas.so.9.5.0
    libdchbas.so.5 -> ../..//opt/dell/srvadmin/lib64/libdchbas.so.9.5.0
    libdchbas.so.9 -> libdchbas64.so
    libdchcfl64.so -> ../..//opt/dell/srvadmin/lib64/libdchcfl.so.9.5.0
    libdchcfl.so.5 -> ../..//opt/dell/srvadmin/lib64/libdchcfl.so.9.5.0
    libdchcfl.so.9 -> libdchcfl64.so
    libdchesm64.so -> ../..//opt/dell/srvadmin/lib64/libdchesm.so.9.5.0
    libdchesm.so.5 -> ../..//opt/dell/srvadmin/lib64/libdchesm.so.9.5.0
    libdchesm.so.9 -> libdchesm64.so
    libdchipm64.so -> ../..//opt/dell/srvadmin/lib64/libdchipm.so.9.5.0
    libdchipm.so.5 -> ../..//opt/dell/srvadmin/lib64/libdchipm.so.9.5.0
    libdchipm.so.9 -> libdchipm64.so
    libdchtvm64.so -> ../..//opt/dell/srvadmin/lib64/libdchtvm.so.9.5.0
    libdchtvm.so.5 -> ../..//opt/dell/srvadmin/lib64/libdchtvm.so.9.5.0
    libdchtvm.so.9 -> libdchtvm64.so
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[4] Create symlink to the instsvcdrv service

$ ln -s /etc/systemd/system/instsvcdrv.service /etc/systemd/system/multi-user.target.wants/instsvcdrv.service

$ ls -l /etc/systemd/system/multi-user.target.wants | grep instsvcdrv.service

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    instsvcdrv.service -> /etc/systemd/system/instsvcdrv.service
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[5] Delete temporary files

$ rm -rf ~/Dell

[6] Finish generating your custom ISO in Cubic

[7] Test

Boot into your customized ISO.
Open a terminal window and verify that the instsvcdrv service is running.

$ systemctl status instsvcdrv.service
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ● instsvcdrv.service - Systems Management Device Drivers
         Loaded: loaded (/etc/systemd/system/instsvcdrv.service;
         enabled; vendor preset: enabled)
         Active: active (exited) since Sat 2021-08-28 23:08:56 EDT;
         3min 25s ago
        Process: 1140 ExecStart=/usr/libexec/instsvcdrv-helper start
        (code=exited, status=0/SUCCESS)

    Aug 28 23:08:53 xubuntu systemd[1]: Starting Systems Management
    Device Drivers...
    Aug 28 23:08:56 xubuntu systemd[1]: Started Systems Management
    Device Drivers.
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Revision history for this message
Cubic PPA (cubic-wizard) said (last edit ):
#9

--------------------------------------------------------------
WHY DID APT INSTALL FAIL IN CUBIC ?
--------------------------------------------------------------

You'll notice in your question above, the following error message:

    installed srvadmin-hapi package post-installation script subprocess returned error exit status 1

This happens because the post install script for srvadmin tries to use the systemd service:

    systemctl enable instsvcdrv.service
    systemctl start instsvcdrv.service

However, as I mentioned in Comment # 3, services do not run in Cubic's terminal environment. As a matter of fact, if the developers of these Dell packages simply required you to restart your computer (or log out and log in) after installation, they could have avoided this issue.

In Comment # 8, we resolved the issue by manually extracting the *.deb file contents to the file system and creating necessary links.

I figured this out by examining the contents of the *.deb packages (by opening them in Archive Manager). I also determined we needed to manually create certain symlinks by comparing a system without these packages installed, with a system that had these packages installed. You can also follow this technique, of comparing lists of files from two systems, if you encounter a problem like this in the future.

Revision history for this message
Daniel Lawrence (usualdesk) said :
#10

Thank you for both options. I used option 2, its working really well for what I need.

I was already aware of the cctk command requirements, but thank you for pointing them out.

I appreciate the time you put into the explanations I have learnt a lot.

Revision history for this message
Daniel Lawrence (usualdesk) said :
#11

Thanks Cubic PPA, that solved my question.