В чем разница между btrfs raid1 и btrfs -m dup -d dup на одном устройстве

В общем, просто эффективный uid равен 0. Бит "setuid" в исполняемых файлах на самом деле устанавливает эффективный uid процесса. Если эффективный uid не равен нулю, а реальный uid не равен нулю, программа работает от имени "непривилегированного" пользователя. Применяются следующие правила:

Непривилегированные процессы могут устанавливать эффективный идентификатор пользователя только на реальный идентификатор пользователя, эффективный идентификатор пользователя или сохраненный set-user-ID. Непривилегированные пользователи могут устанавливать реальный ID пользователя только на реальный ID пользователя или эффективный ID пользователя.

Что касается Android, нет, я не думаю, что удаления sudo и su достаточно - если любая программа может иметь установленный бит seteuid, эта программа потенциально может работать с uid = 0. Если есть возможность получить доступ к внутренней файловой системе как root в любое время, то такая программа может быть внедрена, и доступ root будет возможен.

4
26.10.2016, 12:50
5 ответов

Что касается блоков переназначения SSD. SSD внутренне не распознает разделы, он обрабатывает любой сектор одинаково. Таким образом, наличие одного и того же файла (данных) в виде двух копий на одном разделе - это тот же результат, что и наличие двух копий на разных разделах. Не все твердотельные накопители одинаково кодируют внутреннее хранилище; некоторые могут выполнять блочную дедупликацию, а другие нет.

Для SSD-накопителя: Теоретическая целостность данных будет такой же, любой сектор может выйти из строя, но дублирующиеся данные / метаданные обеспечивают избыточность. Скорость чтения / записи тоже такая же. SSD не имеет разницы во времени поиска или чтения по диску.

Для вращающегося диска: Теоретическая целостность данных будет такой же, любой сектор может выйти из строя, но дублирующиеся данные / метаданные обеспечивают избыточность. Скорость чтения / записи тоже такая же. Производительность чтения, с которой я не могу говорить, так как необходимо провести тестирование. Чтение может быть выполнено как из копии файла (в дублировании), так и из любого раздела.Однако я не знаю, может ли BTRFS это оптимизировать; т.е. используйте копию / раздел, который быстрее перед пластиной (быстрее). При использовании двух разделов производительность записи снизилась бы еще больше, поскольку для выполнения операции ввода-вывода необходимо записать обе копии. Раздел во второй половине диска всегда будет медленнее искать / читать / писать.

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

0
27.01.2020, 20:53

Поздно на вечеринку, но все равно. У меня был тот же вопрос и у человека, которого я читал (о dup):

«Например, SSD-диск может внутренне переназначать блоки на одну копию, таким образом дедуплицируя их. Это сводит на нет цель увеличения избыточности (sic ) и просто тратит впустую место »

Возможно, raid1 был бы способом избежать этой проблемы (или нет).

0
27.01.2020, 20:53

Я нашел по крайней мере одно отличие:

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

Источник: https://btrfs.wiki.kernel.org/index.php/Gotchas#raid1_volumes_only_mountable_once_RW_if_degraded

Тома raid1 можно монтировать только один раз RW, если они деградировали

Даже если нет отдельных фрагментов профиля, тома raid1, если они становятся degraded может быть смонтирован только один раз для чтения и записи с опциями -o degraded,rw.

Примечания:

  • Этого не происходит (как сообщается), когда имеется более 2 устройств.

  • Этого не происходит с томами профилей raid10.

  • Это часто происходит из-за проблемы «Неполное преобразование фрагментов», когда остаются отдельные фрагменты.

Возможное восстановление:

  • Если он по-прежнему доступен для чтения и записи, вы можете преобразовать фрагменты из профиля raid1 в профиль одиночный (или дублированный профиль), если у вас достаточно места).

  • Если оно по-прежнему доступно для чтения и записи, вы можете заменить отсутствующее устройство btrfs.

  • Когда том raid1 зависает в режиме только для чтения по какой-либо причине, его можно восстановить только путем сброса его содержимого, его повторного создания и восстановления содержимого.

0
27.01.2020, 20:53

Я бы предложил использовать вариант с dupвместо того, чтобы размещать несколько разделов на одном устройстве и совершать набеги на них. Вариант с рейдом плохой, потому что рейд запрашивает чтение обеих копий во время доступа к данным (это хорошо для обычного рейда с несколькими -устройствами, потому что, если какое-либо из устройств быстрее, данные будут доступны раньше ). При использовании ротационного устройства с одним устройством это приводит к тому, что головка чтения переходит между разными разделами, поэтому, если у вас есть несколько запросов в очереди (, в обычном случае )вы получите очень плохую производительность. Увеличение глубины очереди и планировщик CFQ может немного уменьшить общую задержку, но лучше избегать этого беспорядка.

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

