Portál AbcLinuxu, 11. května 2025 15:28
Zdravim,
mam rozjety xen v dom0 i v domU (paravirtualizace). Pri pouziti prikazu, ktere maji co docineni s casem ale dostavam hlasky:
# touch soubor
touch: setting times of `soubor': Function not implemented
# cp -a soubor soubor2
cp: preserving times for `soubor2': Function not implemented
Toto se zobrazuje jak na hostiteli, tak i na hostu. Soubor se ale zalozi i zkopiruje. Jinak systemovy cas jde na hostiteli normalne nastavovat, host cas menit nemuze (respektive nastavi, ale zmena se neprojevi), zmeny syst. casu probihaji ale na obou bez chyb. S nexenovym jadrem prikazy funguji spravne.
XEN: 3.3.1 dom0 - slackware 12.2 domU - slackware 12.2
Mount na dom0 i domU:
# mount
/dev/root on / type reiserfs (rw)
/proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
tmpfs on /dev/shm type tmpfs (rw)
Da se toto nejak odstranit nebo je to bezne, ze se v xenu toto na hostu i hostiteli deje?
Diky
Takze si odpovim nakonec sam.
Stav byl takovy, ze s distribucnim jadrem 2.6.26.x prikazy (touch, cp, atd.) fungovaly korektne. S XENovym jadrem 2.6.18.x (v dom0 i v domU) prikazy produkovaly vyse zminene chyby. Od zacatku jsem mel podezreni, ze je za tim nekompatibilita API kernelu 2.6.18.x.
Za pomoci strace jsem dohledal zdroj problemu, ktery se nakonec ukazal zabugovany svet opensource, konkretne nove coreutils 6.12, ktere je nyni soucasti vetsiny novych distribuci. Na webu se teprve nedavno zacaly objevovat problemy tohoto coreutils ve spojitosti se starsimy jadry (napr. s XEN 2.6.18.x). Asi pred 14 dny vydal Michael Stone (debian.org) patch, zatim jako jediny, pro verzi 6.12 na dist. debian.
Z debianiho baliku patchu pro coreutils 6.12 jsem tento patch vytahl a modifikoval pro pouziti ve slackware 12.2 (coreutils 6.12). Patch jsem testoval, funkcnost je ok, problem odstranen.
V priloze prikladam muj modifikovany patch na verzi coreutils 6.12. Ve slackware 12.2 staci nahrat mezi source a do coreutils.SlackBuild pridat napriklad toto:
# Patch in the utimens zcat $CWD/coreutils.utimens.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
Honza
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.