Прошу помощи в следующей ситуации:
Имеется сетевая БД, которая работает таким образом:
На Win2003-шаре лежат все необходимые файлы, данная шара подключена у Win-клиентов как сетевой диск (Пусть будет «М:\»). На Win-клиентах имеется папка «C:\BASE», где хранятся временные файлы работающей БД. Запускается БД ярлыком на Win-клиентах, в котором «C:\BASE» - рабочая папка, объект запуска [M:\EXE\base.exe "M:\base.op"](base.op – описатель БД).
Если вайну указать в качестве диска М:\ локальную папку, то БД прекрасно запускается и работает без каких-либо нареканий. Но если диск М вайна указывает на примонтированую шару, то БД виснет на запуске.
Есть мысль, что это связано с синхронизацией времени (при запуске на Win-клиенте БД синхронизирует системное время с сервером, на котором расположена шара).
Данные действия проводились на AltLinux 4.0, 4.1 и OpenSuse 10.3, 11.0, 11.1.Wine использовался входящий в дистрибутивы.
А вот Теперь вопросы:
1.Что и где следует настроить, чтобы Wine изменял системное время Linux-клиента.
2. Может будут какие-либо другие соображения, почему БД через сеть не запускается?
Wine+Сетевая БД (Синхронизация времени Wine с сервером БД)
Модератор: Модераторы разделов
-
- Сообщения: 92
Re: Wine+Сетевая БД
А сервера сами-то синхронизированы??
Сервер времени установлен где-нибудь, и по нему эти сервера синхронизированны?
Сервер времени установлен где-нибудь, и по нему эти сервера синхронизированны?
-
- Сообщения: 6
- ОС: OpenSuse
Re: Wine+Сетевая БД
Сервером времени выступает Win2003Server, на котором и расположены расшаренные файлы БД.Синхронизация производится DOS командой "C:\WINDOWS\net.exe time \\SERVER /set /yes"
-
- Сообщения: 6
- ОС: OpenSuse
Re: Wine+Сетевая БД
Что именно непонятно? Никакой специальной настройки сервера времени на Win2003 не производилость.Стороннего сервера времени тоже не используется. Просто Win-лиенты при запуске БД выполняют команду "C:\WINDOWS\net.exe time \\SERVER /set /yes"(SERVER - это сетевое имя машины,на которой лежат расшаренные файлы БД) и таким образом синхронизируют своё системное время с компьютером,на котором расположены сетевые папки с БД(Win2003). Что и как нужно настроить,чтобы вайн мог менять аналогичным образом системное время машины-клиента, на которой он установлен?
-
- Сообщения: 92
Re: Wine+Сетевая БД
На ум приходит пока что только одно: синхронизация времени на Linux машине, где стоит wine.
-
- Сообщения: 702
- ОС: Mandrake/Mandriva Cooker
Re: Wine+Сетевая БД
поднимите ntp серв на вин машине и синхронизируйтесь с ним
Интеллект — это способность избегать выполнения работы, но так, чтобы она при этом была сделана.
-
- Сообщения: 6
- ОС: OpenSuse
Re: Wine+Сетевая БД
В том то и дело,что этого будет недостаточно: необходимо,чтобы синхронизация происходила именно при запуске БД и по её команде(иначе она просто не запустится): при этом БД должна получать от вайна сообщение об успешной синхронизации времени...
-
- Сообщения: 92
Re: Wine+Сетевая БД
А вот это попадробней. Хоть скрипт свой выложите чтоли.
-
- Сообщения: 702
- ОС: Mandrake/Mandriva Cooker
Re: Wine+Сетевая БД
ну подправьте исходники вайновского net.exe. в чем здесь проблема?
Интеллект — это способность избегать выполнения работы, но так, чтобы она при этом была сделана.
-
- Сообщения: 6
- ОС: OpenSuse
Re: Wine+Сетевая БД
Знал бы как - не обращался бы
...

-
- Сообщения: 702
- ОС: Mandrake/Mandriva Cooker
Re: Wine+Сетевая БД
Если я правильно понимаю, то добавить в ф-ию main в wine-1.1.xx/programs/net/net.c
if(!strcasecmp(argv[1], "time"))
{
system("нативная комманда синхронизации");
}
if(!strcasecmp(argv[1], "time"))
{
system("нативная комманда синхронизации");
}
Интеллект — это способность избегать выполнения работы, но так, чтобы она при этом была сделана.