Я не уверен в реализации dup, но полагаю, что dupне отодвигает устройство копии на 1/2 от первой копии, поэтому dup, вероятно, также увеличивает производительность записи. При рейде с одним устройством производительность записи также будет плохой, потому что одну операцию логической записи необходимо записать в двух местах на физическом ротационном устройстве, а разница всегда составляет 1/2 устройства, поэтому вы получите алгоритм, который практически реализует общий поведение в худшем случае для вращательного устройства.

4
27.01.2020, 20:53

Единственное различие между DUP и RAID1, которое я могу придумать:

  • Если у вас есть (, как и у меня ), некоторые твердотельные накопители, которые, когда они не используются, начинают говорить, что случайные сектора не читаются
  • Тогда DUP может быть PANIC, так как один из этих нечитаемых секторов в заголовке раздела BTRFS и BTRFS не может монтировать, читать и т. д. что-либо, хранящееся на нем. В то время как с RAID1 вы монтируете другой (, если нет ни одного из этих нечитаемых секторов в другом заголовке раздела BTRFS ), и выполняете очистку, чтобы повторно -записать нечитаемые сектора.
  • RAID1 подразумевает два раздела, каждый со своим заголовком, поэтому, если один заголовок был поврежден (относительно -формата раздела ), а заголовок другого раздела правильный, вы можете смонтировать другой раздел и получить доступ к поврежденному разделу. режим и исправить (добавить еще один новый раздел, удалить недостающий, сбалансировать на уровне RAID1)

Теперь моя личная история с твердотельными накопителями KingDian, которые страдают от случайных нечитаемых секторов после длительного периода времени (более восьми дней )без питания; и как BTRFS RAID1 может войти в систему и позволить использовать такие SSD (до коллизии на нечитаемых секторах ).

Во-первых, я хочу поблагодарить BTRFS и ее DUP (, я протестирую ее в ближайшем будущем ), а RAID1 (уже протестирован с отличными результатами ); это позволило мне использовать твердотельные накопители марки KingDian. Для брендов Yucun и Samsung я пока не вижу проблемы с «нечитаемыми секторами», которая показывает все три твердотельных накопителя марки KingDian. Я использую в общей сложности 11 твердотельных накопителей, один KingDian умер, поэтому сейчас я использую только 10 )и один SSD KingDian 1TiB, который я боюсь начинать использовать (, я планировал использовать его в FAT32 или NTFS для Телевизор воспроизводит мои легально купленные DVD, конвертированные в H.264/2xAAC ).

Проблема с твердотельными накопителями KingDian действительно странная, поэтому я пошагово расскажу, что делать, чтобы увидеть проблему:

  1. Создайте раздел только для 90% и отформатируйте его, пока несколько дней назад я не использовал Ext4 (Linux )/ NTFS (Системный раздел Windows ); Я действительно ненавижу Windows, но я вынужден использовать ее.
  2. Установить систему на этот раздел
  3. Используйте систему каждый день --> Нет проблем
  4. Выключите питание и оставьте его включенным более чем на восемь дней --> Проблема возникает на KingDian SS
  5. Чтобы увидеть проблему, я загружаюсь с дистрибутива Live Linux (DVD / USB / etc ), я в основном использую SystemRescueCD, но любой другой, у которого есть "ntfsclone" / "partclone. *" / "partimage " или просто "дд" будет служить
  6. Я делаю клонирование раздела, сохраняя его в виде файла (аналогично сохранению системного раздела на резервном носителе)
  7. Возникла проблема: некоторые сектора (между несколькими и почти 25 или 30 )не читаются
  8. Я принимаю к сведению (на бумаге )какие сектора не читаются
  9. Теперь начинаются странные вещи, я правильно отключил питание и оставил его выключенным еще на восемь или более дней
  10. Я повторяю шаги с 4 по 7, чтобы увидеть, какие сектора теперь не читаются, список сильно меняется,в большинстве случаев оба списка не имеют ничего общего, поэтому все нечитаемые сектора стали доступны для чтения, а другие, которые были доступны для чтения, теперь не читаются
  11. Я могу повторять это много раз (вообще без записи на SSD )и все списки не -нечитаемых секторов, как правило, не имеют ни одного общего сектора (среди которых иногда есть по двум спискам)

Почему эти твердотельные накопители (только с торговой маркой KingDian )делают такие уродливые и странные вещи? случайным образом говорят, что некоторые сектора не читаются после длительного периода (более восьми дней )без питания, а после другого периода (более восьми дней )без питания они снова становились читаемыми.

Самое странное, что после того, как они стали нечитаемыми, а затем снова стали доступными для чтения, все они всегда содержат правильные данные.

Кроме того, я сверяюсь с данными SMART, и там говорится, что нового перераспределенного сектора нет (он есть, потому что я когда-то использовал в Windows инструмент для принудительного перераспределения нечитаемого сектора ).

