Опубликован: 15.10.2008 | Уровень: специалист | Доступ: платный
Лекция 8:

Средства обслуживания системы

Removable Storage (Съемные ЗУ)

Removable Storage Management (RSM) отслеживает и управляет съемными носителями (лентами и дисками) и соответствующими устройствами (приводами и автоматами с автоматической сменой носителей [типа changer и jukebox]). Для управления этими носителями RSM помечает и каталогизирует ленты и диски. Управление оборудованием – это управление слотами и дверцами для доступа к носителям и извлечения носителей. RSM – это не отдельный компонент; это инструмент управления носителями для приложений и средств, которые взаимодействуют со съемными носителями, например, Backup и Remote Storage.

Примечание. Для использования компакт-дисков с помощью RSM эти CD должны быть перезаписываемыми и должны быть отформатированы с помощью файловой системы CDFS. Оптические носители можно форматировать с помощью FAT, FAT32 и NTFS.

RSM не может поддерживать более одного соединения между компьютером и съемными ЗУ. Все приложения, использующие съемные ЗУ, должны работать на компьютере, который подсоединен к конкретной библиотеке носителей. В контексте RSM слово "библиотека" означает систему хранения данных, которая состоит из съемных носителей и оборудования, которое выполняет чтение и запись на этих носителях. Имеется два типа библиотек: автоматизированная (robotic) библиотека с несколькими приводами и автономная (stand-alone) библиотека, которая соответствует устройствам с одним приводом и с ручной установкой носителей.

Примечание. В Windows Server 2003 устройству автоматической смены дисков ATAPI CD-ROM присваивается только одна буква накопителя. RSM монтирует, демонтирует и управляет всеми съемными носителями этого устройства.

В дополнение к инструменту RSM, который вы видите в оснастке Computer Management, Windows Server 2003 содержит заранее сконфигурированную консоль для RSM под именем ntmsmgr.msc (она находится в %SystemRoot%\System32 ). Для запуска этой автономной оснастки используйте команду Run. Если вы много работаете с RSM, создайте значок рабочего стола или панели задач для этого MMC-файла.

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

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

Вы можете также указать, что формально существует третий тип библиотеки – "отключенная" (offline) библиотека. RSM позволяет следить за отключенными носителями, когда эти носители не содержатся в какой-либо библиотеке. Эти носители могут находиться где угодно – в вашем столе, на полке или в вашей сумке. Поскольку RSM следит за отключенными носителями, мы можем сказать, что все отключенные на данный момент носители находятся в отключенной (offline) библиотеке.

Автоматизированные библиотеки. Автоматизированные библиотеки – это автоматизированные устройства, которые могут содержать несколько физических носителей (лент или дисков). Иногда эти устройства называют устройствами автоматической смены носителей ( changer или jukebox ). Это обычно автоматизированная подсистема, в которой происходит перемещение носителей в слоты (гнезда) и из слотов. Это могут быть слоты хранения (носители "паркуются", когда они не используются) или слоты привода (носители являются активной "целью"). Некоторые автоматизированные библиотеки имеют дополнительные компоненты оборудования, такие как дверцы, чистящие картриджи, устройства чтения штрих-кода и порты вставки/извлечения). Управление этими дополнительными компонентами тоже осуществляет RSM.

Автономные библиотеки. Автономные (stand-alone) библиотеки – это неавтоматизированные устройства с одним приводом. На приводе находится одна лента или один диск, и носитель должен устанавливаться вручную.

Опись библиотек. В автоматизированной библиотеке вы можете выполнять опись, или инвентаризацию (inventory), что позволяет учесть все носители этой библиотеки. Существует два типа описи.

  • Быстрая опись (Fast inventory). Проверка изменений в состоянии каждого слота (от заполненных до пустых и наоборот). Если носитель находится в слоте, происходит чтение записанного на носитель идентификатора (on-media identifier).
  • Полная опись (Full inventory). Идентифицируется каждый носитель. Если носитель имеет штрих-код, то при описи считывается этот штрих-код. Если нет штрих-кода, то при описи считывается записанный на носитель идентификатор (что может занять много времени).

