По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Когда вы разрабатываете какое-то программное обеспечение, вы поначалу можете не задумываться о часовых поясах. Если только вы не живете в стране, которая имеет несколько часовых поясов, например, в США или России. Не так давно я столкнулся с проблемой, которая была связана с часовыми поясами. Было несколько юнит-тестов, имеющих дело с датами. Они работали в моем офисе во Франции, но не работали в Марокко у новых членов нашей команды. Вот тот самый юнит-тест, который работает во Франции, но не работает в Марокко. Для меня это была возможность научиться правильно обрабатывать дату и время в международном программном обеспечении. В этой статье я расскажу о часовых поясах и поделюсь некоторыми правилами, которым нужно следовать. Краткое введение в часовые пояса Поскольку земля имеет форму практически сферы, то солнце восходит в Японии, а садится в Америке. Если бы все использовали глобальное время, то, например, 9:00 было бы восходом солнца в Японии, но закатом в Америки. Это было бы не очень удобно. Для того, чтобы время согласовывалось с фазами солнца, необходимо перейти от глобального времени ко времени в соответствии с вашим местоположением. В результате земной шар разбивается на часовые пояса (time zones), и каждый из них имеет некоторое смещение (offset). Это смещение представляет собой количество минут, которое необходимо добавить к глобальному времени, чтобы получить время вашего часового пояса. Это смещение может быть положительным или отрицательным. Глобальное время называется UTC, оно расшифровывается как Universal Time Coordinate (всемирное координированное время). Вы также могли слышать о GMT – часовом поясе без смещения. Например, когда по UTC время 10:50, то в Сан-Франциско – 03:50 со смещением -0700, а в Пекине – 18:50 со смещением +0800. Однако смещение может быть не только в целых часах. Например, смещение Непала составляет +0545. В придачу к этому смещению, связанному с часовым поясом, в некоторых странах еще дополнительно смещают часы два раза в год. DST, или летнее время, добавляет еще один час к смещению часового пояса перед наступлением летнего времени. Затем часы переводятся обратно зимой. Цель такого смещения заключается в том, чтобы сделать дневное время длиннее. Самый простой способ определить часовой пояс – использовать базу данных часовых поясов IANA. В результате вы получите строку, такую как Europe/Paris (Европа/Париж), в соответствии с шаблоном Регион/Город. Кроме того, Microsoft поддерживает собственную базу данных часовых поясов Microsoft, которая используется в их операционных системах. Но использование этой базы может вызвать проблемы при запуске кроссплатформенных приложений .NET Core. IANA по-прежнему остается лучшим вариантом. База данных Microsoft обновляется не так часто, имеет меньшую историю и использует довольно любопытные названия часовых поясов (например, Romantic Standard Time – романтическое стандартное время) и подвержена ошибкам. Например, постарайтесь не перепутать следующее: Arab Standard Time, Arabic Standard Time и Arabian Standard Time. И последнее: есть множество способов записать дату. К счастью, спецификация ISO 8601 устанавливает общее правило для представления даты. Ноябрь 11, 2018 в 12:51:43 AM (в часовом поясе UTC+00:00) 2018-11-05T12:51:43Z
img
Прочитайте материал про реактивное и упреждающее распределение достижимости в сетях. Есть много случаев, когда более эффективно или в соответствии с конкретными ограничениями политики для плоскости управления изучать информацию о достижимости и топологии с другой плоскости управления, а не с помощью механизмов, описанных до этого момента в этой серии статей. Вот некоторые примеры: Две организации должны соединить свои сети, но ни одна из них не хочет позволить другой контролировать политику и работу своих плоскостей управления; Крупная организация состоит из множества бизнес-единиц, каждая из которых имеет возможность управлять собственной внутренней сетью в зависимости от местных условий и требований приложений. Организация должна каким-то образом позволить двум плоскостям управления взаимодействовать при переходе от одной к другой. Причины, по которым одна плоскость управления может получать информацию о доступности от другой, почти безграничны. Учитывая это требование, многие сетевые устройства позволяют операторам перераспределять информацию между плоскостями управления. При перераспределении достижимости возникают две проблемы, связанные с плоскостью управления: как обрабатывать метрики и как предотвращать петли маршрутизации. Примечание. Перераспределение можно рассматривать как экспорт маршрутов из одного протокола в другой. На самом деле импорт/экспорт и перераспределение часто используются для обозначения одного и того же, либо разными поставщиками, либо даже в разных ситуациях одним и тем же поставщиком. Перераспределение и метрики Взаимосвязь между свойствами связи, политиками и метриками определяются каждым протоколом плоскости управления независимо от других протоколов. Фактически, более описательная или более полезная метрическая система - это то, что иногда привлекает операторов к определенному протоколу плоскости управления. На рисунке 12 показаны два участка сети, в которых работают две разные управляющие плоскости, каждая из которых использует свой метод расчета метрик связей. Протоколы X и Y в этой сети были настроены с использованием двух разных систем для назначения показателей. При развертывании протокола X администратор разделил 1000 на скорость соединения в гигабитах. При развертывании протокола Y администратор создал "таблицу показателей" на основе наилучшего предположения о каналах с самой высокой и самой низкой скоростью, которые они могут иметь в течение следующих 10-15 лет, и назначил метрики для различных скоростей каналов в этой таблице. Результат, как показывает рисунок, несовместимые показатели: 10G каналы в протоколе X имеют метрику 100, в то время как в протоколе Y они имеют метрику 20. 100G-каналы как в протоколе X, так и в протоколе Y имеют метрику 10. Предполагая, что более низкая метрика предпочтительна, если метрики добавлены, канал [B, C, F] будет считаться более желательным путем, чем канал [B, D, G]. Однако, если учитывать пропускную способность, оба канала будут считаться одинаково желательными. Если между этими двумя протоколами настроено перераспределение, как следует обрабатывать эти метрики? Есть три общих решения этой проблемы. Администратор может назначить метрику в каждой точке перераспределения, которая передается как часть внутренней метрики протокола. Например, администратор может назначить метрику 5 для пункта назначения E на маршрутизаторе C при перераспределении из протокола X в Y. Этот пункт назначения, E, вводится в протокол Y с метрикой 5 маршрутизатором C. На маршрутизаторе F метрика для E будет от 25 для C. В G стоимость достижения E будет 35 по пути [F, C]. Желательность использования любой конкретной точки выхода для любого конкретного пункта назначения выбирается оператором при назначении этих ручных метрик. Метрика "другого" протокола может быть принята как часть внутренней метрики протокола. Это не работает в случае, когда один протокол имеет более широкий диапазон доступных метрик, чем другой. Например, если протокол Y имеет максимальную метрику 63, метрики 10G из протокола X будут "выше максимума"; ситуация, которая вряд ли будет оптимальной. При отсутствии такого ограничения маршрутизатор C внедрит маршрут к E со стоимостью 100 в протокол Y. Стоимость достижения E на маршрутизаторе F составит 110; стоимость в G будет от 130 до [F, C]. Примечание. Здесь вы можете увидеть компромисс между состоянием плоскости управления и оптимальным использованием сети, это еще один пример компромисса сложности при проектировании реальных протоколов. Перенос внешней метрики в отдельное поле добавляет состояние плоскости управления, но позволяет более оптимально управлять трафиком через сеть. Назначение или использование внешней метрики снижает состояние плоскости управления, но за счет возможности оптимизации потока трафика. Внешняя метрика может быть перенесена в отдельное поле, поэтому каждое сетевое устройство может отдельно определять лучший путь к каждому внешнему адресату. Это третье решение является наиболее широко используемым, поскольку оно обеспечивает наилучшую возможность управления трафиком между двумя сетями. В этом решении C вводит достижимость для E с внешней стоимостью 100. В F есть две метрики в объявлении, описывающие достижимость для E; внутренняя метрика для достижения точки перераспределения (или выхода) - 20, а метрика для достижения точки E во внешней сети - 100. В G внутренняя метрика для достижения точки выхода - 30, а внешняя метрика - 100. Как реализация будет использовать оба этих показателя? Следует ли протоколу выбирать ближайшую точку выхода или, скорее, самую низкую внутреннюю метрику? Это позволит оптимизировать использование локальной сети и потенциально деоптимизировать использование сетевых ресурсов во внешней сети. Должен ли протокол выбирать точку выхода, ближайшую к внешнему назначению, или, скорее, самую низкую внешнюю метрику? Это позволит оптимизировать сетевые ресурсы во внешней сети, потенциально за счет деоптимизации использования сетевых ресурсов в локальной сети. Или протоколу следует попытаться каким-то образом объединить эти две метрики, чтобы максимально оптимизировать использование ресурсов в обеих сетях? Некоторые протоколы предпочитают всегда оптимизировать локальные или внешние ресурсы, в то время как другие предоставляют операторам возможность конфигурации. Например, протокол может позволять переносить внешние метрики в виде метрик разных типов, при этом один тип считается большим, чем любая внутренняя метрика (следовательно, сначала предпочтение отдается самой низкой внутренней метрике и использование внешней метрики в качестве средства разрешения конфликтов), а другой тип - это когда внутренние и внешние метрики считаются эквивалентными (следовательно, добавляются внутренние и внешние метрики для принятия решения о пути). Перераспределение и петли маршрутизации В приведенном выше обсуждении вы могли заметить, что места назначения, перераспределенные с одного протокола на другой, всегда выглядят так, как будто они подключены к перераспределяющему маршрутизатору. По сути, перераспределение действует как форма резюмирования (что означает, что удаляется информация о топологии, а не информация о достижимости), как описано ранее в этой серии статей. Хотя этот момент не является критическим для показателей перераспределения, важно учитывать способность плоскости управления выбирать оптимальный путь. В некоторых конкретных случаях деоптимизация может привести к тому, что плоскость управления не сможет выбрать пути без петель. Рисунок 13 демонстрирует это. Чтобы построить петлю маршрутизации в этой сети: Маршрут к хосту A перераспределяется от протокола X к Y с вручную настроенной метрикой 1. Маршрутизатор E предпочитает маршрут через C с общей метрикой (внутренней и внешней) 2. Маршрутизатор D предпочитает маршрут через E с общей метрикой 3. Маршрутизатор D перераспределяет маршрут к хосту A в протокол X с существующей метрикой 3. Маршрутизатор B имеет два маршрута к A: один со стоимостью 10 (напрямую) и один с метрикой от 4 до D. Маршрутизатор B выбирает путь через D, создавая петлю маршрутизации. И так далее (цикл будет продолжаться, пока каждый протокол не достигнет своей максимальной метрики). Этот пример немного растянут для создания цикла маршрутизации в тривиальной сети, но все циклы маршрутизации, вызванные перераспределением, схожи по своей структуре. В этом примере важно, что была потеряна не только топологическая информация (маршрут к A был суммирован, что, с точки зрения E, было непосредственно связано с C), но и метрическая информация (исходный маршрут со стоимостью 11 перераспределяется в протокол Y со стоимостью 1 в C). Существует ряд общих механизмов, используемых для предотвращения формирования этой петли маршрутизации. Протокол маршрутизации всегда может предпочесть внутренние маршруты внешним. В этом случае, если B всегда предпочитает внутренний маршрут A внешнему пути через D, петля маршрутизации не образуется. Многие протоколы маршрутизации будут использовать предпочтение упорядочивания при установке маршрутов в локальную таблицу маршрутизации (или базу информации о маршрутизации, RIB), чтобы всегда отдавать предпочтение внутренним маршрутам над внешними. Причина этого предпочтения состоит в том, чтобы предотвратить образование петель маршрутизации этого типа. Фильтры можно настроить так, чтобы отдельные пункты назначения не перераспределялись дважды. В этой сети маршрутизатор D может быть настроен для предотвращения перераспределения любого внешнего маршрута, полученного в протоколе Y, в протокол X. В ситуации, когда есть только два протокола (или сети) с перераспределенной между ними информацией плоскости управления, это может быть простым решением. В случаях, когда фильтры необходимо настраивать для каждого пункта назначения, управление фильтрами может стать трудоемким. Ошибки в настройке этих фильтров могут либо привести к тому, что некоторые пункты назначения станут недоступными (маршрутизация черных дыр), либо приведет к образованию петли, потенциально вызывающей сбой в плоскости управления. Маршруты могут быть помечены при перераспределении, а затем отфильтрованы на основе этих тегов в других точках перераспределения. Например, когда маршрут к A перераспределяется в протокол Y в C, маршрут может быть административно помечен некоторым номером, например, 100, чтобы маршрут можно было легко идентифицировать. На маршрутизаторе D можно настроить фильтр для блокировки любого маршрута, помеченного тегом 100, предотвращая образование петли маршрутизации. Многие протоколы позволяют маршруту нести административный тег (иногда называемый сообществом или другим подобным именем), а затем фильтровать маршруты на основе этого тега.
img
Целью статьи является рассмотреть вопросы разбития жестких дисков и создание на разделах различных файловых систем в Linux. Будет рассмотрено управление дисками MBR и GPT. Использование утилиты mkfs. Основные утилиты для работы с разделами жестких дисков и создания файловых систем: fdisk, gdisk, parted, gparted, mkfs, mkswap. Для работы с жесткими дисками, такими операциями как изменение размеров логических разделов, разбиение жестких дисков, создание файловых таблиц на разделах жестких дисков требуются права суперпользователя. Переключится в данных режим из режима обычного пользователя можно командой sudo –s и введя пароль. Утилита fdisk , позволяет нам проводить различные манипуляции с разделами жесткого диска. Команда fdisk –l, мы можем посмотреть какие разделы у нас есть на жестком диске. И так вводим команду fdisk –l и видим у на 3 физических жестких диска /dev/sda, /dev/sdb, /dev/sdc соответствующих размеров. Нас интересует раздел /dev/sdc/ на 10 GB с которым мы будем производить манипуляции. Далее сделаем разбивку и создадим логические разделы. fdisk /dev/sdc Сразу получаем предупреждение, что раздел не содержит ни одного опознанного раздела. Создадим новые разделы. Поделим на 2 части. У нас получится следующее. Как мы можем увидеть создались 2 раздела и имеют ID 83, т.е. Linux раздел по умолчанию. Теперь давайте поменяем тип раздела. Это сделать можно просто в меню выбираем t – смена раздела. Выбираем номер, например, 2 и нажимаем L, чтобы посмотреть hex коды, соответствующие разным типам. Изменим тип раздела Linux на swap раздел подкачки. И теперь мы можем увидеть введя команду p. У нас изменился тип раздела на раздел подкачки. Обычно данные раздел используется, когда не хватает оперативной памяти у машины. Теперь необходимо записать производимые изменения командой w. После ввода данной команды диски синхронизируются и таблица разделов изменена. После этого введя команду fdisk –l мы можем убедиться, что действительно появились разделы. Для того, чтобы этот раздел действительно стал работать, как раздел подкачки, его необходимо отформатировать, как раздел подкачки. Для этого есть команда специальная mkswap /dev/sdc2. Указываем команду и раздел, который должен быть размечен. После команды mkswap раздел размечается и теперь его необходимо включить swapon /dev/sdc2. Для того, чтобы посмотреть какие разделы подкачки используются используем команду swapon –s. Для выключения раздела подкачки можно использовать обратную команду swapoff /dev/sdc2. На самом деле, как мы убедились разделы подкачки создавать достаточно просто. Если не хватает оперативки, то пере разбили, отформатировали и включили. Теперь поработает с первым разделом. Будем использовать команду mkfs. man mkfs В описании утилиты сказано, что данная утилита, строит Linux файловую систему. У данной утилиты, очень большое количество ключей. Использую данную утилиты мы можем отформатировать логический раздел в старую файловую систему ext2, с помощью команды mkfs –t ext2 /dev/sdc1. А затем переформатировать в более новую ext3. Файловые системы различаются тем, что более новая файловая система журналируемая. Т.е. ведется журнал изменений происходящего на данной файловой системе и в случае чего-нибудь мы можем восстановить или откатить изменения. Еще более новая файловая система ext4. Отличия данной файловой системы от предыдущей в том, что она может работать с большими размерами жестких дисков, может в себе хранить большие размеры файлов, намного меньше фрагментация. В случае если мы хотим использовать, какие-то более экзотические файловые системы, то нам необходимо скачать соответствующую утилиту. Например, если мы хотим использовать файловую систему xfs. Если мы попробуем отформатировать mkfs –t xfs /dev/sdc1 то мы получим ошибку. Попробуем поискать в кэше необходимый пакет apt-cache search xfs. Находим необходимый пакет. Как мы можем видеть это утилита для управления XFS файловой системой. Следовательно, необходимо установить данный пакет, и мы сможем отформатировать в xfs файловую систему. Устанавливаем apt-get install xfsprogs. После установки пробуем отформатировать в xfs. Учитывая то, что мы уже форматировали в файловую систему ext4, нам необходимо команду на форматирование запускать с ключом –f. Получаем в следующем виде: mkfs –t xfs –f /dev/sdc1 Теперь думаю интересно будет посмотреть, как сделать данный раздел рабочим под Windows операционную систему. Возвращаемся обратно в редактирование логических разделов fdisk /dev/sdc и говорим , что мы ходим поменять тип первого нашего раздела с помощью команды t. Далее выбираем метку, которую понимает операционная система Windows, это FAT/FAT16/FAT32/NTFS. Например, NTFS id 86. Изменили. В этом можно убедится выведя таблицу с помощью команды p. После изменения типа логического раздела, не забываем записать изменения с помощью команды w. Далее необходимо логический раздел отформатировать mkfs -t ntfs /dev/sdc1. Следовательно, как мы видим утилита mkfs прекрасно форматирует логические разделы в разные файловые системы, а если необходима специфическая файловая система всегда можно доставить недостающие компоненты и все будет работать. Если посмотреть мануал по fdisk, то мы увидим, что он не умеет работать с дисками GPT и не может работать с большими разделами, только с MBR. Как известно в современных ПК уже используется UEFI, которая работает с GPT. А как следствие мы можем сделать вывод, что fdisk не сможет работать с дисками размер которых более 2 ТБ. Для работы с большими дисками можно использовать другую программу gdisk. man gdisk Как можно прочитать в описании gdisk – это интерактивный манипулятор для работы с gpt. Он работает практически также как и fdisk, только для начала необходимо переразбить жесткий диск из MBR в GPT. gdisk /dev/sdc Нажав на знак вопроса получим небольшую подсказку. И нажимаем команду o для создания нового пустого GPT. Получаем вот такое предупреждение. Которое говорит о том, что будет создан новый GPT и создаст маленький новый защищенный MBR для совместимости со старыми системами, иначе старые системы будут затирать GPT. С помощью команды p можно посмотреть список логических разделов, а с помощью команды w записать изменения. Разделы в данной программе создаются аналогично fdisk. Посмотрим еще одну утилиту parted. man parted Интересная программа имеющая больший функционал, чем fdisk и gdisk. Умеет работать с дисками более 2 ТБ, умеет изменять разделы на горячую, может создавать разделы сразу с файловой системой, искать и восстанавливать разделы на жестком диске. Команда parted –l покажет информацию по подключенным жестким дискам, типам разделов и логическим разделам. Заходим в редактирование жесткого диска parted /dev/sdc и набираем слово help. Получаем достаточно справку с опциями. У данной утилиты есть графический интерфейс, если вы работаете с GUI. Можно установить через apt-get install gparted.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59