Информация SMART также говорит об отсутствии ошибок чтения, при этом некоторые сектора не читаются, а также говорит об отсутствии ошибок записи.

Очевидно, что нет ошибки "чтения", ничего "прочитано" с "неправильными" данными... что технически отличается от того, что невозможно прочитать... и в данных SMART нет поля, которое, как я вижу, не показывает количество читаемых ошибок... и т. д.

Между прочим, если я повторно -запишу нечитаемые сектора с данными, они снова станут доступными для чтения без повторного -отображения какого-либо сектора, возможно, потому, что внутренние, которые используются, не являются неисправными (помните, что SSD при записи использует разные места для продления жизни, SSD использует внутреннюю карту LBA -Реальное положение внутри чипов ).

Кстати,клонирование раздела с 30 ГБ данных на нем и без этой проблемы заняло менее минуты (SSD может читать со скоростью 550 МБ/с при клонировании раздела, то есть в основном при последовательном чтении ); но с 25 нечитаемыми секторами это заняло более 24 часов (с игнорированием таких ошибок, иначе оно не закончится )и в нем будут какие-то "испорченные" данные (тот, который не удалось прочитать ).

Вот где меня спасает BTRFS:

  • Сначала я использовал два раздела на одном SSD на уровне RAID1 BTRFS для ДАННЫХ и МЕТАДАННЫХ
  • Теперь я знаю о DUP вместо RAID1, я буду тестировать с DUP; и это позволит мне не запускать каждый раз резервное копирование двух клонированных разделов, а только одного; это было бы здорово (если бы это работало)

Как это стало в спасении меня? Легко :Прежде чем делать клонирование носителя BackUP, я запускаю очистку того, что я хочу клонировать, чтобы нечитаемые сектора заставляли BTRFS перезаписывать их другой копией (скачком, не было нечитаемого сектора для обе копии одновременно и в одном месте ).

С двумя разделами работал нормально (медленно, но работал )и не терял некоторые сектора клонированных данных; теперь я должен протестировать с DUP на одном разделе вместо RAID1 на двух разделах одинакового размера.

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

Другой вариант очевиден :Больше не использовать твердотельные накопители KingDian, так как до сих пор это были единственные из тех, что я использовал, которые представляли эту проблему (нечитаемые сектора после длительных периодов без питания ).

Представьте, что вы уезжаете в отпуск,отключил общее питание дома, вернулся, а на ваших SSD есть нечитаемые части!!! Большая проблема для домашнего пользователя, а не для центров обработки данных, где твердотельные накопители всегда запитаны.

Отличная BTRFS!!! Теперь подумайте о другой уродливой части (для меня ), как сделать что-то подобное для раздела NTFS (системного раздела Windows )? Ни в коем случае, NTFS не имеет такой опции (запоминать версии Windows HOME, а не СЕРВЕРА и т. д. ).

Итак, спасибо BTRFS, Linux намного лучше, чем я думал несколько дней назад... я пользуюсь Linux уже несколько десятков лет... но отказался попробовать BTRFS, потому что вся ПЛОХАЯ информация о полном повреждении и т.д.; пока я не столкнулся с проблемой SSD и мне не нужно что-то с избыточностью.

Другим вариантом, о котором я думал, была ZFS, гораздо более сложная, не интегрированная в загрузчик GRUB2, не интегрированная в ядро ​​(и, возможно, никогда не будет, потому что система лицензирования )и т. д.; так что я фанатично попробовал (вчера )BTRFS... и какой сюрприз, он кажется действительно стабильным, относительно простым в использовании (предупреждение при добавлении нового диска, он добавляет его в RAID0, а не в RAID1, я делаю не используйте RAID5/6/и т. д. и не хотите использовать такие ), легко восстанавливаются после катастрофических повреждений (повторно -форматируют один из двух разделов )без потери данных (на твердотельных накопителях, отличных от KingDian )и т. д.

Конечно, я не использую под-тома, моментальные снимки и т. д. только как простую файловую систему для корня Linux "/" в RAID1; как я уже сказал, я должен протестировать с DUP вместо RAID1, но я боюсь (я сильно параноик )я останусь с ДВУМЯ разделами на одном SSD на RAID1, так как -нечитаемый сектор в заголовке раздела будет означать, что все BTRFS не подлежат восстановлению/чтению.

Если бы я все еще мог найти твердотельный накопитель KingDian среди таких случайных нечитаемых секторов, это сэкономило бы деньги, поскольку твердотельные накопители недешевы, поскольку я хочу использовать только твердотельные накопители с одной битовой ячейкой, а это действительно дорого,больше по мере увеличения размера (я говорю, что я очень параноик ), и у меня есть более 10 внестрочных -резервных копий всех данных с историей более ста последних состояний (слишком параноик, я знаю ).

2
27.01.2020, 20:53

Теги

Похожие вопросы