Чтобы задать тип описи по умолчанию, раскройте объект Libraries (Библиотеки) в дереве консоли и щелкните правой кнопкой на объекте-библиотеке, которую хотите конфигурировать. Выберите пункт Properties и задайте тип описи (Inventory Method) во вкладке General (варианты Fast inventory, Full inventory и None [без описи]).

Чтобы выполнить опись, щелкните правой кнопкой на объекте-библиотеке и выберите в контекстном меню пункт Inventory. Результаты описи выводятся в правой панели.

Пулы носителей. Все носители включаются в один из пулов носителей, то есть в набор носителей с определенными атрибутами, включая тип носителей и политики управления. Пулы носителей имеют иерархическую структуру, которая начинается с класса пулов носителей. Имеется два класса.

  • Пулы носителей приложений (Application media pools). Создаются приложениями в целях группирования и отслеживания носителей. В Windows Server 2003 для Backup и Remote Storage поддерживаются свои пулы носителей.
  • Системные пулы носителей (System media pools). Создаются и управляются с помощью RSM и включают следующие пулы носителей.
    • Неопознанные (Unrecognized).
    • Свободные (Free).
    • Импортированные (Import).
Примечание. Носители можно перемещать из одного пула в другой, и это всегда осуществляется с помощью RSM.

Пулы неопознанных носителей содержат носители, которые не может распознать RSM. Обычно это совершенно пустой носитель, который еще не получил свой идентификатор от RSM (это происходит при вставке носителя в библиотеку). Но если носитель содержит идентификатор, который не может прочитать или "понять" RSM, то он тоже включается в пул Unrecognized. Носители, находящиеся в пуле Unrecognized, не включаются в список базы данных RSM и поэтому недоступны для приложений.

Пулы свободных носителей содержат носители, которые на данный момент не используются приложениями. Такой носитель доступен для использования любым приложением, которому он требуется. Предполагается, что любые данные на таком носителе не нужны, поскольку это, например, старая резервная копия, которая уже не подходит для процедуры восстановления. Вы можете сконфигурировать RSM таким образом, чтобы приложения извлекали носители из пула Free автоматически, когда приложению не хватает носителей в его собственном пуле. Если не сконфигурировать автоматическое извлечение носителей из пула Free, то вы должны перемещать носители в пул приложения вручную, когда это требуется.

Пулы импортированных носителей содержат носители, которые опознаны как носители допустимого типа, но не используются RSM. Обычно носитель оказываются в пуле Import, когда он переносится из системы RSM в другую систему RSM той же организации. Вы можете перемещать носители из пула Import в пул Free или в пул Application.

Пул носителей может содержать носители или другие пулы носителей. Пул носителей не может одновременно содержать носители и другие пулы; это либо одноуровневая структура, либо иерархическая структура. Например, пул типа Free может содержать пулы носителей для каждого типа носителей.

Примечание. Библиотека может содержать носители из различных пулов носителей, и один пул носителей может использоваться с несколькими библиотеками.

Идентификация носителей. Чтобы отслеживать носители и поддерживать данные их описи, RSM идентифицирует каждую единицу носителей. Имеется два типа идентификации: записываемый на носитель идентификатор (on-media identifier) и штрих-код (barcode). Идентификаторы на носителях записываются электронным способом при первой установке носителя в библиотеку. Этот идентификатор имеет две части.

  • Тип метки. Идентифицирует формат, используемый для записи данных. Этот формат зависит от типа носителя.
  • Идентификатор метки. Уникальный идентификатор для конкретного диска или ленты.

Идентификаторы в виде штрих-кода доступны, если ваша библиотека поддерживает штрих-коды. RSM может идентифицировать носители по штрих-кодам, которые задают пользователи. Носители, для которых используются штрих-коды, тоже получают записываемые на носитель идентификатор, и RSM может использовать любой из этих методов для идентификации ленты или диска. Штрих-коды проще использовать, поскольку вы не обязаны монтировать носитель в устройстве, чтобы идентифицировать его.

