گاهی ممکن است به دلیل وجود رکورد با کاراکتر ناصحیح مثلا فارسی سرویس named که مربوط به مدیریت dns ها می باشد، با خطا در هنگام استارت مواجه شود.
[root@server named]# service named restart
Stopping named: [ OK ]
Starting named:
Error in named configuration:
zone localhost.localdomain/IN: loaded serial 0
zone localhost/IN: loaded serial 0
zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0
zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0
zone 0.in-addr.arpa/IN: loaded serial 0
zone server.domain.com/IN: loaded serial 2016101300
zone peaceful-technology.com/IN: loaded serial 2016101318
/var/named/ababab.peaceful-technology.com.db:21: \216\168\216\177\217\130.ababab.peaceful-technology.com: bad owner name (check-names)
/var/named/ababab.peaceful-technology.com.db:45: www.\216\168\216\177\217\130.ababab.peaceful-technology.com: bad owner name (check-names)
zone ababab.peaceful-technology.com/IN: loading from master file /var/named/ababab.peaceful-technology.com.db failed: bad owner name (check-names)
همانظور که در متن خطا مشخص هست، در فایل رکورد ها رکوردی با کاراتر ناصحیح وجود دارد که این رکورد در اینجا " برق " می باشد، بدین منظور که کاربر در dns های خود یک عدد A record برای " برق " ایجاد کرده است، البته این مشکل با خواندن رکورد ها مشخص می شود، یعنی فایل رکورد ها را باز میکنید و میبینید که چه رکوردی از کاراکتر غیر مجاز استفاده کرده و این رکورد را حذف می کنید، در صورتی که این رکورد در تعداد زیادی فایل می باشد ، می توانید از دستورات زیر استفاده نمایید.
cd /var/named
sed -i '/bargh/'d *.db
کافی است بجای عبارت bargh معادل فارسی انرا بنویسید، این دستور خط هایی که دارای این کارکتر هستند را حذف می کند، پس از آن می توانید سرویس named را استارت نمایید.