Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   Fedora7: не стартует winbindd (http://forum.oszone.net/showthread.php?t=88759)

Vovann 17-08-2007 11:20 628953

Fedora7: не стартует winbindd
 
Доброго времени суток всем!
Люди добрые, помогите одолеть супостата- пересобрал samb'у с поддержкой ADS, всё работает, но winbindd не стартует при запуске системы, в лог пишет
[quote] 2007/08/17 09:42:29, 0] lib/util_sock.c:create_pipe_sock(1311)
bind failed on pipe socket /tmp/.winbindd/pipe: Отказано в доступе,QUOTE] вручную всё запускается нормально. Чего ему не хватает?
З.Ы. Почему во Фряхе и Сусе всё это настраивается и работает с одного тычка?

ruslandh 17-08-2007 11:29 628957

Права доступа ?

Vovann 17-08-2007 11:43 628963

Заклинания
chown root:wheel /tmp/.winbindd/
chown root:wheel /tmp/.winbindd/pipe
никакого эффекта не дали

ruslandh 17-08-2007 11:50 628967

А что показывает ls -l /tmp/.* ls -l /tmp/.winbindd/ ?

Vovann 17-08-2007 12:28 628983

Сразу после старта пишет
/tmp/.winbindd:
итого 0

/tmp/.winbindd/:
итого 0

После того как запустил руками
/tmp/.winbindd:
итого 4
srwxrwxrwx 1 root root 0 Авг 17 11:58 pipe

/tmp/.winbindd/:
итого 4
srwxrwxrwx 1 root root 0 Авг 17 11:58 pipe

dimez 18-08-2007 15:38 629474

Под каким пользователем запускается winbindd не вручную? Зачем давать права root:wheel на /tmp/.winbindd?

Vovann 23-08-2007 16:39 632043

dimez, уж извините за тупой вопрос, но как узнать
Цитата:

Под каким пользователем запускается winbindd не вручную?
:dont-know

mar 23-08-2007 23:00 632217

Vovann,
ps -aux |grep winbind

Vovann 24-08-2007 10:03 632341

mar, прикольно, ценю :clapping:. Он НЕ запущен, если я его запускаю руками, то он мне пишет, что работает от root'а, а это я и так знаю

ruslandh 24-08-2007 10:09 632345

Vovann, та скрипт запуска разве посмотреть нельзя ?

Vovann 24-08-2007 10:37 632354

ruslandh, это который /rtc/rc.d/init.d/winbind? Смотрел, ничего не понял. По крайней мере, упоминание о пользователе не нашел

ruslandh 24-08-2007 11:21 632376

Ну тогда сюда выложи :)

Vovann 24-08-2007 11:53 632387

Код:

#!/bin/sh
#
# chkconfig: - 91 35
# description: Starts and stops the Samba winbind daemon
#              #
# pidfile: /var/cache/samba/winbind.pid
# config:  /etc/samba/smb.conf


# Source function library.
if [ -f /etc/init.d/functions ] ; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 0
fi

# Avoid using root's TMPDIR
unset TMPDIR

# Source networking configuration.
. /etc/sysconfig/network

if [ -f /etc/sysconfig/samba ]; then
  . /etc/sysconfig/samba
fi

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

# Check that smb.conf exists.
[ -f /etc/samba/smb.conf ] || exit 0

RETVAL=0


start() {
        KIND="Winbind"
        echo -n $"Starting $KIND services: "
        daemon winbindd "$WINBINDOPTIONS"
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/winbindd || RETVAL=1
        return $RETVAL
}       

stop() {
        echo
        KIND="Winbind"
        echo -n $"Shutting down $KIND services: "
        killproc winbindd
        RETVAL=$?
        [ $RETVAL -eq 0 ] && rm -f /var/run/winbindd.pid && rm -f /var/lock/subsys/winbindd
        echo ""
        return $RETVAL
}       

restart() {
        stop
        start
}       

reload() {
        echo -n $"Reloading smb.conf file: "
        killproc winbindd -HUP
        RETVAL=$?
        echo
        return $RETVAL
}       

rhstatus() {
        status winbindd
}       

case "$1" in
  start)
          start
        ;;
  stop)
          stop
        ;;
  restart)
          restart
        ;;
  reload)
          reload
        ;;
  status)
          rhstatus
        ;;
  condrestart)
          [ -f /var/lock/subsys/winbindd ] && restart || :
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
        exit 1
