util-linux

00-about-docs
AUTHORS
NEWS.Debian
PAM-configuration
="; if it cannot be so parsed, then the original attribute_name is returned in a copied allocated string. This is a convenience to allow user programs to want to translate user input, whether it is of the form: "/dev/hda1", "LABEL=root", "UUID=082D-26E3", and get back a device name that it can use. Alternatively, of course, the programmer can pass an attribute name of "LABEL", and value of "root", if that is more convenient. Another common usage is to retrieve the value of a specific attribute for a particular device. This can be used to determine the filesystem type, or label, or uuid for a particular device: if ((value = blkid_get_tag_value(cache, attribute_name, devname))) { /* do something with value */ string_free(value); } If a program needs to call multiple blkid functions, then passing in a cache value of NULL is not recommended, since the blkid.tab file will be repeatedly parsed over and over again, with memory allocated and deallocated. To initialize the blkid cache, blkid_get_cache() function is used: if (blkid_get_cache(&cache, NULL) < 0) goto errout; The second parameter of blkid_get_cache (if non-zero) is the alternate filename of the blkid cache file (see blkid man page for more information about the default cach file location). Normally, programs should just pass in NULL. If you have called blkid_get_cache(), you should call blkid_put_cache() when you are done using the blkid library functions. This will save the cache to the blkid.tab file, if you have write access to the file. It will also free all associated devices and tags: blkid_put_cache(cache); ">
blkid
cal
changelog.Debian
col
in all scripts. -------------------------- what: "pid" as binary name for "kill --pid" why: too ugly, too obscure -------------------------- What: mkfs Why: use filesystem specific mkfs.. -------------------------- What: fdisk -s Why: this does not belong to fdisk, use "blockdev --getsz" -------------------------- What: 'udev' and 'list' blkid(8) output formats Why: udevd links libblkid directly; the 'list' is unnecessary, use lsblk(8) -------------------------- What: line(1) command Why: useless, nobody uses this command, head(1) is better -------------------------- What: pg(1) command Why: use less(1) or more(1) -------------------------- What: CHS stuff in fdisk (except SUN where are partitions addresses by cylinders only) Why: use addresssing by sectors, CHS does not work with modern disks, confusing for users... -------------------------- What: losetup -s Why: the option -s is in collision with the Loop-AES losetup dialect that is used in some distributions. Use the long version (--show) only. -------------------------- What: losetup output format without --list deprecated format" # losetup -a /dev/loop0: []: (/home/fs-images/swap.img) /dev/loop1: []: (/home/fs-images/disk.img), offset 100 new format: # losetup NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE /dev/loop0 0 0 0 0 /home/fs-images/swap.img /dev/loop1 0 100 0 0 /home/fs-images/disk.img -------------------------- What: tunelp Why: parallel port printers are probably almost extinct devices ---------------------------- What: reset Why: ncurses has better reset(1) ---------------------------- The Single UNIX(TM) Specification, Version 2 Copyright (C) 1997 The Open Group Legacy utilities which are part util-linux package are: col line pg http://pubs.opengroup.org/onlinepubs/7908799/xcu/intro.html#tag_001_003_003 ">
deprecated
examples
getopt
getopt_changelog
" blocks are never nested within another "if BUILD_", all dependencies have to be resolved in configure.ac (see UL_REQUIRES_BUILD()) - all BUILD_ in configure.am are always based on build_ variables, for example: AM_CONDITIONAL([BUILD_HWCLOCK], test "x$build_hwclock" = xyes) the $build_ should be available in whole configure script - AC_ARG_ENABLE() status is always stored in $enable_ variable, possible setting: "check" - util/feature is optional, if any subcomponent (function, lib, ...) is missing a warning is printed and the util/feature is disabled "yes" - util/feature is required, if any subcomponent (function, lib, ...) is missing an error is printed and ./configure aborted "no" - the util/feature is unwanted The default status is always defined by UL_DEFAULT_ENABLE() and it might be globally modified by $ul_default_estate (see AC_ARG_ENABLE([all-programs])). - it's possible to disable all programs, but enable just one (or more) explicitly specified, for example: ./configure --disable-all-programs --enable-hwclock - some basic scenarios for the ./configure script are defined in the tools/config-gen.d/ directory. If you want to use these predefined scenarios then call ./tools/config-gen [ ...] for example ./tools/config-gen all selinux will build all utils with enabled selinux support. You can also define some CFLAGS, for example: CFLAGS=$(rpm --eval '%optflags') ./tools/config-gen all will use the default distro flags. WARNING: config-gen is not designed for end-user or downstream distributions! It's for development purpose only. All end-users and downstream have to use standard ./configure script only. - the tools/config-gen script is also used for build system regression tests, the test is not enabled by default, you have to use tests/run.sh build-sys --force ">
howto-build-sys
howto-compilation
howto-contribute.txt
howto-debug
howto-man-page.txt
howto-pull-request.txt
for example: $ ./run.sh blkid $ ./run.sh libmount The tests is possible to exclude by ./run.sh --exclude= where the is blank separated test names in format "testdir/testname", for example: $ ./run.sh --exclude="mount/move" The --exclude is evaluated by the ./run.sh script only. See below TS_OPT_testdir_[testscript_]fake= environment variable which provides more powerful functionality to skip tests. *** WARNING for root users *** The tests touch your /etc/fstab, initialize loop devices or scsi_debug devices if executed with root permissions. Please, be careful and use these tests only for development and never on production system. environment variables --------------------- TS_COMMAND Evaluated by "make check" to override the default command (run.sh). Example: - build all test dependencies, but skip the actual test $ make check TS_COMMAND="true" TS_OPTS Evaluated by "make check" to pass options.to run.sh (see ./run.sh --help). Examples: - run utmp tests only $ make check TS_OPTS="--parallel=1 utmp" TS_OPT_testdir_[testscript_]fake="" Evaluated by any test script to skip certain tests. Examples: - skip all the tests within "fdisk" test-direcrory: $ make check TS_OPT_fdisk_fake="yes" - skip only "fdisk/bsd" test: $ make check TS_OPT_fdisk_bsd_fake="yes" - skip all "fdisk" tests except fdisk/bsd: $ make check TS_OPT_fdisk_fake="yes" TS_OPT_fdisk_bsd_fake="no" TS_OPT_testdir_[testscript_]known_fail="" Similar usage like TS_OPT_*_fake above. "known_fail" means that the given test will run but (negative) results will be ignored. The build log and test diffs will still remind you about the issue. TS_OPT_testdir_[testscript_]verbose="" Set verbosity for certain tests. Similar usage like TS_OPT_*_fake above. TS_OPT_testdir_[testscript_]memcheck="" Run certain tests with valgrind. Similar usage like TS_OPT_*_fake above. External services ----------------- Travis CI - automatically executed for all github commits. URL: https://travis-ci.org/karelzak/util-linux/ See .travis.yml for more details. We require "sudo" to install additional stuff and to run the tests with UID=0, it means that tests are executed on travis "legacy infrastructure". Drone.io - automatically executed for all github commits. URL: https://drone.io/github.com/karelzak/util-linux The drone.io does not use any in-tree config file (like travis-ci), the currently used configuration (maintained by Drone.io web UI): MAKE_CHECK="root" MAKE_CHECK_OPTS="--skip-loopdevs --exclude=mount/move" source ./.travis-functions.sh travis_install_script || exit travis_before_script || exit ret=0 travis_script || ret=$? travis_after_script exit $ret yes, it shares the setup functions with travis-ci. ">
howto-tests
howto-usage-function.txt
hwclock
modems-with-agetty
mount
pg
poeigl.txt
release-schedule
releases
* KNOWN BUGS: - tag v2.13.1 is typo. Please, ignore this tag. ">
source-code-management