Форматы носителей. Чтобы работать с записываемыми на носитель идентификаторами, RSM использует MLL (Media Label Library – библиотека меток носителей). Библиотека MLL – это DLL, которая используется для интерпретации формата метки носителя, записанной каким-либо приложением. RSM поддерживает форматы FAT, NTFS и CDFS для дисковых носителей и MTF (Microsoft Tape Format) для ленточных носителей. RSM может различать, какое приложение записало метку носителя путем проверки в зарегистрированных библиотеках MLL. Разработчики приложений, в которых используются другие форматы носителей, должны предоставлять соответствующие MLL.

Состояния носителей. Состояние носителя – это текущее рабочее состояние ленты или диска. RSM использует для оценки текущего состояния записываемый идентификатор или штрих-код. Состояния носителей определяются на двух уровнях: физическое состояние (Physical state) и состояние "сторон" (Side state).

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

Состояние сторон – это состояние стороны (сторон), где сохраняются данные. Каждый тип носителя имеет одну или две стороны. Например, магнитооптическме диски имеют две стороны, а ленты имеют одну сторону. RSM отслеживает стороны носителей, как это описано в таблице 8.2.

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

Управление пулами носителей. Для управления пулами носителей используется оснастка Removable Storage. Вы можете создать пул, удалить пул и перемещать носители между пулами.

Таблица 8.1. Описание физических состояний носителей
Физическое состояние Описание
Idle (Простаивает) Носитель отсоединен (находится в слоте хранения автоматизированного устройства или физически находится вне устройства, то есть на хранении).
In Use (Используется). RSM в данный момент перемещает носитель.
Loaded (Загружен). Носитель смонтирован на приводе и доступен для чтения или записи данных.
Mounted (Смонтирован). Носитель находится на приводе, но еще не доступен для чтения или записи данных.
Unloaded (Выгружен). Носитель был демонтирован, и находится в состоянии ожидания, пока кто-либо не удалит его физически из устройства.
Таблица 8.2. Описание состояний сторон для съемных носителей
Состояние стороны Описание
Allocated (Занята). Данная сторона зарезервирована каким-либо приложением и недоступна для любого другого приложения.
Available (Доступна). Данная сторона доступна для использования любым приложением.
Completed (Заполнена). Данная сторона заполнена до конца.
Decommissioned (Выведена из использования). Сторона стала недоступна для использования, поскольку достигла своего максимума по количеству "захватов" (см. выше примечание с описанием этого максимума).
Imported (Импортирована). Тип метки данной стороны опознан. Идентификатор метки не опознан.
Incompatible (Несовместима). Тип носителя несовместим с данной библиотекой. Носитель следует удалить.
Reserved (Зарезервирована). Данная сторона доступна только определенному приложению. Это состояние относится к двусторонним носителям, когда одна сторона уже захвачена этим приложением.
Unprepared (Не подготовлена). Сторона помещена в пул свободных носителей (типа Free), но еще не получила метку свободного носителя.
Unrecognized (Не опознана). RSM не может опознать тип и идентификатор метки данной стороны.

Вы можете создать пул носителей для определенного приложения как новый пул верхнего уровня или как пул внутри существующего пула приложений (но не внутри системных пулов или пулов типа Free [Свободные], Import [Импортированные] или Unrecognized [Неопознанные]).

  • Для создания пула носителей верхнего уровня щелкните правой кнопкой на объекте Media Pools в дереве консоли и выберите в контекстном меню пункт Create Media Pool (Создать пул носителей).
  • Для создания пула носителей внутри существующего пула щелкните правой кнопкой на этом существующем пуле и выберите в контекстном меню пункт Create Media Pool.

