Резервное копирование, инициируемое сервером

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478

Как было сказано ранее, резервное копирование, инициируемое сервером, дает воз­можность составить график создания резервных копий и соблюдать его. При этом основ­ные действия по настройке производятся на компьютере, выступающем в роли клиента резервного копирования; в частности, на этом компьютере необходимо организовать ра­боту сервера, обеспечивающего взаимодействие по сети. В данном разделе описывается создание резервных копий с использованием сервера NFS. После настройки клиента про­цедура резервного копирования немногим отличается от создания резервных копий на локальном компьютере, необходимо лишь смонтировать каталоги, экспортируемые кли­ентом резервного копирования.

Для выполнения копирования можно использовать протокол разделения файлов,

на^Ч\ отличный от NFS. Далее в этой главе будет рассматриваться копирование данных с компьютера под управлением Windows с использованием smbmount. Для работы с данными в системе Linux необходим протокол, который обеспечивал бы сохранение информации о владельцах файлов и правах доступа к ним. Таким протоколом является NFS.

Установка конфигурации сети для резервного копирования, инициируемого сервером

Вопросы настройки компьютера под управлением Linux для экспортирования файло­вых систем рассматривались в главе 8. Чтобы скопировать на резервный носитель всю информацию, содержащуюся на компьютере, надо сконфигурировать систему так, что­бы на сервере резервного копирования можно было смонтировать все файловые системы. При необходимости можно исключить из процесса резервного копирования смен­ные носители и некоторые разделы файловой системы. Как правило, клиент резервного копирования настраивается так, чтобы сервер имел доступ ко всем разделам жестких дисков.

Для создания резервной копии достаточно смонтировать каталоги лишь для чтения; сервер резервного копирования не должен записывать в них новую информацию. Если же вам надо восстановить сохраненные данные, конфигурацию необходимо несколько изменить, предоставив серверу право записи в соответствующие каталоги. При необходи­мости можно использовать более сложные способы восстановления данных. Например, вы можете сначала сформировать требуемые каталоги на сервере резервного копирования и записать в них информацию, а затем скопировать все дерево каталогов на клиентскую машину. Даже в том случае, когда резервная копия создавалась по инициативе сервера, можно организовать восстановление информации по инициативе клиента.

При выполнении резервного копирования по инициативе сервера возникает угроза без­опасности системы. Она состоит в том, что пользователь, зарегистрированный на сервере резервного копирования под именем root, получает неограниченный доступ к данным на клиентской машине. Происходит это потому, что при экспортировании каталогов указыва­ется опция no_root_squash. Без этой опции сервер резервного копирования не сможет прочитать системные файлы и файлы, принадлежащие различным пользователям. Такая конфигурация позволяет злоумышленнику, имеющему доступ к компьютерам локальном сети, прочитать все файлы с клиента резервного копирования, а если при экспортирова­нии каталогов была разрешена запись, то он сможет даже изменить содержащиеся в них данные. Подобные действия имеют возможность выполнять и пользователи внешней сети, указав в запросе фальсифицированный IP-адрес. Для того чтобы уменьшить вероятность несанкционированного доступа, необходимо защитить сервер и все клиенты резервного копирования с помощью брандмауэра, а систематически просматривая файлы протоколов, вы сможете вовремя выявлять попытки взлома системы.

В качестве примера выбора конфигурации системы рассмотрим клиент, который со­держит три каталога, предназначенных для копирования на резервный носитель: /home,

/var и / (корневой каталог). Для экспортирования соответствующих файловых систем

необходимо создать записи в файле /etc/exports. Если сервер резервного копирова­ния имеет имя buserver, эти записи будут иметь следующий вид:

/home buserver(го,no_root_squash) /var buserver(го,no_root_squash) / buserver(ro,no_root_squash)

Для восстановления файлов следует вместо го указать rw и перезагрузить сервер

NFS. При восстановлении данных необходимо также обеспечить сохранность информа­ции о принадлежности файлов владельцам. Если некоторый файл принадлежит, например, пользователю brown, но соответствие имени и числового идентификатора установить не удается, то данные о владельце восстановленного файла могут быть искажены. Чтобыисключить подобный эффект, надо обеспечить, чтобы на сервере и на клиенте резерв­ного копирования содержались учетные записи одних и тех же и чтобы

совпадали их числовые идентификаторы. Выполнение резервного копирования

Команды, по которым выполняется резервное копирование, напоминают команды, рассмотренные ранее, но, для того, чтобы они выполнялись успешно, необходимо смон­тировать каталоги, экспортируемые клиентом, на сервере резервного копирования. Пред­положим, что клиент резервного копирования имеет имя budient, а на сервере суще­ствует каталог /mnt/client, выполняющий роль точки монтирования. Для монтирова­ния каталогов и создания резервной копии может быть использована приведенная ниже последовательность команд.

# mount -t nfs -о soft buclient:/ /mnt/client

# mount -t nfs -o soft buclient:/var /mnt/client/var

# mount -t nfs -o soft buclient:/home /mnt/client/home

# cd /mnt/client

# tar cvlf /dev/stO home var ./

При составлении приведенного выше набора команд предполагалось, что сер­вер NFS на компьютере, выполняющем роль клиента резервного копирования,

заметку

не обеспечивает автоматическое монтирование экспортируемых подкаталогов. Если автоматическое монтирование подкаталогов поддерживается, достаточно первой из перечисленных команд mount.

Обратите внимание на то, что среди представленных выше команд присутствует ко­манда cd. С ее помощью точка монтирования экспортируемых каталогов объявляется как текущий каталог. При этом дерево подкаталогов выглядит так, как будто вы зарегистри­ровались на клиенте резервного копирования. Программа tar сохраняет информацию о каталогах, лишь начиная с точки монтирования; полный путь к файлу не записывается. В результате в архиве на ленте никак не отображена информация о том, что экспортируе­мые каталоги были смонтированы в точке /mnt/client и при восстановлении данных

требуемые каталоги можно смонтировать в любой другой позиции файловой системы.

Для создания резервной копии можно также использовать следующую команду:

# tar cvlf /dev/stO /mnt/client/home /mnt/client/var /mnt/client

В данной команде явно указан каталог /mnt/client. (Если вы не зададите моди­фикатор —absolute-paths, при создании архива первый символ / будет удален и со­хранится лишь имя mnt/client.) В этом случае при восстановлении файлов каталоги необходимо монтировать либо в той же точке, в которой они монтировались при созда­нии резервной копии, либо в каталоге, путь к которому оканчивается на mnt/client. В противном случае будет создан новый каталог, причем он разместится не на клиентской машине, а на сервере резервного копирования.

ВНИМАНИЕ Недостаток описанного способа резервного копирования состоит в том, что ес-| ли клиент прекратит обмен по сети, процесс сохранения данных остановится на неопределенное время. В приведенном выше примере при монтировании ука­зывалась опция -о sof t. Она позволяет клиенту NFS на сервере резервного копирования передавать программе tar сведения об ошибках, предотвращая тем самым "зависание" процедуры копирования данных.