Author Archives: amida168

How to Stop systemd-tty-ask-password-agent Wall Message on Scientific Linux 7

I was trying a new way to setup my Linux machine for Enterprise authentication. I got it to work partially. There is a message which keeps popping up in terminal window:

Broadcast message from [email protected] (Tue 2015-01-06 10:39:34 EST):

Password entry required for 'Password for user@//' (PID 9943).
Please enter password with the systemd-tty-ask-password-agent tool!

To turn off this message, type this command in a terminal:

sudo systemctl stop systemd-ask-password-wall.service

How to Enable the On-Board Video Card and PCIe Video Card Simultaneously on a Gigabyte 78LMT-USB3 Motherboard

I recently built a computer using a Gigabyte 78LMT-USB3 motherboard. The board has an on-board graphic card. I also installed an additional AMD/ATI HD 3400 card to connect the computer to two monitors using HDMI ports. After I’ve done assembling the computer, I found that only one video card is enabled at any given time. If I specify the on-board video card as the primary display, the PCIe AMD/ATI HD3400 is disabled. If I specify the PCIe video card as the primiary display, the on-board video card is disabled.

I contacted Gigabyte support hoping to find a way to enable both the on-board video card and the PCIe AMD/ATI HD3400 card. Surprisingly, I got the answer pretty quickly. The tick is to enable Surround View. Here are the steps:

  1. Reboot the machine.
  2. Immediately press DEL key to enter BIOS when the machine boots up.
  3. Select MB Intelligent Tweaker (M.I.T.) and press Enter.
  4. Select IGX Configuration and press Enter.
  5. Select Surround View and change it to Enabled.

Note that this option is only available for ATI video cards.

How to Install Numpy and Scipy on Rocks Cluster 6.1.1

I recently installed Numpy and Scipy on a cluster built with Rocks 6.1.1. The guide I used was based upon this wiki page. Python was installed under this directory: /share/apps/python . Here are the steps I took.
Python installation

tar zxvf Python-2.7.8.tgz
cd Python-2.7.8
./configure --prefix=/share/apps/python --with-readline=gnu
make -j30
make install
cd ..

Lapack installation

tar zxvf lapack-3.5.0.tgz
cd lapack-3.5.0

Edit and change OPTS and NOOPT

OPTS = -O2 -fPIC

make -j20
make blaslib lapacklib tmglib lapack_testing
cd ..

Atlas installation

tar -jxvf atlas3.10.2.tar.bz2
../configure -Fa alg -fPIC --prefix=/share/apps/python --with-netlib-lapack-tarfile=/root/lapack-3.5.0.tgz
cd lib
make shared
make ptshared
cd ..
make install
cd ../..

UMFPACK UFconfig AMD installation


mkdir sparse
tar zxvf UMFPACK.tar.gz
tar zxvf SuiteSparse_config.tar.gz
tar zxvf AMD.tar.gz
mv AMD SuiteSparse_config UMFPACK sparse
cd sparse/SuiteSparse_config

Modify this file . Note that the following listing is for the file content, not commands to input.

CF = $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -O3 -fexceptions -fPIC -m64
F77 = gfortran
F77FLAGS = $(FFLAGS) -O -m64 -fPIC
INSTALL_LIB = /share/apps/python/lib
INSTALL_INCLUDE = /share/apps/python/include
BLAS = -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/share/apps/python/lib -llapack -lf77blas -lcblas -latlas -lgfortran
LAPACK = -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/share/apps/python/lib -llapack -lf77blas -lcblas -latlas -lgfortran

Now, it’s ready for compiling.

make -j20 library
make install

cd ../AMD
make install

cd ..
cp SuiteSparse_config/SuiteSparse_config.h /share/apps/python/include/
cd ..

Fftw installation

tar zxvf ffw-3.3.4.tar.gz
cd ffw-3.3.4
./configure --enable-sse2 --enable-threads --with-combined-threads CFLAGS="-O3 -fomit-frame-pointer -fstrict-aliasing -ffast-math -pthread -fPIC -m64" FFLAGS="-g -O2 -fPIC -m64" CXXFLAGS="-g -O2 -fPIC -m64" --prefix=/share/apps/python
make -j20
make install
cd ..

Numpy installation

tar zxvf numpy-1.8.1.tar.gz
cd numpy-1.8.1

Create a site.cfg file. Again, the following is the file content.

library_dirs = /share/apps/python/lib
include_dirs = /share/apps/python/include
atlas_libs = lapack, f77blas, cblas, atlas
amd_libs = amd
umfpack_libs = umfpack, gfortran
libraries = fftw3

Now, let’s build it.

/share/apps/python/bin/python build
/share/apps/python/bin/python install --prefix=/share/apps/python
cd ..

Scipy installation

