Khajiit
и systemd тоже нет?
Δαρθ
В первую очередь этого нет конечно же
Khajiit
No comments
Hennadii
А скрипты вызывают необходимость держать специально заточенный под зфс initramfs потому что файловая система zfs не может быть вкомпилирована внутрь ядра Linux - это делать запрещено. пока модуль zfs в ядро не загружен - тогда само ядро Linux про zfs ничего не знает и работать с ним не умеет. "в случае btrfs" ситуация другая, потому что btrfs входит в состав ядра и ядро про файловую систему btrfs знает. А скрипты вызывают необходимость держать специально заточенный под зфс initramfs это вызывают не скрипты, а несовместимость лицензий GPLv2 и CDDL - это было решение компании Sun Microsystems - открыть исходный код файловой системы ZFS под лицензией CDDL а не под лицензией GPLv2. Да и Линус Торвальдс "не рекомендовал пользоваться модулем zfs из-за несовместимости лицензий CDDL и GPLv2". это - как раз и есть отрицательные побочные эффекты того, что приходится "жить out of tree относительно кода ядра". хотя, положительных эффектов от того, что приходится "жить out of tree относительно кода ядра" наверное все-таки больше - потому что можно поставить любую версию zfs на любую версию ядра, а не довольствоваться тем, что находится внутри ядра и дается в готовом виде - для простых файловых систем ext4 / xfs - это не проблема, а для zfs такое отсутствие гибкости - достаточно неудобно, когда руки связаны и нет возможности самому выбирать версию zfs. так что, похоже на то, что без дополнительных скриптов в initramfs монтировать рутовый раздел zfs сразу ядром Linux никак не получится сейчас и в будущем - я не понимаю, как это можно было бы сделать, пока zfs под лицензией CDDL. https://www.opennet.ru/opennews/art.shtml?num=52164 Напомним, что код ZFS распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции ZFS on Linux в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости проектом "ZFS on Linux" было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра.
Vladislav
@gmelikov @simubishi @neurox А мы будем что-то делать с chatgpt ботом в чате?
Ivan
Ivan
хотя хз
Δαρθ
А скрипты вызывают необходимость держать специально заточенный под зфс initramfs потому что файловая система zfs не может быть вкомпилирована внутрь ядра Linux - это делать запрещено. пока модуль zfs в ядро не загружен - тогда само ядро Linux про zfs ничего не знает и работать с ним не умеет. "в случае btrfs" ситуация другая, потому что btrfs входит в состав ядра и ядро про файловую систему btrfs знает. А скрипты вызывают необходимость держать специально заточенный под зфс initramfs это вызывают не скрипты, а несовместимость лицензий GPLv2 и CDDL - это было решение компании Sun Microsystems - открыть исходный код файловой системы ZFS под лицензией CDDL а не под лицензией GPLv2. Да и Линус Торвальдс "не рекомендовал пользоваться модулем zfs из-за несовместимости лицензий CDDL и GPLv2". это - как раз и есть отрицательные побочные эффекты того, что приходится "жить out of tree относительно кода ядра". хотя, положительных эффектов от того, что приходится "жить out of tree относительно кода ядра" наверное все-таки больше - потому что можно поставить любую версию zfs на любую версию ядра, а не довольствоваться тем, что находится внутри ядра и дается в готовом виде - для простых файловых систем ext4 / xfs - это не проблема, а для zfs такое отсутствие гибкости - достаточно неудобно, когда руки связаны и нет возможности самому выбирать версию zfs. так что, похоже на то, что без дополнительных скриптов в initramfs монтировать рутовый раздел zfs сразу ядром Linux никак не получится сейчас и в будущем - я не понимаю, как это можно было бы сделать, пока zfs под лицензией CDDL. https://www.opennet.ru/opennews/art.shtml?num=52164 Напомним, что код ZFS распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции ZFS on Linux в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости проектом "ZFS on Linux" было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра.
Это дикая сумасшедшая чушь. Во-1, зфс прекрасно вкомпилируется в ядро, причём штатно. Ррраз, configure -- и в конфигураторе ядра появляется галочка "zfs". И потом оно даже работает. Во-2, никакая, ну вот вообще никакая лицензия НЕ ЗАПРЕЩАЕТ так делать. Запрещает потом результат в бинарной форме раздавать, да, наверное. Но у себя на локалхосте -- ну вот ни разу.
Vladislav
хотя хз
Нет, это прям вырезки из chatgpt
Δαρθ
А скрипты вызывают необходимость держать специально заточенный под зфс initramfs потому что файловая система zfs не может быть вкомпилирована внутрь ядра Linux - это делать запрещено. пока модуль zfs в ядро не загружен - тогда само ядро Linux про zfs ничего не знает и работать с ним не умеет. "в случае btrfs" ситуация другая, потому что btrfs входит в состав ядра и ядро про файловую систему btrfs знает. А скрипты вызывают необходимость держать специально заточенный под зфс initramfs это вызывают не скрипты, а несовместимость лицензий GPLv2 и CDDL - это было решение компании Sun Microsystems - открыть исходный код файловой системы ZFS под лицензией CDDL а не под лицензией GPLv2. Да и Линус Торвальдс "не рекомендовал пользоваться модулем zfs из-за несовместимости лицензий CDDL и GPLv2". это - как раз и есть отрицательные побочные эффекты того, что приходится "жить out of tree относительно кода ядра". хотя, положительных эффектов от того, что приходится "жить out of tree относительно кода ядра" наверное все-таки больше - потому что можно поставить любую версию zfs на любую версию ядра, а не довольствоваться тем, что находится внутри ядра и дается в готовом виде - для простых файловых систем ext4 / xfs - это не проблема, а для zfs такое отсутствие гибкости - достаточно неудобно, когда руки связаны и нет возможности самому выбирать версию zfs. так что, похоже на то, что без дополнительных скриптов в initramfs монтировать рутовый раздел zfs сразу ядром Linux никак не получится сейчас и в будущем - я не понимаю, как это можно было бы сделать, пока zfs под лицензией CDDL. https://www.opennet.ru/opennews/art.shtml?num=52164 Напомним, что код ZFS распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции ZFS on Linux в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости проектом "ZFS on Linux" было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра.
Ой спасибо, а то чо бы мы без совета "i'm finish" делали бы...
Δαρθ
А скрипты вызывают необходимость держать специально заточенный под зфс initramfs потому что файловая система zfs не может быть вкомпилирована внутрь ядра Linux - это делать запрещено. пока модуль zfs в ядро не загружен - тогда само ядро Linux про zfs ничего не знает и работать с ним не умеет. "в случае btrfs" ситуация другая, потому что btrfs входит в состав ядра и ядро про файловую систему btrfs знает. А скрипты вызывают необходимость держать специально заточенный под зфс initramfs это вызывают не скрипты, а несовместимость лицензий GPLv2 и CDDL - это было решение компании Sun Microsystems - открыть исходный код файловой системы ZFS под лицензией CDDL а не под лицензией GPLv2. Да и Линус Торвальдс "не рекомендовал пользоваться модулем zfs из-за несовместимости лицензий CDDL и GPLv2". это - как раз и есть отрицательные побочные эффекты того, что приходится "жить out of tree относительно кода ядра". хотя, положительных эффектов от того, что приходится "жить out of tree относительно кода ядра" наверное все-таки больше - потому что можно поставить любую версию zfs на любую версию ядра, а не довольствоваться тем, что находится внутри ядра и дается в готовом виде - для простых файловых систем ext4 / xfs - это не проблема, а для zfs такое отсутствие гибкости - достаточно неудобно, когда руки связаны и нет возможности самому выбирать версию zfs. так что, похоже на то, что без дополнительных скриптов в initramfs монтировать рутовый раздел zfs сразу ядром Linux никак не получится сейчас и в будущем - я не понимаю, как это можно было бы сделать, пока zfs под лицензией CDDL. https://www.opennet.ru/opennews/art.shtml?num=52164 Напомним, что код ZFS распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции ZFS on Linux в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости проектом "ZFS on Linux" было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра.
А вот это верно -- и в основном потому, что ядерщики гадят специально.
Ivan
Нет, это прям вырезки из chatgpt
это понятно. вопрос в том это человек, у которого источник правды гпт или же прям тру бот.
Vladislav
Если он не способен фильтровать вывод chatgpt, то бот он или человек роли не особо играет
Hennadii
А скрипты вызывают необходимость держать специально заточенный под зфс initramfs потому что файловая система zfs не может быть вкомпилирована внутрь ядра Linux - это делать запрещено. Это дикая сумасшедшая чушь. Во-1, зфс прекрасно вкомпилируется в ядро, причём штатно. Ррраз, configure -- и в конфигураторе ядра появляется галочка "zfs". И потом оно даже работает. Во-2, никакая, ну вот вообще никакая лицензия НЕ ЗАПРЕЩАЕТ так делать. Запрещает потом результат в бинарной форме раздавать, да, наверное. Но у себя на локалхосте -- ну вот ни разу. Запрещено - не технически, а "юридически", из-за несовместимости лицензий Linux и zfs. Поэтому ни один дистрибутив и не поставляет в бинарном виде zfs вкомпилированного внутрь ядра Linux. Отсюда и "необходимость держать специально заточенный под зфс initramfs". Откуда ядро Linux может узнать как ему примонтировать рутовый раздел на zfs, пока модуль zfs не загружен в ядро?
Vladislav
А скрипты вызывают необходимость держать специально заточенный под зфс initramfs потому что файловая система zfs не может быть вкомпилирована внутрь ядра Linux - это делать запрещено. Это дикая сумасшедшая чушь. Во-1, зфс прекрасно вкомпилируется в ядро, причём штатно. Ррраз, configure -- и в конфигураторе ядра появляется галочка "zfs". И потом оно даже работает. Во-2, никакая, ну вот вообще никакая лицензия НЕ ЗАПРЕЩАЕТ так делать. Запрещает потом результат в бинарной форме раздавать, да, наверное. Но у себя на локалхосте -- ну вот ни разу. Запрещено - не технически, а "юридически", из-за несовместимости лицензий Linux и zfs. Поэтому ни один дистрибутив и не поставляет в бинарном виде zfs вкомпилированного внутрь ядра Linux. Отсюда и "необходимость держать специально заточенный под зфс initramfs". Откуда ядро Linux может узнать как ему примонтировать рутовый раздел на zfs, пока модуль zfs не загружен в ядро?
ubuntu передаёт привет
Khajiit
ubuntu передаёт привет
Так полная цитата выглядит иначе. И таки да: не поставляет. Поставляет прекомпилированные модули
Δαρθ
ubuntu передаёт привет
в убунте зфс таки модулем
Δαρθ
А вот какие есть варианты сверить снапшоты (посланный с принятым)? вариант 1 — пофайлово другие?
Vladislav
George
А вот какие есть варианты сверить снапшоты (посланный с принятым)? вариант 1 — пофайлово другие?
если хотите явно перепроверить не доверяя коду zfs (что в целом полезно для своего внутреннего параноика) - то да, тем же rsync можно в dry run чекнуть разницу. А так на уровне ZFS если снап принялся, то т.к. он иммутабелен то и поменять его нельзя, т.е. какой принят такой и есть, дальше только scrub юзать штатно целостность блоков проверять. Не помню кстати идёт ли сверка снапов по какой-то чексумме из merkle tree или просто по idу, кажется по idу (когда проверяется можно ли инкрементально принять снапшот). Если переживаете за целостность стрима - емнип в потоке от zfs send есть чексуммы и базовая проверка идёт итак.
George
я когда настраивал бекапы шифрованных датасетов так и делал, чтобы убедиться в отсутствии аффекта проблем о которых тикеты заводили люди (а они блин дико плавающие и слабо воспроизводимые, если верить что они есть)
Δαρθ
Так снапшот же атомарная сущность, он либо передался, либо нет
ага и файлики занулились как в недавних багах
George
доверять нельзя даже себе, так что желание понятно :)
Vladislav
? А зачем тебе сравнивать симлинки. Типо, rsync -a --dry-run и погнали
George
рсинк симлинки сравнивать будет по файлам на которые они ведут или просто по заданным в ним путям? пушо п.1 -- неверно.
емнип у него это конфигурится, но по дефолту не помню чтобы он симлинки резолвил
Vladislav
--copy-links --links
Δαρθ
Так они нулились в cp
https://github.com/openzfs/zfs/issues/12762 https://github.com/openzfs/zfs/issues/6224
Vladislav
а не -ac ?
Я просто как пример, полный список символов надо смотреть
Δαρθ
--copy-links --links
так мне ж сравнить надо а не скопировать их
Vladislav
так мне ж сравнить надо а не скопировать их
так что по-твоему делает rsync когда докопировывает поток?
Δαρθ
такто без симлинков я и тупо rhash могу прогнать
Vladislav
Правильно. Составляет дерево файлов и их хеши с обоих сторон А в dry-run он просто не выполняет саму операцию копирования
Δαρθ
допустим. а как именно решается такой же симлинк или другой?
Vladislav
допустим. а как именно решается такой же симлинк или другой?
Если он есть и ведёт на тот же файл, тот же Если ты не задал отдельно --copy-links, тогда копируется файл вместо линка, поэтому он выдаст *разные файлы*, если встретит линк
Δαρθ
если они изначально вели вне датасета
Δαρθ
или будут вести на разные файлы да
Vladislav
'на тот же файл' - а на бекап-сервере симлинки никуда не ведут обычно
???? От того, что у тебя симлинк потерял файл назначение - у тебя симлинк не исчезает
Vladislav
Я не сказал, что он проверяет конечный файл, только *путь*
Δαρθ
а если они разные будут (своим путём)? или один отсутствовать будет
Δαρθ
"ведет на тот же файл" != "имеет тот же путь" мне важно п.2 сверить независимо от наличия файлов куда он ведет
Δαρθ
эээ? если это он сверяет то хорошо бы он ругался типа совпало-несовпало и что именно но ваще идею понял и сам проверю
Vladislav
А теперь я всё это почищу, потому что это флуд
Fedor
похоже опять словил PANIC: zfs: adding existent segment to range tree https://dpaste.com/4U2LXT8CY
Roman
https://github.com/truenas/zfs/pull/268
Fedor
похоже опять словил PANIC: zfs: adding existent segment to range tree https://dpaste.com/4U2LXT8CY
Подскажите, как можно починить пул При попытках записать данные, сделать экспорт или запустить scrub, процесс намертво зависает через некоторое время Никаких ошибок, кроме PANIC: zfs: adding existent segment to range tree в момент загрузки модуля нет Опции vfs.zfs.recover=1 vfs.zfs.zil.replay_disable=1 vfs.zfs.spa.load_verify_data=0 vfs.zfs.spa.load_verify_metadata=0 не особо помогают, в определённый момент работа с пулом виснет, опять же без каких-либо ошибок в логах Ядро 6.12.10 zfs 2.3.0 Все началось с момента, когда попытался скопировать на пул файл 400Гб
Александр
Какая версия zfs? какие пулы, какие диски? Виртуалка или физическая машина?
Fedor
Ну, поехали разбираться. smartctl что говорит про все диски?
С дисками всё ок, на одном есть 12 relocation, но они не растут и short тест ок И тем не менее планирую его заменить Так же есть Offline_Uncorrectable
Александр
Ядро 6.12.10 zfs 2.3.0 Железная машина, подключено к hba
Интересно, такая ошибка была но должна быть пофиксена уже давно. сколько место на пуле занято?
Александр
vfs.zfs.recover=1 vfs.zfs.zil.replay_disable=1 vfs.zfs.spa.load_verify_data=0 vfs.zfs.spa.load_verify_metadata=0 вот это ТОЛЬКО для r/o монтирования и эвакуации данных
Александр
работать с таким пулом нельзя
Александр
2. Вынимаешь ценное rsync
Александр
Это единственный путь
Fedor
100% только перенос данных
и никаких других ошибок Может ли тут быть причиной какое-то более раннее повреждение данных? Есть ли варианты как-то выяснить причину?
Александр
и никаких других ошибок Может ли тут быть причиной какое-то более раннее повреждение данных? Есть ли варианты как-то выяснить причину?
Скорее всего. Какое-то редкое стечение обстоятельств и повреждение пула, не выявленное scrub-ом. Кстати, он же у вас делался раз в месяц?
Fedor
Нет Год назад делал до этого
Fedor
Там есть несколько поврежденных файлов 50-100Гб, после прогона scrub, два дня назад
Александр
Нет Год назад делал до этого
- У нас есть скриншоты бэкапов - Вы хотите сказать, бэкапы скриншотов? ... Раз в месяц обязательно zpool scrub
Александр
Память в сервере с ECC?
Александр
Да
Одобряем
Александр
Там есть несколько поврежденных файлов 50-100Гб, после прогона scrub, два дня назад
Редкий и странный случай, я б погонял memtest на сервере, данные эвакуировал, озадачился бэкапом
Fedor
Поискать бы конечно причины
Fedor
Возможно ли скопировать параметры датасетов?
Georg🎞️🎥
Возможно ли скопировать параметры датасетов?
При экспорте пула кажись идет в подарок )
Fedor
Да я думаю как переносить данные) В тот раз мне как-то удалось починить пул
Georg🎞️🎥
Fedor
Это да