276 lines
8.3 KiB
Plaintext
276 lines
8.3 KiB
Plaintext
|
|
Note that items with (!) have high priority.
|
|
|
|
lscpu
|
|
-----
|
|
- detect more hypervisors, see 'virt-what' shell script
|
|
http://people.redhat.com/~rjones/virt-what/
|
|
|
|
losetup
|
|
-------
|
|
- add new option --pretty and --output <columns> to print details about
|
|
one or all (-a) devices by lib/tt.c output. For example people hate
|
|
the hex devno in the default output.
|
|
|
|
dmesg
|
|
-----
|
|
|
|
- add --follow option
|
|
http://www.spinics.net/lists/util-linux-ng/msg04453.html
|
|
|
|
- add --color to colorize err and panic messages
|
|
|
|
hwclock
|
|
-------
|
|
|
|
- (!!!) add "hwclock -c|--compare" to provide info about RTC frequency offset
|
|
like "adjtimex -c", shell version:
|
|
|
|
#!/bin/bash
|
|
date > /dev/null
|
|
hwdate=$(hwclock -r)
|
|
time1_sys=$(date +'%s.%N')
|
|
time1_hw=$(date -d "${hwdate% -*}" +'%s')
|
|
|
|
while sleep 10; do
|
|
hwdate=$(hwclock -r)
|
|
time2_sys=$(date +'%s.%N')
|
|
time2_hw=$(date -d "${hwdate% -*}" +'%s')
|
|
awk "END { x = (($time1_hw - $time1_sys) - ($time2_hw - $time2_sys)) /
|
|
($time2_hw - $time1_hw); printf \"sysclock/RTC frequency offset: %.0f ppm (%.0f
|
|
ticks)\n\", x * 1e6, x * 1e4}" < /dev/null
|
|
done
|
|
|
|
minix (fsck, mkfs)
|
|
------------------
|
|
|
|
- clean up types -- use ino_t, size_t and ssize_t
|
|
|
|
libmount (mount/umount)
|
|
-----------------------
|
|
|
|
Note that the old mount/[u]mount.c code is in MAINTENANCE MODE only. All new
|
|
features should be implemented to libmount or to the new sys-utils/{mount,umount}.c
|
|
utils.
|
|
|
|
- add options to control fstab/mtab mount options usage, something like:
|
|
|
|
--options-mode={ignore,append,prepend,replace} MNT_OMODE_{IGNORE, ...}
|
|
--options-source={fstab,mtab,disable} MNT_OMODE_{FSTAB,MTAB,NOTAB}
|
|
--options-source-force MNT_OMODE_FORCE
|
|
|
|
(all this already supported by libmount)
|
|
|
|
- add x-mount-mkdir mount option to libmount to allow "mkdir /mountpoint"
|
|
|
|
- support MS_PROPAGATION flags in fstab -- note that kernel assumes that
|
|
these flags are not mixed with another mount flags, it means that:
|
|
|
|
/dev/sda1 /mnt/foo auto ro,shared
|
|
|
|
has be implemented by two syscalls:
|
|
|
|
mount("/dev/sda1", "/mnt/foo", "ext4", MS_RDONLY, NULL);
|
|
mount(NULL, "/mnt/foo", "none", MS_REMOUNT|MS_SHARED, NULL);
|
|
|
|
yeah, there is race ;-(
|
|
|
|
- (!) on systems with regular mtab file it is impossible to umount by "umount
|
|
/dev/loop0" if the loop device has been created by "mount -o loop", because
|
|
there is backing file in the mtab (instead of the device name).
|
|
|
|
Now we have all necessary information in /sysfs so it should be possible to
|
|
translate the device name to backing file and then search in mtab for the
|
|
filename. See loopdev_get_loopfile().
|
|
|
|
- (!) add --source and --target options to specify device and mountpoint
|
|
|
|
fstab:
|
|
/dev/sda1 /foo auto defaults 0 0
|
|
/foo /mnt auto bind 0 0
|
|
command line:
|
|
mount -o remount,ro /foo
|
|
|
|
... this command is ambiguous. It would be better to have a way how specify
|
|
target or source:
|
|
|
|
mount --target /foo -o remount,ro
|
|
|
|
Note that findmnt(8) already supports --target and --source.
|
|
|
|
- add ---target-prefix option to specify prefix for mountpoints
|
|
so then you can
|
|
|
|
mount --fstab=/etc/fstab.sandbox -a --target-prefix=/mnt/sandbox
|
|
|
|
to create a new hierarchy of filesystems at sandbox
|
|
|
|
- umount by label:
|
|
# mount LABEL=mylabel
|
|
# umount LABEL=mylabel
|
|
|
|
|
|
libblkd and libmount
|
|
--------------------
|
|
|
|
- use __attribute__((notnull)) and __attribute__((warn_unused_result))
|
|
Note that the code has to be usefull for non-gcc compilers too.
|
|
|
|
partx
|
|
-----
|
|
|
|
- support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
|
|
|
|
- (!) add regression tests for partx, addpart and delpart
|
|
|
|
|
|
docs
|
|
----
|
|
|
|
- (!) use something better than gtk-doc for libmount and libblkid (doxyden?)
|
|
|
|
- (!) add API documentation to libuuid
|
|
|
|
|
|
build-sys
|
|
--------
|
|
|
|
- use non-recursive build-sys, see
|
|
http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/3297
|
|
|
|
lib/tt.c
|
|
--------
|
|
|
|
- allows to sort columns, for example sort lsblk(8) output by SIZE
|
|
|
|
login-utils:
|
|
-----------
|
|
|
|
- (!) merge newgrp from shadow-utils
|
|
- (!) enable login utils by default
|
|
|
|
libblkid
|
|
--------
|
|
|
|
- (!) don't use internally blkid_loff_t, rather use off_t, size_t, ssize_t,
|
|
stdint.h types and so on...
|
|
|
|
- add -<BE|LE> suffix to test images for native-endian filesystems (e.g. swap)
|
|
and add support for such functionality to tests/ts/blkid/low-probe
|
|
|
|
- add FSSIZE value -- filesystem size (klibc requirement)
|
|
|
|
- (!) add support for dasd PT (used for example on s390)
|
|
|
|
- (!!!) support PARTUUID= tag
|
|
|
|
* the partitions probing is already supported by low-level part of the
|
|
library, but it's necessary add support for this tag also to high-level
|
|
blkid_cache and blkid_evaluate_* APIs
|
|
|
|
* add blkid -P <PARTUUID>
|
|
|
|
* add PARTUUID to wipefs output
|
|
|
|
fdisk(s)
|
|
--------
|
|
|
|
- add to "First sector" dialog a line with information about available
|
|
gaps (free areas) to make it more user friendly if you want to skip
|
|
any useless (small) areas between existing partitions.
|
|
See https://bugzilla.redhat.com/show_bug.cgi?id=715114
|
|
|
|
- add "move end" command to move end of the last primary/extended partition.
|
|
This feature seems very attractive to users who resizing their disks
|
|
(for example in virtual machines).
|
|
|
|
- sfdisk rounds to cylinders is -uM (megabyte units) is specified, this is
|
|
pretty stupid feature. It has to round to sectors if -uS or -uM is specified.
|
|
|
|
- Sun label support is completely useless for large disks, it uses number of
|
|
cylinders from on-disk-label where the geometry is stored by int16 values.
|
|
It seems better to completely ignore this stuff from the label and always
|
|
use geometry + BLKGETSIZE64 from kernel.
|
|
|
|
- use off_t instead "long long"
|
|
|
|
- catch SIGINT (Ctrl-C) and return to main menu.
|
|
From Red Hat bugzilla #545488:
|
|
|
|
While using fdisk normally, if you accidentally pressed the wrong button (to
|
|
start a sequence of questions for some operation, e.g. 'c' to create
|
|
partition). The tool tries too hard to keep asking you for valid input. You
|
|
can't provide a blank or invalid input to get it to break out of the current
|
|
dialog sequence and get back to the main menu.
|
|
|
|
- fdisk/* refactoring (probably implement libfdisk ???)
|
|
|
|
- add GPT support (probably implement libfdisk ???)
|
|
|
|
misc
|
|
----
|
|
|
|
- switch_root:
|
|
- move all mountpoints to the newroot (there are hardcoded /proc /sys and /dev paths now)
|
|
- add --dont-move[=<list of dirs>] options
|
|
|
|
- use TZ=UTC
|
|
|
|
- add mllockall() and SCHED_FIFO to hwclock,
|
|
see http://lkml.org/lkml/2008/10/12/132
|
|
|
|
- (!) rewrite ipcs to use /proc/sys/kernel rather than unreliable syscalls
|
|
(there are problems with 32bit userspace on 64bit kernel)
|
|
|
|
|
|
---------------
|
|
exotic requests
|
|
---------------
|
|
|
|
- mount -a -- reorder fstab entries by paths before mount (just idea only)
|
|
|
|
- mount -a (just idea only)
|
|
|
|
Date: Sun, 3 Jun 2007 18:04:24 +0300 (MET DST)
|
|
From: Szabolcs Szakacsits <szaka@sienet.hu>
|
|
|
|
In the past the right record order could be figured out easily by just
|
|
checking out fstab (if one knew what to look for) but considering the
|
|
fastly increasing number of user space file systems and their usage, with
|
|
their path, library, etc dependencies, it's getting trickier and is a black
|
|
magic for most users because they simply expect drives to be mounted
|
|
independently of their order in fstab.
|
|
|
|
One typical, wrongly edited fstab example is:
|
|
|
|
/dev/hda2 / ext3 defaults 1 1
|
|
/dev/hda1 /mnt/windows ntfs-3g defaults 0 0
|
|
/dev/hda3 /usr ext3 defaults 0 0
|
|
|
|
The events:
|
|
|
|
mount -> /sbin/mount.ntfs-3g ->
|
|
-> resolves to <path1>/ntfs-3g via a symlink ->
|
|
-> ntfs-3g requires at least <path2>/libfuse*
|
|
|
|
There are many potential solutions. For example installing everything on
|
|
the root file system which may be needed for successful mount. But this
|
|
is not always feasible or practical since we could end up putting almost
|
|
everything on the root file system in the end.
|
|
|
|
Another idea is an improved mount strategy:
|
|
|
|
do {
|
|
try to mount all unmounted entries
|
|
} while (not all mounted && at least one new was successfully mounted)
|
|
|
|
|
|
- add SELinux security contexts support to the 'ipcs' utility
|
|
http://bugzilla.redhat.com/show_bug.cgi?id=225342
|
|
|
|
Would be great to list the current system IPC Objects with their respective
|
|
security labels (where allowed) with something like 'ipcs -Z' - following the
|
|
way other tools reports those.
|
|
|
|
|