esac


ruslandh 24-08-2007 13:05 632424

Смотрим /etc/init.d/functions*
находим функцию daemon

# A function to start a program.
daemon()
{
.....

.......
}

Похоже запускается от root (ключа --USER нет)
Посмотрите после старта /sbin/service winbind status

Vovann 24-08-2007 13:55 632449

После перезагрузки он пишет, что winbind неживой, но pid-файл существует. И для комплекта
Код:

# A function to start a program.
daemon() {
        # Test syntax.
        local gotbase= force= nicelevel corelimit
        local pid base= user= nice= bg= pid_file=
        nicelevel=0
        while [ "$1" != "${1##[-+]}" ]; do
          case $1 in
            '')    echo $"$0: Usage: daemon [+/-nicelevel] {program}"
                  return 1;;
            --check)
                  base=$2
                  gotbase="yes"
                  shift 2
                  ;;
            --check=?*)
                      base=${1#--check=}
                  gotbase="yes"
                  shift
                  ;;
            --user)
                  user=$2
                  shift 2
                  ;;
            --user=?*)
                  user=${1#--user=}
                  shift
                  ;;
            --pidfile)
                  pid_file=$2
                  shift 2
                  ;;
            --pidfile=?*)
                  pid_file=${1#--pidfile=}
                  shift
                  ;;
            --force)
                      force="force"
                  shift
                  ;;
            [-+][0-9]*)
                      nice="nice -n $1"
                  shift
                  ;;
            *)    echo $"$0: Usage: daemon [+/-nicelevel] {program}"
                  return 1;;
          esac
        done

        # Save basename.
        [ -z "$gotbase" ] && base=${1##*/}

        # See if it's already running. Look *only* at the pid file.
        __pids_var_run "$base" "$pid_file"

        [ -n "$pid" -a -z "$force" ] && return

        # make sure it doesn't core dump anywhere unless requested
        corelimit="ulimit -S -c ${DAEMON_COREFILE_LIMIT:-0}"
       
        # if they set NICELEVEL in /etc/sysconfig/foo, honor it
        [ -n "${NICELEVEL:-}" ] && nice="nice -n $NICELEVEL"
       
        # Echo daemon
        [ "${BOOTUP:-}" = "verbose" -a -z "${LSB:-}" ] && echo -n " $base"

        # And start it up.
        if [ -z "$user" ]; then
          $nice /bin/bash -c "$corelimit >/dev/null 2>&1 ; $*"
        else
          $nice runuser -s /bin/bash - $user -c "$corelimit >/dev/null 2>&1 ; $*"
        fi
        [ "$?" -eq 0 ] && success $"$base startup" || failure $"$base startup"
}


ruslandh 24-08-2007 14:17 632458

Значит он сегфолтится после создания pid-файла
Смотрите /var/log/message после запуска winbind.
Возможно занят порт.

А он в новой самбе должен запускаться ?
Смущает :

# chkconfig: - 91 35

Vovann 24-08-2007 14:41 632471

В лог он пишет:
Цитата:

Aug 24 13:43:23 ws02 winbindd[2136]: [2007/08/24 13:43:23, 0] nsswitch/winbindd_cache.c:initialize_winbindd_cache(2221)
Aug 24 13:43:24 ws02 winbindd[2136]: initialize_winbindd_cache: clearing cache and re-creating with version number 1
Aug 24 13:43:24 ws02 winbindd[2136]: [2007/08/24 13:43:24, 0] lib/util_sock.c:create_pipe_sock(1311)
Aug 24 13:43:24 ws02 winbindd[2136]: bind failed on pipe socket /tmp/.winbindd/pipe: Отказано в доступе
А что значит # chkconfig: - 91 35 ?

ruslandh 24-08-2007 15:44 632499

Цитата:

А что значит # chkconfig: - 91 35 ?
По-умолчанию демон не должен запускаться

Vovann 24-08-2007 16:43 632522

Блин, я вообще запутался :dont-know Куда в скрипт вставить --USER, что бы точно знать, что запускается от root?

Vovann 29-08-2007 08:39 634606

Все решил. Правда, эктремистским способом- всё поставил заново, потребовалось небольшое шаманство с lmhosts и net rpc join- и всё в шоколаде! Кто ж знал, что по умолчанию поддержки ads нет.


Время: 15:17.

Время: 15:17.
© OSzone.net 2001-