Сконфигурируйте новый пул носителей в диалоговом окне Create a New Media Pool Properties, используя следующие указания.

  • Введите имя этого нового пула носителей.
  • Введите описание (дополнительно).
  • В секции Media information (Информация о носителях) укажите, что этот пул должен содержать либо другие пулы носителей (вариант Contains Other Media Pools), либо реальные носители (вариант Contains Media Of Type).
  • Введите тип носителей в случае второго варианта.
  • Задайте следующие опции захвата, возврата и перераспределения носителей.
    • Установите флажок Draw Media From Free Media Pool, чтобы данный пул автоматически получал носители из пула свободных носителей (Free), когда в нем не остается незанятых носителей. Не устанавливайте этот флажок, если вы хотите перемещать носители из пула свободных носителей вручную (используя консоль RSM).
    • Установите флажок Return Media To Free Media Pool, чтобы данный пул автоматически возвращал носитель в пул свободных носителей, если этот носитель уже не нужен приложению. Не устанавливайте этот флажок, если вы хотите перемещать носители в пул свободных носителей вручную.
    • Установите флажок Limit Reallocations (Ограничить количество перераспределений) и введите соответствующее ограничение, чтобы ограничить количество захватов носителей другими пулами носителей.
  • Используйте вкладку Security, чтобы предоставлять пользователям и группам полномочия работы с данным пулом носителей.

Чтобы удалить определенный пул носителей в консоли Removable Storage (RSM), раскройте объект Media Pools в дереве консоли. Щелкните правой кнопкой на пуле носителей, который хотите удалить, и выберите в контекстном меню пункт Delete. Вы должны будете подтвердить это удаление.

Перемещение носителя в другой пул. Чтобы переместить носитель из одного пула носителей в другой, перетащите соответствующую ленту или диск из правой панели в соответствующий пул носителей в дереве консоли. Если исходный или адресуемый пул носителей является подчиненным, то раскройте сначала содержащий его объект.

Извлечение носителя из библиотеки. Всегда извлекайте носитель, используя консоль RSM, чтобы программа RSM "знала", что носитель удаляется из соответствующей библиотеки. Используемый метод зависит от того, какая это библиотека – автономная (stand-alone) или автоматизированная.

  • Если носитель находится в автономной библиотеке, щелкните правой кнопкой на соответствующем объекте-библиотеке и выберите в контекстном меню пункт Eject.
  • Если носитель находится в автоматизированной библиотеке, щелкните правой кнопкой на соответствующем объекте-носителе и выберите в контекстном меню пункт Eject. Затем выполните соответствующие шаги в мастере извлечения носителей Media Eject Wizard.

Очистка библиотек. RSM ведет учет процедур очистки устройств, поэтому для выполнения операций очистки вам следует использовать консоль RSM. Шаги, которые вы используете в консоли, зависят от того, какая это библиотека – автономная или автоматизированная. Чтобы выполнить очистку устройства для автономной библиотеки, установите вручную чистящий картридж. Затем, чтобы уведомить RSM, откройте консоль, щелкните правой кнопкой на соответствующем устройстве и выберите в контекстном меню пункт Mark As Clean (Пометить как чистое).

Чтобы выполнить очистку в автоматизированной библиотеке, щелкните правой кнопкой на соответствующей библиотеке и выберите в контекстном меню пункт Cleaner Management (Управление очисткой). Мастер Cleaner Management Wizard проведет вас через соответствующие шаги (включая инструкции по вставке чистящего картриджа).

Советы по работе с RSM. RSM – это мощное средство, но вы должны использовать его все время, иначе оно не будет работать должным образом. Если вы используете ленточное устройство резервного копирования, то RSM становится важным компонентом вашей профессиональной деятельности.

Важно помнить, что любые операции со съемными носителями вы должны выполнять через консоль RSM. Перемещение ленты, очистка ленты, списание ленты или ввод новых лент не должны выполняться без использования RSM.

При необходимости восстановления файлов из резервной копии на ленте у вас может возникнуть проблема с данной лентой; это не физическая проблема, а проблема монтирования ленты, чтобы можно было прочитать ее содержимое или каталог. Иногда соответствующее приложение резервного копирования снова и снова запускает цикл монтирования, каталогизации и демонтирования ленты. Это почти всегда вызывается тем, что записанный на носитель идентификатор (метка) не соответствует информации базы данных RSM для смонтированной ленты. Возможно, носитель в ленточной библиотеке переключен на другую ленту или помещен в неверный слот. Используйте возможности мастеров извлечения и вставки носителей RSM Eject Media Wizard и Inject Media Wizard вместо ручного удаления и замены носителей. Это позволяет RSM следить за носителями.

