Bug 3829 - не происходит перенос *.tdb файлов из /var/cache/samba g\при обновлении
: не происходит перенос *.tdb файлов из /var/cache/samba g\при обновлении
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/samba3)
: unstable
: all Linux
: P3 minor
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2004-03-15 17:49 by
Modified: 2009-05-10 09:32 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2004-03-15 17:49:02
Обновляю samba3-3.0-alt46 на samba-3.0.2a-alt4 и вижу сообщения "ls: ..: No
such
file or directory". Старые файлы *.tdb остались в /var/cache/samba.. Новые
создались в /var/lib/samba после запуска samba.
Если посмотреть на спек, то там есть такой код:

# Migrate tdb's from /var/cache/samba (taken from official samba spec file):
if [ -d %_cachedir/%origname ]; then
    echo "Moving tdb files in /var/cache/samba/*.tdb to /var/lib/samba/*.tdb"
    for i in %_cachedir/%origname/*.tdb; do
        biname=$(basename $i)
        wrongname=$(ls -1 %_localstatedir/*.tdb|grep $biname)
        [ -n "$wrongname" ] || continue

Получается, что если у меня нет файлов в /var/lib/*.tdb (а у меня их там нет),
то дальнейший код не выполняется...

Может так сделать:

        wrongname=$(ls -1 %_localstatedir/*.tdb 2>/dev/null |grep $biname)
        if [ -f "$wrongname" ] ; then

Тогда и ls ругаться не будет (в /dev/null его) и *tdb скопируются корректно при
любых раскладах.
------- Comment #1 From 2004-03-16 12:30:03 -------
Уже исправлено, не было возможности отправить исправленный пакет в Сизиф.