• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Бэкапы баз

Мыш

Lotus Team
12.02.2008
1 220
29
BIT
70
может это следствие удаления ОС зависимой части:
Скорее всего. Могу сказать одно - на 6.5.6 работает замечательно, сервак не грузит, копии создает валидные. Копирую еженедельно на протяжении года порядка 300 баз, восстанавливал из бэкапа (типа письмо удалили, а корзина уже почистилась) порядка 10%, все открывается и читается.
Допиливал я его с одной целью - чтоб выдавал ошибку, если ХОТЯ БЫ одна база не скопировалась корректно.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
"кстати" в сорцах нет mak файлов и что ещё хуже - есть ошибки в стандартах деклараций...
перед переменными, да и воще - объявлениями (декларациями), в хедере, надо ставить extern (иначе вставит переменные в несколько модулей, где будут включены подобные хедеры)

я понимаю, что сборка на винде отучает делать правильно ;)
кросс-включение хедеров - предпроцессор это съедает, из-за ифНдеф, корректно, но так же низя!
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
чёта потерлись посты здеся (админы, видать, мудрят)
повторюсь...
коротко по сборке на линухах
рекомендации в САПИ можно не все соблюдать :lamer: а именно:
-переменная LOTUS могет казать куда угодно - где выложен каталог с САПИ
-Notes_ExecDirectory - тоже может и не быть проинсталенной в систему доминой. Достаточно скопировать /opt/lotus/notes/latest/linux или opt/ibm/lotus/notes/latest/linux (зависит от версии домины)

система д.б. (на кот собираем) 32бит (другого САПИ ИБМ не сподобилось сделать, для линухов)
д.б. установлены пакеты для разработки (название зависит от дистра) и компатибилити либа (розлива 5) libstdc++.so.5
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">"мак файл, у меня такой:"</div></div><div class="sp-body"><div class="sp-content"><!--shcode--><pre><code class='bash'>#
# makefile for Notes API sample program viewids
# Linux RedHat
#
#
#Notes_ExecDirectory = ../lib/opt/ibm/lotus/notes/latest/linux
Notes_ExecDirectory = /opt/lotus/notes/latest/linux
LOTUS = ../
# set TARGET to the name of the executable to create
TARGET = knsfbackup

# set SOURCES to the list of C source files in this program
SOURCES = $(TARGET).c backup_nsf.c log.c util.c

# set HEADERS to the list of C include files in this program
HEADERS =

# set OBJECTS to the list of object files that must be linked
OBJECTS = backup_nsf.o log.o util.o $(TARGET).o

# Link this program with the bootstrap code notes0.o because
# this program is structured as a NotesMain.
BOOTOBJS = $(LOTUS)/notesapi/lib/linux/notes0.o $(LOTUS)/notesapi/lib/linux/notesai0.o

# CC defines the compiler.
CC = g++

# Set CCOPTS - the compiler options.
#CCOPTS = -c -mcpu=i486
# You may use -g flag for debugging:
#CCOPTS = -c -mcpu=i486 -g
CCOPTS = -c -mtune=i486

# set NOTESDIR to specify where to search for the Notes library file
NOTESDIR = $(Notes_ExecDirectory)

# Set LINKOPTS - the linker options passed to CC when linking.
# -o $(TARGET) causes compiler to create target rather than a.out
LINKOPTS = -o $(TARGET)

# Notes API header files require UNIX to be defined.
DEFINES = -DUNIX -DLINUX -DHANDLE_IS_32BITS

# set INCDIR to specify where to search for include files
INCDIR = $(LOTUS)/notesapi/include

# set LIBS to list all the libraries ld should link with.
LIBS = -lnotes -lm -lnsl -lc -ldl -lpthread -lresolv

# the executable depends on the objects.
$(TARGET): $(OBJECTS)
$(CC) $(LINKOPTS) $(OBJECTS) $(BOOTOBJS) -L$(NOTESDIR) -Wl,-rpath-link $(NOTESDIR) $(LI$

# the object files depend on the corresponding source files
.c.o:
$(CC) $(CCOPTS) $(DEFINES) -I$(INCDIR) $(SOURCES)[/CODE]

закоментированный Notes_ExecDirectory и есть вариант с размещением бинарников домины в произвольном месте, notesapi, у меня, располагается каталогом выше (от рабочего, для проекта)
сборка: make -f linux.mak
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!