Если вы забыли об этих советах, и происходит бесконечное повторение цикла монтирования и демонтирования ленты с резервной копией, то вы должны прекратить восстановление и сначала выполнить полную опись библиотеки (Full inventory).

Work Queue (Рабочая очередь). RSM не является многозадачной программой, то есть она работает последовательно, выполняя одну задачу за другой. Если ваше ленточное устройство имеет несколько приводов, и вы хотите, чтобы RSM подготовила две ленты, то она закончит работы с первой лентой, прежде чем перейти ко второй, даже если обе ленты доступны в равной степени.

Вы можете следить за ходом выполнения нескольких задач, наблюдая за рабочей очередью RSM. Для этого нужно выбрать объект Work Queue в дереве консоли. В правой панели будут выводиться задачи и их состояния.

Оснастка Disk Management (Управление дисками)

Оснастка Disk Management используется как место выполнения связанных с дисками задач, таких как управление разделами и томами, назначение букв дисков (накопителей), а также (для версий Windows Server 2003) создание и восстановление отказоустойчивых томов.

Примечание. Вопросы отказоустойчивых томов – это обширная и сложная тема, которая выходит за рамки изложения этого курса.
Примечание. Средства управления дисками в Windows Server 2003 существенно изменились по сравнению с Windows NT. В случае перехода к Windows Server 2003 из Windows 2000 вы уже знакомы с этими средствами и процедурами.

Если выбрать объект Disk Management в дереве консоли, то в правой панели появится информация о дисках на данном компьютере ( рис. 8.11). Кстати, это позволяет также определить, чем являются дисковые накопители, которые представлены в окне My Computer, – разделами одного диска или отдельными дисками.

Управление дисками. С помощью оснастки Disk Management вы можете управлять дисками на своем компьютере. Большинство этих задач достаточно опасны, если не прочитать соответствующую документацию. Список всех задач обширен, поскольку имеется огромное количество вариантов и комбинаций.

Управление буквами накопителей. Назначение букв накопителей (дисков) происходит в Windows Server 2003 иначе, чем в Windows NT (и более ранних версиях). Например, если у вас имеется устройство автоматической смены дисков ATAPI CD-ROM, то ему присваивается одна буква накопителя. Монтирование, демонтирование и управление всеми его носителями осуществляет Removable Storage Manager (RSM). В Windows NT 4 такое устройство имеет по отдельной букве накопителя для каждого из носителей, которыми оно может управлять, и когда вы ссылаетесь на одну из этих букв, происходит автоматическое переключение носителей.

В оснастке Disk Management вы можете видеть информацию о дисках своего компьютера

Рис. 8.11. В оснастке Disk Management вы можете видеть информацию о дисках своего компьютера

В Windows Server 2003 буквы накопителей присваиваются томам программой Mount Manager (MountMgr). Когда определенному тому присваивается буква накопителя, эта буква накопителя резервируется для данного тома в базе данных MountMgr (которая находится в реестре).

Когда у вас происходит модернизация из Windows NT в Windows Server 2003, имеющиеся назначения букв накопителей экспортируются в файл $Win_nt$.~bt\Migrate.inf, чтобы процесс установки на этапе текстового режима мог прочитать и импортировать эту информацию в базу данных MountMgr.

В случае модернизации из Windows 2000 в Windows Server 2003 система поддерживает существующую информацию о буквах накопителей (Windows Server 2003 выполняет эти функции тем же способом, что и Windows 2000).

При установке Windows Server 2003 "с нуля" MountMgr использует определенную процедуру для присваивания букв накопителям и продолжает использовать эту процедуру для томов или накопителей, которые добавляются на данном компьютере.

