X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=INSTALL;h=011622ac358ae950d2902ed5392313767f3faee6;hb=413ace18d106fef69fa96d53831eebd600c9f157;hp=1863c34f4f4831f2982030a1144c83b210517536;hpb=f4e463df436b0b3c97efe7e53c81b663e4241180;p=mirror_smartmontools-debian.git diff --git a/INSTALL b/INSTALL index 1863c34..011622a 100644 --- a/INSTALL +++ b/INSTALL @@ -1,10 +1,10 @@ Smartmontools installation instructions ======================================= -$Id: INSTALL 3555 2012-06-01 21:07:33Z chrfranke $ +$Id: INSTALL 4120 2015-08-27 16:12:21Z samm2 $ Please also see the smartmontools home page: -http://smartmontools.sourceforge.net/ +http://www.smartmontools.org/ Table of contents: @@ -32,49 +32,6 @@ Table of contents: kernel version greater than or equal to 2.2.14. So any recent Linux distribution should support smartmontools. - There are two parts of smartmontools that may require a patched or - nonstandard kernel: - - (1) To get the ATA RETURN SMART STATUS command, the kernel needs - to support the HDIO_DRIVE_TASK ioctl(). - - (2) To run Selective Self-tests, the kernel needs to support the - HDIO_DRIVE_TASKFILE ioctl(). - - If your kernel does not support one or both of these ioctls, then - smartmontools will "mostly" work. The things that don't work will - give you harmless warning messages. - - For item (1) above, any 2.4 or 2.6 series kernel will provide - HDIO_DRIVE_TASK support. Some 2.2.20 and later kernels also - provide this support IF they're properly patched and - configured. [Andre Hedrick's IDE patches may be found at - http://www.nic.funet.fi/pub/linux/kernel/people/hedrick/ide-2.2.20/ - or are available from your local kernel.org mirror. They are not - updated for 2.2.21 or later, and may contain a few bugs.]. - If the configuration option CONFIG_IDE_TASK_IOCTL - exists in your 2.2.X kernel source code tree, then your 2.2.X - kernel will probably support this ioctl. [Note that this kernel - configuration option does NOT need to be enabled. Its presence - merely indicates that the required HDIO_DRIVE_TASK ioctl() is - supported.] - - For item (2) above, your kernel must be configured with the kernel - configuration option CONFIG_IDE_TASKFILE_IO enabled. This - configuration option is present in all 2.4 and 2.6 series - kernels. Some 2.2.20 and later kernels also provide this support - IF they're properly patched and configured as described above. - - Please see FAQ section of the URL above for additional details. - - If you are using 3ware controllers, for full functionality you - must either use version 1.02.00.037 or greater of the 3w-xxxx - driver, or patch earlier 3ware 3w-xxxx drivers. See - http://smartmontools.sourceforge.net/3w-xxxx.txt - for the patch. The version 1.02.00.037 3w-xxxx.c driver was - incorporated into kernel 2.4.23-bk2 on 3 December 2003 and into - kernel 2.6.0-test5-bk11 on 23 September 2003. - B) FreeBSD For FreeBSD support, a 5-current kernel that includes ATAng is @@ -97,7 +54,7 @@ Table of contents: E) Cygwin - The code was tested on Cygwin 1.7.7-1. It should also work on other + The code was tested on Cygwin 1.7.15-1. It should also work on other recent releases. Both Cygwin and Windows versions of smartmontools share the same code @@ -106,40 +63,14 @@ Table of contents: F) Windows - The code was tested on Windows 98SE, ME, NT4(SP5,SP6), 2000(SP4), - XP(up to SP3), 2003, Vista and Windows 7. - - -- Windows 9x/ME - - On 9x/ME, only standard (legacy) IDE/ATA devices 0-3 are supported. - The driver SMARTVSD.VXD must be present in WINDOWS\SYSTEM\IOSUBSYS - to get loaded at Windows startup. The default location in a new - installation of some versions of Windows is the WINDOWS\SYSTEM folder. - In this case, move SMARTVSD.VXD to WINDOWS\SYSTEM\IOSUBSYS and reboot - (http://support.microsoft.com/kb/265854/en-us). - - SMARTVSD.VXD relies on the standard IDE port driver ESDI_506.PDR. - If the system uses a vendor specific driver, access of SMART data - is not possible. - - Some ATA controllers (e.g. Promise) provided a custom SMARTVSD.VXD - for their Win9x/ME driver. To access SMART data from both the legacy - (/dev/h[a-d]) and this additional (/dev/hd[e-h]) controller, rename - this file to SMARTVSE.VXD. Open the file with a hex editor and replace - all occurrences of the string "SMARTVSD" with "SMARTVSE". Then reinstall - the original Windows SMARTVSD.VXD. - - To access SCSI and USB devices, an installed ASPI interface (WNASPI32.DLL) - is required. The code was tested with Adaptec Windows ASPI drivers 4.71.2. - (http://www.adaptec.com/en-US/support/_eol/scsi_sw/ASPI-4.70/) - Links to other ASPI drivers can be found at http://www.nu2.nu/aspi/. - - -- Windows NT4/2000/XP/2003/Vista/Win7 + The code was tested on Windows XP SP3, 2003, Vista, Windows 7, 8, 8.1 + and Windows 10 Release Preview. Support von Windows 9x/ME and NT4 was + removed after smartmontools 5.43. ATA or SATA devices are supported if the device driver implements the SMART IOCTLs or IOCTL_IDE_PASS_THROUGH or IOCTL_ATA_PASS_THROUGH. - The ATA SMART READ LOG command (smartctl -l, --log, -a, --all) is not - supported if only the SMART IOCTLs are implemented. + Only the latter provides full pass-through support which is needed + for all smartmontools features. SCSI and USB devices are accessed through SPTI. Special driver support is not required. @@ -205,13 +136,13 @@ Table of contents: The code was tested on eComStation 1.1, but it should work on all versions of OS/2. Innotek LibC 0.5 runtime is required. - Currently only ATA disks are supported, SCSI support will be added. + Only ATA disks are supported. [2] Installing from SVN ======================= Get the sources from the SVN repository: - svn co https://smartmontools.svn.sourceforge.net/svnroot/smartmontools/trunk/smartmontools smartmontools + svn co http://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools smartmontools Then type: ./autogen.sh @@ -236,22 +167,31 @@ Table of contents: make install (you may need to be root to do this) As shown (with no options to ./configure) this defaults to the - following set of installation directories: + following set of installation directories and other settings: + --prefix=/usr/local - --sbindir=/usr/local/sbin - --sysconfdir=/usr/local/etc - --mandir=/usr/local/share/man - --docdir=/usr/local/share/doc/smartmontools - --with-exampledir=/usr/local/share/doc/smartmontools/examplescripts - --with-drivedbdir=/usr/local/share/smartmontools - --with-initscriptdir=auto - --with-systemdsystemunitdir=auto - --enable-drivedb - --disable-attributelog + --exec-prefix='${prefix}' + --sbindir='${exec_prefix}/sbin' + --sysconfdir='${prefix}/etc' + --localstatedir='${prefix}/var' + --datarootdir='${prefix}/share' + --datadir='${datarootdir}' + --mandir='${datarootdir}/man' + --docdir='${datarootdir}/doc/smartmontools' --disable-sample - --disable-savestates - --with-libcap-ng=auto + --with-systemdsystemunitdir=auto + --with-systemdenvfile=auto + --with-initscriptdir=auto + --with-exampledir='${docdir}/examplescripts' + --with-drivedbdir='${datadir}/smartmontools' + --with-smartdscriptdir='${sysconfdir}' + --with-smartdplugindir='${smartdscriptdir}/smartd_warning.d' + --without-savestates + --without-attributelog + --with-os-deps='os_linux.o dev_areca.o' (platform specific) --without-selinux + --with-libcap-ng=auto + --with-working-snprintf These will usually not overwrite existing "distribution" installations on Linux Systems since the FHS reserves this area for use by the system @@ -441,37 +381,17 @@ To compile the Windows release with MinGW gcc on MSYS, use: Instead of using "make install", copy the .exe files into some directory in the PATH. -Cross-compile statically linked 32-bit version with MinGW-w64: +Cross-compile statically linked 32-bit and 64-bit versions with MinGW-w64: ./configure --build=$(./config.guess) \ --host=i686-w64-mingw32 \ LDFLAGS=-static - Tested on Cygwin and Debian Linux. - -Cross-compile statically linked 64-bit version with MinGW-w64: - ./configure --build=$(./config.guess) \ --host=x86_64-w64-mingw32 \ LDFLAGS=-static - Tested on Cygwin and Debian Linux with MinGW-w64 from - http://mingw-w64.sourceforge.net/. - -WARNING: The smartmontools version for 64-bit Windows is still EXPERIMENTAL. - -Cross-compile on Cygwin with old gcc-mingw 3.x: - - ./configure --build=$(./config.guess) \ - --host=i686-pc-mingw32 \ - CC='gcc-3 -mno-cygwin' \ - CXX='g++-3 -mno-cygwin' \ - CXXFLAGS='-g -O2 -Wall -W -Wno-format' - -Cross-compile on Debian Linux with gcc-mingw32: - - ./configure --build=$(./config.guess) \ - --host=i586-mingw32msvc + Tested on Cygwin, Debian and Fedora. To build the Windows binary distribution, use: @@ -500,7 +420,8 @@ To create a Windows installer, use: download location. It is also possible to (cross-)build the installer on Linux. - This was successfully tested on Debian with package "nsis". + This was successfully tested on Debian and Fedora with package + "nsis". To create a combined 32-/64-bit installer, use this in 32-bit build directory if 64-build directory is at ../build64: @@ -516,14 +437,6 @@ To both create and run the (interactive) installer, use: The binary distribution includes all documentation files converted to DOS text file format and *.html and *.txt preformatted man pages. - The tools unix2dos.exe (package cygutils) and zip.exe (package zip - or a native Win32 release of Info-ZIP, http://www.info-zip.org) are - necessary but may be not installed by Cygwin's default settings. - - The event message file tool syslogevt.exe (see smartd man page) is - included in the binary distribution if message compiler (windmc) - and resource compiler (windres) are available. This may be disabled - by passing 'WINDMC=no' to configure. To prepare os_win32 directory for MS Visual Studio C++ 2010 [Express], use the following on MSYS or Cygwin: @@ -532,12 +445,11 @@ use the following on MSYS or Cygwin: ../configure [... any MinGW option set from above ...] make config-vc10 - The MSVC project files (os_win32/smartmontools_vc10.sln, - os_win32/smart{ctl,d}_vc10.vcxproj) are included in SVN (but not in - source tarball). The target config-vc10 from a Makefile configured - for MinGW creates os_win32/{config,svnversion}_vc10.h from - ./{config,svnversion}.h. The configure skript must be run outside - of the source directory to avoid inclusion of the original config.h. + The MSVC project files (os_win32/vc10/*) are included in SVN (but not + in source tarball). The target config-vc10 from a Makefile configured + for MinGW creates os_win32/vc10/{config.h,smart*.rc,svnversion.h}. + The configure skript must be run outside of the source directory to + avoid inclusion of the original config.h. [11] Guidelines for OS/2, eComStation @@ -596,8 +508,8 @@ man smartd.conf man smartctl man smartd -/usr/sbin/smartctl -s on -o on -S on /dev/hda (only root can do this) -/usr/sbin/smartctl -a /dev/hda (only root can do this) +/usr/sbin/smartctl -s on -o on -S on /dev/sda (only root can do this) +/usr/sbin/smartctl -a /dev/sda (only root can do this) Note that the default location for the manual pages are /usr/share/man/man5 and /usr/share/man/man8. If "man" doesn't find @@ -607,8 +519,8 @@ variable. Source and binary packages for Windows are available at http://sourceforge.net/projects/smartmontools/files/ -Refer to http://sourceforge.net/apps/trac/smartmontools/wiki/Download -for any additional download and installation instructions. +Refer to http://www.smartmontools.org/wiki/Download for any additional +download and installation instructions. The following files are installed if ./configure has no options: @@ -616,22 +528,30 @@ The following files are installed if ./configure has no options: /usr/local/sbin/smartd [Executable daemon] /usr/local/sbin/update-smart-drivedb [Drive database update script] /usr/local/etc/smartd.conf [Configuration file for smartd daemon] -/usr/local/etc/rc.d/init.d/smartd [Init/Startup script for smartd] +/usr/local/etc/smartd_warning.sh [Warning skript for smartd daemon] /usr/local/share/man/man5/smartd.conf.5 [Manual page] /usr/local/share/man/man8/smartctl.8 [Manual page] /usr/local/share/man/man8/smartd.8 [Manual page] +/usr/local/share/man/man8/update-smart-drivedb.8 [Manual page] /usr/local/share/doc/smartmontools/AUTHORS [Information about the authors and developers] -/usr/local/share/doc/smartmontools/CHANGELOG [A log of changes. Also see SVN] +/usr/local/share/doc/smartmontools/ChangeLog [A log of changes. Also see SVN] /usr/local/share/doc/smartmontools/COPYING [GNU General Public License Version 2] /usr/local/share/doc/smartmontools/INSTALL [Installation instructions: what you're reading!] -/usr/local/share/doc/smartmontools/NEWS [Significant bugs discovered in old versions] +/usr/local/share/doc/smartmontools/NEWS [Significant enhancements and fixes] /usr/local/share/doc/smartmontools/README [Overview] /usr/local/share/doc/smartmontools/TODO [Things that need to be done/fixed] -/usr/local/share/doc/smartmontools/WARNINGS [Systems where lockups or other serious problems were reported] /usr/local/share/doc/smartmontools/smartd.conf [Example configuration file for smartd] /usr/local/share/doc/smartmontools/examplescripts/ [Executable scripts for -M exec of smartd.conf (4 files)] /usr/local/share/smartmontools/drivedb.h [Drive database] +Due to checks done by '--with-systemdsystemunitdir=auto' and '--with-initscriptdir=auto', +one of the following files may also be installed: + +/usr/local/lib/systemd/system/smartd.service [Systemd service file for smartd] +/usr/local/etc/rc.d/init.d/smartd [Init/Startup script for smartd] +/usr/local/etc/init.d/smartd [Init/Startup script for smartd] +/usr/local/etc/rc.d/smartd [Init/Startup script for smartd] + If /usr/local/etc/smartd.conf exists and differs from the default then the default configuration file is installed as /usr/local/etc/smartd.conf.sample instead. @@ -669,48 +589,23 @@ a documentation file doc/latex/refman.pdf: =========================================================== When you type: -./configure [options] -there are six particularly important variables that affect where the -smartmontools software is installed. The variables are listed here, -with their default values in square brackets, and the quantities that -they affect described following that. This is a very wide table: please read -it in a wide window. - -OPTIONS DEFAULT AFFECTS -------- ------- ------- ---prefix /usr/local Please see below ---sbindir ${prefix}/sbin Directory for smartd/smartctl executables; - Contents of smartd/smartctl man pages ---docdir ${prefix}/share/doc/smartmontools Location of the documentation - (autoconf >= 2.60 only, see also --with-docdir below) ---mandir ${prefix}/share/man Directory for smartctl/smartd/smartd.conf man pages ---sysconfdir ${prefix}/etc Directory for smartd.conf; - Contents of smartd executable; - Contents of smartd/smartd.conf man pages; - Directory for rc.d/init.d/smartd init script ---with-initscriptdir auto Location of init scripts ---with-systemdsystemunitdir auto Location of systemd service files ---with-docdir ${prefix}/share/doc/smartmontools Location of the documentation ---with-exampledir ${docdir}/examplescripts Location of example scripts ---enable-sample --disable-sample Adds the string '.sample' to the names of the smartd.conf file and the smartd RC file ---with-os-deps os_.o OS dependent module(s) ---with-selinux --without-selinux Enables SELinux support. If smartmontools has to create the /dev/tw[ae] device - nodes for 3ware/AMCC controllers, this option ensures that the nodes are created - with correct SELinux file contexts. ---with-libcap-ng --with-libcap-ng=auto Enables/disables libcap-ng support. If enabled and libcap-ng is - available, option --capabilities is added to smartd. ---disable-drivedb --enable-drivedb Disables default drive database file '${drivedbdir}/drivedb.h' ---with-drivedbdir ${prefix}/share/smartmontools Directory for 'drivedb.h' (implies --enable-drivedb) ---enable-savestates --disable-savestates Enables default smartd state files '${savestates}MODEL-SERIAL.ata.state' ---with-savestates ${prefix}/var/lib/smartmontools/smartd. Prefix for smartd state files (implies --enable-savestates) ---enable-attributelog --disable-attributelog Enables default smartd attribute log files ---with-attributelog ${prefix}/var/lib/smartmontools/attrlog. Prefix for smartd attribute log files (implies --enable-attributelog) - -Please note that in previous versions of smartmontools (<= 5.39) the -default for --with-docdir was - ${prefix}/share/doc/smartmontools-VERSION -This was changed to make it consistent with the default of the -new --docdir option added in autoconf 2.60. +./configure --help +a description of available configure options is printed +[with defaults in square brackets]. See also section [3] above. + + +The following old configure options are deprecated and will be removed +in a future release of smartmontools: + +Old option Replacement +--with-docdir=DIR --docdir=DIR (autoconf >= 2.60) +--enable-drivedb [no option needed] +--disable-drivedb --without-drivedbdir +--enable-savestates --with-savestates[=yes] +--disable-savestates [no option needed] +--enable-attrbutelog --with-attributelog[=yes] +--disable-savestates [no option needed] + The defaults for --with-initscriptdir and --with-systemdsystemunitdir are guessed such that the following rules apply: @@ -757,30 +652,6 @@ else --with-initscriptdir [disabled] --with-systemdsystemunitdir [disabled] -This is useful for test installs in a harmless subdirectory somewhere. - -Here are the four possible cases for the four variables above: - -Case 1: ---prefix not set ---variable not set -===> VARIABLE gets default value above - -Case 2: ---prefix set ---variable not set -===> VARIABLE gets PREFIX/ prepended to default value above - -Case 3: ---prefix not set ---variable set -===> VARIABLE gets value that is set - -Case 4: ---prefix is set ---variable is set -===> PREFIX is IGNORED, VARIABLE gets value that is set - Here are the differences with and without --enable-sample, assuming that initscript location is set and no other options specified