Если вы хотите указать mail.branchcompany.com
в качестве альтернативного почтового сервера для example.com
(, т.е. для адресов электронной почты вида Some.Name@example.com ), вы можете сделать это таким образом в зоне example.com
файл (все имена записаны в явной длинной форме):
example.com. IN MX 1 mail.example.com.
example.com. IN MX 2 mail.branchcompany.com.
mail.example.com. IN A 10.1.1.9
Все имена в левой части файла зоны DNS должны относиться к домену, для которого предназначен файл зоны, или к одному из его субдоменов -. Правая сторона может быть любой.
Если вы ссылаетесь на mail.branchcompany.com в файле зоны example.com, то имя mail.branchcompany.com может отображаться только в правой части записей.
Вы не объявляете IP-адрес mail.branchcompany.com в файле зоны example.com. :Вся информация об именах branchcompany.com будет запрашиваться из зоны branchcompany.com на DNS-серверах, уполномоченных для branchcompany..ком.Такая информация о зоне -из -в зоне example.com будет использоваться только клиентами, которые настроены на использование этого конкретного сервера в качестве своего преобразователя.
Кроме того, поскольку файл зоны example.com не всегда доступен для администратора DNS Branchcompany.com, любые записи Branchcompany.com в файле зоны example.com могут выйти из -из -синхронизации. с реальностью. Вот почему современные DNS-серверы обычно обрабатывают такие записи зоны -из -как ошибки.
Кроме того, следует очень внимательно относиться к наличию/отсутствию точки в конце DNS-имен в файлах зон. Ваш пример
@ IN NS @
mail IN A 10.1.1.9
IN MX 1 mail.example.com
будет (со значением по умолчанию $ORIGIN, также известным как @, определенным директивой zone
), расширенным до:
example.com. IN NS example.com.
mail.example.com. IN A 10.1.1.9
mail.example.com. IN MX 1 mail.example.com.example.com.
Обратите внимание на последнюю строку :, так как она не имеет завершающей точки, добавляется исходная точка по умолчанию.
Аналогично, эта строка
branchcompany.com IN MX 1 mail.branchcompany.com
в том же файле зоны будет интерпретироваться следующим образом:
branchcompany.com.example.com. IN MX 1 mail.branchcompany.com.example.com.
Другими словами, «адреса электронной почты вида Some.Name@branchcompany.com.example.com обрабатываются почтовым сервером mail.branchcompany.com.example.com». Скорее всего не то, что вы имели в виду!
Вы можете проверить размер с помощью du
и затем сравнить их:
#!/bin/sh
pic_source_dir="/Volumes/Backup Plus/photo/"
pic_dest_dir="/Volumes/My Passport/photo/"
vid_source_dir="/Volumes/Backup Plus/video"
vid_dest_dir="/Volumes/My Passport/video"
if [ "$(du "$pic_source_dir")" -ne "$(du "$pic_dest_dir")" ]; then
rsync -a --delete "$pic_source_dir" "$pic_dest_dir"
fi
if [ "$(du $vid_source_dir)" -ne "$(du "$vid_dest_dir")" ]; then
rsync -a --delete "$vid_source_dir" "$vid_dest_dir"
fi
Если ваша оболочка на самом деле является bash (, которая является ), в частности, bash, которая может поддерживать ассоциативные массивы (, которой bash по умолчанию на macos не является ), вы можете очистить ее. немного:
#!/usr/bin/env bash
declare -A backup_dirs
backup_dirs=(
["/Volumes/Backup Plus/photo/"]="/Volumes/My Passport/photo/"
["/Volumes/Backup Plus/video"]="/Volumes/My Passport/video"
)
for src in "${!backup_dirs[@]}"; do
dst="${backup_dirs["$src"]}"
if [[ "$(du "$src")" -ne "$(du "$dst")" ]]; then
rsync -a --delete "$src" "$dst"
fi
done
Используя bash v3.2 из macos, вы все еще можете немного почистить его, используя косвенное расширение переменных:
#!/bin/bash
pic_src="/Volumes/Backup Plus/photo/"
pic_dst="/Volumes/My Passport/photo/"
vid_src="/Volumes/Backup Plus/video"
vid_dst="/Volumes/My Passport/video"
for i in pic vid; do
t1="${i}_src"
t2="${i}_dst"
src=${!t1}
dst=${!t2}
if [[ "$(du "$src")" -ne "$(du "$dst")" ]]; then
rsync -a --delete "$src" "$dst"
fi
done