CentOS: Difference between revisions

From CCP4 wiki
Jump to navigation Jump to search
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
[http://www.centos.org CentOS] is a 100% compatible re-compilation of RedHat Enterprise Linux (from the latest [ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/SRPMS/ client] and [ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/ server] SRPMs) with all its security fixes, bugfixes and feature enhancements. Versions 2.1, 3, 4 and 5 exist and are maintained by a group of volunteers. The CentOS mailing list is also available from the public newsserver news.gmane.org (the name is gmane.linux.centos.general; posting is allowed).
[http://www.centos.org CentOS] is an Enterprise-class Linux Distribution derived from sources freely provided to the public by [http://www.redhat.com/ RedHat]. CentOS versions are maintained by a group of volunteers who supply 100% compatible re-compilations from the latest client, server and (for RHEL7) workstation and compute node source-code SRPMS of RHEL5, RHEL6 and RHEL7 [ftp://ftp.redhat.com/pub/redhat/linux/enterprise available], with all security fixes, bugfixes and feature enhancements. The CentOS mailing list is also available from the public newsserver news.gmane.org (the name is gmane.linux.centos.general; posting is allowed).


Version 5 is based on kernel 2.6.18 and is quite suitable for computing in X-ray crystallography. Maintenance updates to this version are planned to be made available until [http://dag.wieers.com/blog/files/centos-intro-1.4-en.png Mar 31st, 2014].   
Version 5 is based on kernel 2.6.18 and is still suitable for computing in X-ray crystallography. Maintenance updates to this version are planned to be made available until [http://www.zdnet.com/blog/open-source/red-hat-extends-red-hat-enterprise-linux-lifecycle-to-ten-years/10237 Mar 31st, 2017].   


32bit and 64bit versions exist for a number of platforms; most notably for Intel and compatible processors. On PC-type hardware, one should probably choose the 64bit version if the machine has more than 2GB of memory and is used for computing. The 32bit version is better for web surfing: for example, there are more 32bit Firefox plugins than 64bit ones (but of course one could manually install the 32bit Firefox on a 64bit machine).
Version 6 is based on kernel 2.6.32 and is quite suitable for computing in X-ray crystallography. Maintenance updates to this version are planned to be made available until [http://www.zdnet.com/blog/open-source/red-hat-extends-red-hat-enterprise-linux-lifecycle-to-ten-years/10237 Nov 31st, 2020]. CentOS 7 is the current distribution (based on kernel 3.10), and advisable for the latest hardware.
 
32bit and 64bit versions exist for a number of platforms; most notably for Intel and compatible processors. On PC-type hardware, one should probably choose the 64bit version if the machine has more than 2GB of memory.


== Installation and maintenance of CentOS machines ==
== Installation and maintenance of CentOS machines ==
Line 9: Line 11:
There is a [http://wiki.centos.org wiki], with e.g. [http://wiki.centos.org/HowTos Howtos], [http://wiki.centos.org/TipsAndTricks Tips and Tricks] and a list of [http://wiki.centos.org/Repositories repositories] to be used with [http://www.centos.org/docs/5/html/yum/index.html yum] (the software installer).  
There is a [http://wiki.centos.org wiki], with e.g. [http://wiki.centos.org/HowTos Howtos], [http://wiki.centos.org/TipsAndTricks Tips and Tricks] and a list of [http://wiki.centos.org/Repositories repositories] to be used with [http://www.centos.org/docs/5/html/yum/index.html yum] (the software installer).  


The best 3rd-party software repository to be be used with CentOS is [http://www.rpmforge.net RPMforge]; there is a detailed [http://wiki.centos.org/Repositories/RPMForge installation instruction]. E.g. to make your Windows partition read/writable to your CentOS installation, just run "yum -y install ntfs-3g fuse-ntfs-3g dkms dkms-fuse" after enabling RPMforge (dkms and dkms-fuse are not necessary any more since CentOS 5.4, because fuse is in the kernel).
The best 3rd-party software repository to be be used with CentOS is [http://fedoraproject.org/wiki/EPEL EPEL]. On CentOS, you can install EPEL by running <code>yum install epel-release</code>. The package is included in the CentOS Extras repository, enabled by default. Usage: e.g. to make your Windows partition read/writable to your CentOS installation, just run <code>yum -y install ntfs-3g</code>" after enabling EPEL.


=== Hardware support ===
=== Hardware support ===


There is now the [http://elrepo.org/tiki/tiki-index.php ElRepo] repository for hardware kernel modules. Explanation at [http://dag.wieers.com/blog/improved-rhel-centos-and-scientific-linux-hardware-support].
There is the [http://elrepo.org/tiki/tiki-index.php ElRepo] repository for hardware kernel modules. Explanation at [http://dag.wieers.com/blog/improved-rhel-centos-and-scientific-linux-hardware-support].
This is very useful e.g. recent hardware that is not properly supported by the kernel, e.g. for the  RTL8111/8168B Ethernet controller found on recent motherboards. Also, the [[NVidia]] driver is now provided by ElRepo.


== Installation of CCP4 from source code, on a CentOS-5 machine (32bit or 64bit) ==
== Installation of CCP4 from source code, on a CentOS-5 machine (32bit or 64bit) ==


* If you want to configure CCP4 using --with-x , you need "yum -y groupinstall 'X Software Development'"
# If you want to "configure" CCP4 using --with-x , you need "yum groupinstall 'X Software Development' "
* Additionally you may need to install g++, gfortran, ncurses-devel and python-devel RPMs for compilation and tcl/tk for ccp4i ("yum -y install gcc gcc-g++ gcc-gfortran ncurses-devel python-devel tcl tk")
# Additionally you may need to install g++, gfortran, ncurses-devel and python-devel RPMs for compilation ("yum install gcc gcc-g++ gcc-gfortran ncurses-devel python-devel"). (You could even choose to "yum install gcc44 gcc44-g++ gcc44-gfortran" which will give you the 4.4 version instead of 4.1.2 .  
* There exists no blt (required for ccp4i) RPM for RHEL/CentOS, but loggraph seems to ''need'' blt so I ran "rpm -Uvh http://apt.bioxray.dk/rhel/el4/i386/RPMS.xray/blt-2.4z-1.2.el4.mok.i386.rpm" as root (this is a RHEL4 package but it works fine on RHEL5/CentOS-5). Then, just "setenv CCP4I_TCLTK $CBIN" in include/ccp4.setup, and
# make sure to choose the Tcltk package when you download CCP4; this will configure and install blt, bltwish, and tcl/tk together with the main part of CCP4.
source $CCP4/include/ccp4.setup
# Following Tim Grüne's advice, comment out the modification of MANPATH in $CCP4/include/ccp4.setup .
cd $CBIN
 
# ln -s /usr/bin/wish .      # don't think this is req'd
== Binary Installation of CCP4 ==
ln -s /usr/bin/bltwish .
Make sure to include the binary Tcltk distribution when you download CCP4. This works fine on 64bit machines provided you installed the required 32bit libraries (see below).
ln -s /usr/bin/tclsh .
* Following Tim Grüne's advice, comment out the modification of MANPATH in $CCP4/include/ccp4.setup .


== using yum to identify which package a missing file belongs to ==
== using yum to identify which package a missing file belongs to ==

Latest revision as of 17:10, 8 March 2016

CentOS is an Enterprise-class Linux Distribution derived from sources freely provided to the public by RedHat. CentOS versions are maintained by a group of volunteers who supply 100% compatible re-compilations from the latest client, server and (for RHEL7) workstation and compute node source-code SRPMS of RHEL5, RHEL6 and RHEL7 available, with all security fixes, bugfixes and feature enhancements. The CentOS mailing list is also available from the public newsserver news.gmane.org (the name is gmane.linux.centos.general; posting is allowed).

Version 5 is based on kernel 2.6.18 and is still suitable for computing in X-ray crystallography. Maintenance updates to this version are planned to be made available until Mar 31st, 2017.

Version 6 is based on kernel 2.6.32 and is quite suitable for computing in X-ray crystallography. Maintenance updates to this version are planned to be made available until Nov 31st, 2020. CentOS 7 is the current distribution (based on kernel 3.10), and advisable for the latest hardware.

32bit and 64bit versions exist for a number of platforms; most notably for Intel and compatible processors. On PC-type hardware, one should probably choose the 64bit version if the machine has more than 2GB of memory.

Installation and maintenance of CentOS machines[edit | edit source]

There is a wiki, with e.g. Howtos, Tips and Tricks and a list of repositories to be used with yum (the software installer).

The best 3rd-party software repository to be be used with CentOS is EPEL. On CentOS, you can install EPEL by running yum install epel-release. The package is included in the CentOS Extras repository, enabled by default. Usage: e.g. to make your Windows partition read/writable to your CentOS installation, just run yum -y install ntfs-3g" after enabling EPEL.

Hardware support[edit | edit source]

There is the ElRepo repository for hardware kernel modules. Explanation at [1]. This is very useful e.g. recent hardware that is not properly supported by the kernel, e.g. for the RTL8111/8168B Ethernet controller found on recent motherboards. Also, the NVidia driver is now provided by ElRepo.

Installation of CCP4 from source code, on a CentOS-5 machine (32bit or 64bit)[edit | edit source]

  1. If you want to "configure" CCP4 using --with-x , you need "yum groupinstall 'X Software Development' "
  2. Additionally you may need to install g++, gfortran, ncurses-devel and python-devel RPMs for compilation ("yum install gcc gcc-g++ gcc-gfortran ncurses-devel python-devel"). (You could even choose to "yum install gcc44 gcc44-g++ gcc44-gfortran" which will give you the 4.4 version instead of 4.1.2 .
  3. make sure to choose the Tcltk package when you download CCP4; this will configure and install blt, bltwish, and tcl/tk together with the main part of CCP4.
  4. Following Tim Grüne's advice, comment out the modification of MANPATH in $CCP4/include/ccp4.setup .

Binary Installation of CCP4[edit | edit source]

Make sure to include the binary Tcltk distribution when you download CCP4. This works fine on 64bit machines provided you installed the required 32bit libraries (see below).

using yum to identify which package a missing file belongs to[edit | edit source]

When "make" fails (e.g. during CCP4 installation from source), it is most likely a missing file. In this case the compiler complains, giving an error message which mentions the name of the file. If the name of the file is e.g. curses.h, ask yum what package the file belongs to:

yum whatprovides "*/curses.h"

The output lists a number of packages which provide files whose names end with "curses.h". Pick the one ("ncurses-devel") that lists /usr/include/curses.h, and install it with

yum -y install ncurses-devel

Read everything about yum at http://fedoraproject.org/wiki/Docs/Drafts/SoftwareManagementGuide/SearchwithYum .

Tips and Tricks for a 64bit installation[edit | edit source]

  • create the file /etc/rpm/macros with the single line
%_query_all_fmt %%{name}-%%{version}-%%{release}.%%{arch}

This results in the type of package (i386 or x86_64) being listed for rpm and yum commands, which is very useful because one needs many libraries in both 32- and 64bit form.

If the CCP4 installation was done in 32bit mode, you need at least "yum -y install libgfortran.i386" to run the binaries.

Documentation[edit | edit source]