Встановлення CIFS у fstab досягає IP-адреси, не вдалося вказати ім'я хоста, записане в / etc / hosts


11

Цікаво, чому мій Ubuntu Server 14.04 LTS має проблеми з вирішенням імені хоста від fstab. Я спробував встановити наступний запис:

//NAS-5h2-20/backuppc/  /mnt/backuppc   cifs   auto,user=THEUSER,password=THEPASSWORD,cifsacl,uid=109      0       0

монтаж не вдається з помилкою

mount: wrong fs type, bad option, bad superblock on //NAS-5h1-15/backuppc,
   missing codepage or helper program, or other error
   (for several filesystems (e.g. nfs, cifs) you might
   need a /sbin/mount.<type> helper program)
   In some cases useful info is found in syslog - try
   dmesg | tail  or so

і запис Syslog:

Unable to determine destination address.

ЗАРАЗ, це працює як шарм, якщо я обмінюю ім'я хоста NAS-5h2-20 на його IP 192.168.1.29 . Однак, з міркувань портативності, я хотів би зіставити кріплення за ім'ям хоста в межах fstab.

Зміст / etc / hosts (серед інших рядків):

192.168.1.28    NAS-5h1-15
192.168.1.29    NAS-5h2-20
192.168.1.30    NAS-6h1-04

Ці хости не зареєстровані на локальному DNS-сервері. І в деяких випадках передбачається можливість використовувати різні IP-адреси (кластерний сервер / робоча станція) для використання DNS та внутрішнього використання сервера, тому я не можу зареєструвати їх у DNS.

Це теж не проблема

ping NAS-5h2-20

.

Тому я впевнений, що це проблема вирішення. Однак я не можу зрозуміти, куди. Я дивлюся на nsswitch.conf, нічого особливого там немає:

passwd:         compat
group:          compat
shadow:         compat
hosts:          files dns
networks:       files
protocols:      db files
services:       db files
ethers:         db files
rpc:            db files
netgroup:       nis

І /etc/resolv.conf також виглядає нормально:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.1.1
search ourdomain.local

Отже, питання: - чому резолютор не читає АБО ігнорує файл хостів у цьому спеціальному випадку?
- Чи DNS / WINS / якийсь інший метод вирішення жорстоко кодується в mount.cifs?


1
З сайту askubuntu.com/a/374699 :sudo apt-get install cifs-utils

Відповіді:


8

За замовчуванням пакет samba (cifs) у деяких дистрибутивах не використовує файл хостів для вирішення імені. Натомість воно використовує ім'я NetBIOS для доступу до IP. Є два шляхи для цього:

  • Встановіть самбу для використання файлу хостів для вирішення.

У файлі smb.conf знайдіть і змініть або створіть такий рядок:

    [global]
    name resolve order =  hosts lmhosts wins bcast

і перезапустити samba. Це дозволить Samba використовувати файл хостів спочатку для вирішення імені. Крім того, додано machine-name.domainnameяк псевдонім у файл хостів:

    192.168.1.28    machine-name    machine-name.domainname
  • Встановіть назву NetBIOS машин, до яких ви намагаєтесь підключитися.

На машинах, які ви намагаєтесь підключити, щоб встановити наступне у файлі smb.conf:

    netbios name = MachineName

і перезапустити samba.


В ідеалі ви хочете виконати обидва ці речі, однак просто налаштування самби для використання файлу хостів має працювати.

Посилання: https://www.samba.org/samba/docs/using_samba/ch07.html

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.