Новые книги

Эта книга – попытка комплексного взгляда на то, как должна строиться система взаимоотношений компании и клиента. На основании своего двадцатилетнего опыта авторы рассказывают о том, что нужно компании знать о своих клиентах, как получать эту информацию, как добиваться клиентской лояльности, как правильно управлять точками клиентского обслуживания и контакт-центрами, какие инструменты необходимо использовать, чтобы клиентский сервис был максимально эффективным.
Master Android from first principles and begin the journey toward your own successful Android applications!

Dear Reader,

First, welcome to the world of Android! We’re entering a new era of mobile application development, one marked by open platforms and open source, to take ‘walled gardens’ and make them green houses for any and all to participate in. Android is relatively easy for developers, and I believe that this innovation will help generate a large ecosystem of developers and consumers within a very short time. This means that budding developers such as yourself will have many opportunities to design and build your own applications and you’ll have a huge and hungry customer base.

Second, welcome to the book! Its purpose is to start you on your way with building Android applications, and to help you master the learning curve. Android is already a rich framework, comparable in many ways to the richness Android of desktop Java environments. This means that there is a lot of cool stuff for you to pick up along your journey in order to create the slickest, most useful apps Android you can imagine.

The source code for the code samples in this book is all available from the Apress site, so you can stay as hands-on and practical as you like while I introduce you to the core of Android, and invite you to experiment with the various classes and APIs we’ll be looking at. By the time you’ve finished this book, you’ll be creating your own Android applications and asking yourself what your next great application will be…!

Enjoy!

Mark Murphy

The exports File

Файл exports

Рассмотрим, как настроить сервер NFS. Здесь можно задать, какие каталоги доступны клиентам, в каких режимах предоставляется доступ, а также можно дополнительно задать много параметров для управления доступом клиентов к файловой системе сервера. Файл /etc/exports перечисляет системы, которые сервер предоставляет для общего доступа.

По умолчанию, rpc.mountd не позволяет кому угодно монтировать файловые системы по сети, что является довольно разумной позицией. Для того, чтобы разрешить одному или большему количеству хостов монтировать nfs-каталог, он должен быть экспортирован, то есть определен в файле exports. Типовой файл может выглядеть следующим образом:

# exports file for vlager
/home             vale(rw) vstout(rw) vlight(rw)
/usr/X11R6        vale(ro) vstout(ro) vlight(ro)
/usr/TeX          vale(ro) vstout(ro) vlight(ro)
/                 vale(rw,no_root_squash)
/home/ftp         (ro)

Каждая строка определяет каталог и хост, которому можно монтировать его. Имя хоста обычно задает его полное доменное имя, но может содержать универсальные символы * и ?, которые действуют аналогично их действию в оболочке Bourne. Например, lab*.foo.com соответствует lab01.foo.com также, как и laboratory.foo.com. Если имя хоста не задано, как с каталогом /home/ftp в примере выше, то любому хосту позволено монтировать этот каталог. Хост может быть также задан его IP-адресом в форме address/ netmask.

При проверке клиентского хоста по файлу exports, rpc.mountd будет искать имя клиента, используя вызов gethostbyaddr. С DNS этот вызов возвращает каноническое имя машины клиента, так что Вы должны удостовериться в том, не используются ли псевдонимы в exports. Без использования DNS, возвращенное имя будет первым подходящим именем, найденным в файле hosts, которое соответствует адресу клиента.

Имя хоста сопровождается произвольным, разделенным запятыми списком параметров, приведенных в скобках. Эти параметры могут принимать следующие значения:

secure

Запрос должен прийти с одного из зарезервированных портов, то есть с порта, номер которого меньше 1024. Задан по умолчанию.

insecure

Задает действие, обратное действию параметра secure.

ro

Монтировать каталог NFS только для чтения. Задан по умолчанию.

rw

Монтировать каталог NFS для чтения и записи.

root_squash

Все обращения по NFS выполнять от имени пользователя nobody (uid 65534) на сервере независимо от того, пользователь с каким uid послал запрос с клиента.

no_root_squash

Не отображать uid 0 на uid 65534. Задан по умолчанию.

link_relative

Преобразовывает абсолютные символьные связи (где имя объекта назначения начинается с наклонной черты вправо) в относительные связи, вводя необходимое число , чтобы добраться из каталога, содержащего связь, до корневого каталога на сервере. Этот параметр имеет смысл только тогда, когда монтируется целая файловая система хоста, иначе некоторые связи будут указывать в пустоту. Задан по умолчанию.

link_absolute

Оставляет все символьные связи такими, какими они и были (нормальное поведение для Sun NFS серверов).

map_identity

Клиентские uids и gids соответствуют серверным. Задан по умолчанию.

map_daemon

Клиент и сервер не разделяют пространство uid/gid. rpc.nfsd построит карту отображений ID клиента и сервера, запрашивая на клиенте демон rpc.ugidd.

map_static

Этот параметр позволяет Вам определять имя файла, который содержит статическую карту uids и gids. Например, map_static=/etc/nfs/vlight.map определит файл /etc/nfs/vlight.map как карту uid/gid. Синтаксис файла карты описан на man-странице exports(5).

map_nis

Предписывает NIS-серверу выполнять работу по отображению uid и gid.

anonuid и anongid

Эти параметры позволяют Вам определять uid и gid анонимного пользователя. Это полезно, если Вы имеете том, экспортируемый для монтирования всеми желающими.

Все ошибки при обработке файла exports будут переданы syslogd daemon на уровне notice при запуске rpc.nfsd или rpc.mountd.

Заметьте, что имена хостов будут получены из IP-адресов клиентов обратным поиском, так что Вы должны иметь правильно сконфигурированный сервер имен. Если Вы используете BIND, то Вы должны включить контроль спуфинга в Вашем файле host.conf. Подробно это рассмотрено в главе 6.