tar zxvf scipy-0.14.0.tar.gz
cd scipy-0.14.0
/share/apps/python/bin/python build
/share/apps/python/bin/python install --prefix=/share/apps/python
cd ..

HP Printer Smart Install Problem

Printer installation is usually a trivial job that only takes about five to ten minutes. It took me two hours to finally get one installed today! This printer is called a HP Color LaserJet M451dn. The printer is equipped with Smart Install, which is supposed to simplify printer installation. However, it ended up causing major problems for me.

Traditionally, you connect the printer to the computer and then you specify a driver during printer installation. That’s it. It’s very straightforward. The Smart Install is different. When you connect a printer with Smart Install, the printer connects as a CD drive with the installation software. I tried this route and ran the installation software. It did not work. I then followed the second method in the installation guide that came with the printer. The second method requires you to put the driver CD in the CD drive, run the installation software first, and then connect the printer. Not only did it not work, it also took about 20 minutes each time I tried it.

I found out that I was not alone. A lot of people online reported the same problem.

HP LaserJet Pro 400 Color M451dn : problem installing driver

I tried some of the suggestions, but they did not work either. I finally managed to get it working. Here are the steps.

  1. Make sure the printer is not connected to the computer.
  2. Disable Smart Install on the printer. This is done by using the panel on the printer. It’s under Setup Menu -> Service -> Smart Install
  3. Download the latest universal print driver from HP and install it. Enter your model number in this site to find the driver.
  4. Reboot the computer after you install the latest universal print driver.
  5. Connect the printer to your computer using a USB cable.

This should fix it. Otherwise, the other method to try is to connect the printer to the network and install it as a network printer.

How to Override Group ID for LDAP in Enterprise Linux 6.5

I recently set up a Linux server with LDAP user information. The group id (gid) from LDAP is not useful on this server. It took me a while to figure out how to override the group id. The trick is to modify this file /etc/nslcd.conf . Add this line to the file.

map passwd gidNumber "gid_number"

Replace the gid_number with the number you want. Save the file and restart the service.

sudo /sbin/service nslcd restart


Rocks Cluster Compute Node Installation Problem using PowerConnect N2024

We bought a PowerConnect N2024 switch for a small cluster. During the installation, the DHCP server did not seem to work. The compute node could not get an IP address and the installation failed. I saw a FAQ about the problem with PowerConnect 5224.

I had a hard time while trying to follow the guide. The first problem I had was with entering the command to assign an IP address for the switch. I didn’t know that there were two different modes for the switch. You need to enter


first to enter the command. After you enter the command, the prompt changes from > to #. You can then enter the command to assign an IP address for the switch.

interface vlan 1
ip address 255.0.0

The second problem I had was that I couldn’t find the place to change “edge port” settings. The guide suggested that this setting could be labeled as “fast link”. On the N2024 switch, it is not called either “edge port” or “fast link”; it is called Port Fast. You can enable this setting by going to Switching -> Spanning Tree -> Global Settings -> Port Fast.


Rocks Cluster Node Installation Problem “Unable to read package metadata” Solved

When I installed the first compute node in my Rocks cluster, the installation went smoothly and I didn’t have any problems. However, I ran into a lot of problems when I installed the second node.

The installation always failed with this error message:

Unable to read package metadata.This may be due to a missing repodata directory. Please ensure that your install tree has been correctly generated. Cannot retrieve repository metadata (repomd.xml) for repository: anaconda-base-201404140147.x86_64. Please verify it’s path and try again.

I searched the Rocks mailing list and found some suggestions. One suggestion was to rebuild the repository.

cd /export/rocks/install
sudo rm -rf rocks-dist
sudo rocks create distro

I did it and restarted the installation. Unfortunately, this did not fix the problem. I could not find other solutions besides rebuilding the master node.

I then began to track down the problem by myself. My clue was that the node cannot retrieve repomd.xml. I found the file under /export/rocks/install/rocks-dist/x86_64/repodata and then found the problem when I tried to list the parent directory. Here is the output:


total 20
drwxr-xr-x 5 root root 4096 Jul 29 15:41 build
drwxrwx--- 3 root root 4096 Jul 29 15:41 force
drwxr-xr-x 2 root root 4096 Jul 29 15:42 images
drwxr-xr-x 4 root root 4096 Apr 14 04:26 RedHat
drwxrwx--- 2 root root 4096 Jul 29 15:42 repodata

Note that the force and repodata directories have different permissions than others had. In order for the computer node to retrieve the repomd.xml file, the permissions have to be fixed. I changed the permissions for these two folders and restarted the installation. The installation went past the point where it failed before. However, it failed again and complained about a different file. I checked the missing file and found that there were other directories with the same permission problem. I then used this command to fix all the permission problems.

sudo chmod -R o+r,o+x /export/rocks/install