Программа установки выполняет следующие шаги для определения назначений букв накопителей.

  1. Просматриваются все несъемные диски в порядке их нумерации. Просмотр начинается с активных первичных (primary) разделов (если имеются разделы, помеченные как активные). Затем происходит переход к первому первичному разделу на каждом диске. Буквы накопителей назначаются по порядку с использованием следующей свободной буквы (кроме букв A и B).
  2. Просматриваются все несъемные жесткие диски, и происходит назначение букв накопителей всем логическим дискам в дополнительном (extended) разделе. Просматриваются все съемные диски (Zip, магнитооптические и т.д.) в порядке их нумерации. Буквы присваиваются с использованием следующей свободной буквы (кроме букв A и B).
  3. Назначаются буквы для накопителей на гибких дисках, начиная с буквы A.
  4. Назначаются буквы для накопителей CD-ROM с использованием следующей свободной буквы (кроме букв A, B и C).

Имеется одно исключение из этой схемы. Для унаследованных отказоустойчивых наборов Fault Tolerant на базовых дисках их последняя использовавшая буква накопителя записывается в собственной области на физическом диске. Во время установки Windows Server 2003 эти буквы накопителей запоминаются, и этим буквам отдается приоритет в процессе назначения букв накопителям. Поэтому унаследованным наборам Fault Tolerant буквы накопителей присваиваются раньше, чем другим разделам базовых дисков.

Назначенные буквы накопителей используются на постоянной основе и не изменяются, пока не произойдет удаление или ручное изменение какого-либо тома с помощью оснастки Disk Management. Исключением является случай, когда том (съемный диск) отключен и происходит подключение нового тома. Новый том может получить букву накопителя отключенного тома. Чтобы не нарушить распределение букв для накопителей при вводе новых томов, у вас должны быть подключены все существующие тома.

Logical Disk Manager (LDM) следит за последней буквой накопителя, назначенной динамическому тому, в своей базе данных конфигурации. Эта база данных находится в собственной области размером 1 Мб в конце каждого динамического диска. Когда MountMgr назначает буквы динамическим томам, происходит обращение к LDM, чтобы выяснить, имеется ли "предлагаемая буква накопителя", исходя из информации, содержащейся в базе данных конфигурации.

MountMgr присваивает буквы накопителей динамическим томам на основании следующего.

  • Если база данных MountMgr в реестре уже содержит какую-либо букву накопителя для тома, то данный том получает эту букву.
  • Если база данных MountMgr не содержит букву накопителя для данного тома, то MountMgr запрашивает у LDM "предлагаемую" букву накопителя. LDM просматривает свою базу данных конфигурации, и если найдена записанная буква накопителя, эта буква предлагается MountMgr.
  • Если эта предлагаемая буква накопителя свободна, то она присваивается данному тому и записывается в базу данных MountMgr, чтобы ее можно было использовать при следующем монтировании.
  • Если предлагаемая буква накопителя уже используется, то данному тому присваивается следующая свободная буква накопителя.
  • Если LDM не имеет предлагаемой буквы накопителя, то данному тому присваивается следующая свободная буква.

Чтобы управлять назначениями букв вручную, щелкните правой кнопкой на нужном накопителе и выберите в контекстном меню пункт Change Drive Letter And Path (Изменить букву накопителя и путь).

Оснастка Services and Applications (Службы и приложения)

Последняя оснастка в дереве консоли Computer Management – это Services and Applications. При выборе объекта Services в дереве консоли выводится информация об установленных службах. Сведения по управлению службами приводятся на протяжении всего этого курса, поэтому я не буду здесь вдаваться в подробности.

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

  • Во вкладке General (Общие) вы можете изменять способ запуска данной службы. Вы можете также запускать службу, прекращать ее работу, приостанавливать и возобновлять работу службы.
  • Во вкладке Logon (Вход) вы можете изменять учетную запись, которая закрепляется за данной службой.
  • Во вкладке Recovery (Восстановление) вы можете выбирать действия для случаев отказа службы. Возможны такие действия, как перезапуск службы, перезагрузка компьютера или запуск определенного файла (обычно программы уведомления, которая дает знать администратору, что произошло).
  • Во вкладке Dependencies (Зависимости) вы можете видеть имена служб, которые зависят от данной службы, а также имена служб, от которых зависит данная служба. Эти наборы очень важны, когда вы вносите изменения в поведение службы.
Araz Heyderov
Araz Heyderov
Россия
iketommoe ike
iketommoe ike
Тайвань (Китай)