I'm indebted to this blog post: -
Creating A Local and HTTP RedHat Yum Repository
for much of my own post, as it helped me work out how I could set up Yellowdog Update Modified (YUM) on my own newly minted Red Hat Enterprise Linux 6.2 environment.
Having installed the 64-bit RHEL 6.2 VM this morning ( I'm running Oracle VirtualBox 4.1.2 on Ubuntu 12.04 ), I've been testing the automated deployment of IBM HTTP Server 7 ( that's another post for another day ).
During the installation of IHS, I hit a problem that I've seen before: -
(01-Jun-2012 13:00:35), Process, com.ibm.ws.install.ihs.ismp.actions.ExecWizardActionFromDirectory, err, java.io.IOException: Cannot run program "/opt/IBM/HTTPServer/bin/htpasswd" (in directory "/opt/IBM/HTTPServer"): java.io.IOException: error=2, No such file or directory
STACK_TRACE: 14
java.io.IOException: Cannot run program "/opt/IBM/HTTPServer/bin/htpasswd" (in directory "/opt/IBM/HTTPServer"): java.io.IOException: error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:470)
at java.lang.Runtime.exec(Runtime.java:604)
at com.ibm.ws.install.ihs.ismp.actions.ExecWizardActionFromDirectory.executeProcess(ExecWizardActionFromDirectory.java:202)
at com.ibm.ws.install.ihs.ismp.actions.ExecWizardActionFromDirectory.execute(ExecWizardActionFromDirectory.java:307)
at com.installshield.wizard.StandardWizardListener.execute(StandardWizardListener.java:123)
at com.installshield.wizard.StandardWizardListener.currentBeanChanged(StandardWizardListener.java:106)
at com.installshield.wizard.Wizard$RunThread.run(Wizard.java:1569)
Caused by: java.io.IOException: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.<init>(UNIXProcess.java:197)
at java.lang.ProcessImpl.start(ProcessImpl.java:101)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:463)
... 6 more
Last time out, I was running IHS on CentOS 6.2, so it was an easy solution; to install the ld-linux.so.2 library as follows: -
$ yum install ld-linux.so.2
which pulled the missing code straight off the 'net.
At the time, I blogged the problem and solution here.
This time around it was a little more complex, as I'm using RHEL for which one has to pay for access to the online repositories etc.
Whilst my company do have an internal Red Hat Network mirror, my PC wasn't hooked back in to the office network.
Given that I had the RHEL 6.2 DVD ( as an ISO image ), I wanted to see if/how I could install the missing library, plus any dependencies.
After some trial and a lot of error, I managed it, again thanks to the blog post mentioned previously.
*UPDATE* Before you can run step (c), it's necessary to install the createrepo RPM from the RHEL 6.2 DVD ( which I have mounted to /mnt ): -
$ rpm -ivh /mnt/Packages/deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
$ rpm -ivh /mnt/Packages/python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
$ rpm -ivh /mnt/Packages/createrepo-0.9.8-4.el6.noarch.rpm
Here's the shortened version: -
(a) Create a directory into which I'm going to copy the RHEL DVD: -
$ mkdir /var/repo
$ mkdir /var/repo/rhel6
(b) Copy the DVD contents ( where the ISO is mounted to /mnt ): -
$ cd /mnt
$ cp -r * /var/repo/rhel6/
(c) Create the YUM repository metadata ( this is created one level up from the DVD contents ): -
$ cd /var/repo
$ createrepo .
(d) Create the YUM repository pointing back at the newly created repository metadata
$ cd /etc/yum.repos.d/
$ vi server.repo
[server]
gpgcheck=1
name=Red Hat Enterprise Linux 6.2
baseurl=file:///var/repo
(e) Update YUM to have it pick up the new repository
$ yum clean
(f) Test by listing the available packages
$ yum list
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
Updating certificate-based repositories.
Installed Packages
ConsoleKit.x86_64 0.4.1-3.el6 @anaconda-RedHatEnterpriseLinux-201111171049.x86_64/6.2
ConsoleKit-libs.x86_64 0.4.1-3.el6 @anaconda-RedHatEnterpriseLinux-201111171049.x86_64/6.2
ConsoleKit-x11.x86_64 0.4.1-3.el6 @anaconda-RedHatEnterpriseLinux-201111171049.x86_64/6.2
DeviceKit-power.x86_64 014-3.el6 @anaconda-RedHatEnterpriseLinux-201111171049.x86_64/6.2
GConf2.x86_64 2.28.0-6.el6 @anaconda-RedHatEnterpriseLinux-201111171049.x86_64/6.2
GConf2-devel.x86_64 2.28.0-6.el6 @anaconda-RedHatEnterpriseLinux-201111171049.x86_64/6.2
...
yum-plugin-aliases.noarch 1.1.30-10.el6 server
yum-plugin-changelog.noarch 1.1.30-10.el6 server
yum-plugin-downloadonly.noarch 1.1.30-10.el6 server
yum-plugin-tmprepo.noarch 1.1.30-10.el6 server
yum-plugin-verify.noarch 1.1.30-10.el6 server
yum-plugin-versionlock.noarch 1.1.30-10.el6 server
yum-presto.noarch 0.6.2-1.el6 server
zlib-devel.i686 1.2.3-27.el6 server
zsh.x86_64 4.3.10-4.1.el6 server
(g) Install my package: -
$ yum install gtk2.i686
( this installs about 45 MB of code, including the missing ld-linux.so.2 )
(h) Test IHS
$ /opt/IBM/HTTPServer/bin/htpasswd
Usage:
htpasswd [-cmdpsD] passwordfile username
htpasswd -b[cmdpsD] passwordfile username password
htpasswd -n[mdps] username
htpasswd -nb[mdps] username password
-c Create a new file.
-n Don't update file; display results on stdout.
-m Force MD5 encryption of the password.
-d Force CRYPT encryption of the password (default).
-p Do not encrypt the password (plaintext).
-s Force SHA encryption of the password.
-b Use the password from the command line rather than prompting for it.
-D Delete the specified user.
On Windows, NetWare and TPF systems the '-m' flag is used by default.
On all other systems, the '-p' flag will probably not work.
The job, as they say, is a good 'un.
Thanks, Rus, you're a star :-)
Geeking in technology since 1985, with IBM Development, focused upon Docker and Kubernetes on the IBM Z LinuxONE platform In the words of Dr Cathy Ryan, "If you don't write it down, it never happened". To paraphrase one of my clients, "Every day is a school day". I do, I learn, I share. The postings on this site are my own and don’t necessarily represent IBM’s positions, strategies or opinions. Remember, YMMV https://infosec.exchange/@davehay
Subscribe to:
Post Comments (Atom)
Note to self - use kubectl to query images in a pod or deployment
In both cases, we use JSON ... For a deployment, we can do this: - kubectl get deployment foobar --namespace snafu --output jsonpath="{...
-
Why oh why do I forget this ? Running this command : - ldapsearch -h ad2012.uk.ibm.com -p 389 -D CN=bpmbind,CN=Users,DC=uk,DC=ibm,DC=com -w...
-
Error "ldap_sasl_interactive_bind_s: Unknown authentication method (-6)" on a LDAPSearch command ...Whilst building my mega Connections / Domino / Portal / Quickr / Sametime / WCM environment recently, I was using the LDAPSearch command tha...
-
Whilst building a new "vanilla" Kubernetes 1.25.4 cluster, I'd started the kubelet service via: - systemctl start kubelet.se...
5 comments:
Awesome post this...solved all my issues...saved lot of days for me for sure !
Great going...Many Thanks!
-Chinmaya
Awesome post this...solved all my issues...saved lot of days for me for sure !
Great going...Many Thanks
@Chinmaya - no problems, glad to be of assistance, regards, Dave
Thanks a lot Dave.
For my case it was necesary also import the GPG Keys
rpm --import RPM-GPG-KEY-redhat-beta
rpm --import RPM-GPG-KEY-redhat-release
Marco
@Marco - thanks for sharing, useful tip
Post a Comment