The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Линус Торвальдс раскритиковал регистронезависимые файловые системы

28.04.2025 19:37

В ответ на публикацию исправления проблемы, связанной с поддержкой работы ФС Bcachefs в режиме без учёта регистра символов в именах каталогов, Линус Торвальдс заявил, что разработчики ФС видимо не способны учиться на своих ошибках, поскольку это далеко не первая проблема в коде обработки регистронезависимости.

Суть проблемы в том, что Unicode достаточно сложный стандарт и приведение символов к единому регистру (case folding) для всех его краевых случаев корректно не реализует практически никто. Более того - в силу специфики структуры Unicode, возможны ситуации, когда ожидания программ не совпадают с тем, как это фактически реализовано в той или иной файловой системе (например, кто-то считает символы "❤" и "❤️" одинаковыми в режиме без учёта регистра, а кто-то нет). Это приводит к ошибочному поведению - в том числе к потенциальным уязвимостям, потому что проверки в программах могут считать имена файлов разными, но ФС посчитает их совпадающими, или наоборот, что приведёт к проблемам с безопасностью.

По мнению Торвальдса, проблема некорректности приведения регистра символов в Unicode сводится к тому, что однозначного, правильного и безошибочного пути выполнять данную операцию просто не существует, и в результате попытки придать какое-то специальное значение байтам или их комбинациям ведут только к целым новым классам ошибок, включая и уязвимости. Торвальдс сообщил, что времена FAT давно закончились, но почему-то некоторые люди продолжают быть уверены, что поведение из эпохи FAT - полезная возможность, в то время как это ошибка.

  1. Главная ссылка к новости (https://www.phoronix.com/news/...)
  2. OpenNews: В ядро Linux для ФС Ext4 включена поддержка работы без учёта регистра символов
  3. OpenNews: Линус Торвальдс начал сожалеть, что принял Bcachefs в ядро Linux
  4. OpenNews: Линус Торвальдс снова недоволен коммитами в Bcachefs
  5. OpenNews: Автора BcacheFS временно отстранили от разработки ядра Linux из-за нарушения кодекса поведения
  6. OpenNews: Новый метод фишинга с использованием unicode-символов в домене
Автор новости: Аноним
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63149-bcachefs
Ключевые слова: bcachefs, fs, bug
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (122) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 19:46, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Он ещё не учёл, что в каждой новой версии стандарта Unicode появляются новые правила. Одна программа может поддерживать одну версию стандарта, а другая другую и их поведение в обработке одинаковых данных будет отличаться.
     
     
  • 2.6, Аноним (6), 19:54, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • –5 +/
    А че такова? Чел хочет быть нужным. Кеды переписывают постоянно и ничего, многим даже нравится. Будет остаток жизни правки вносить, а там и финиш может крякнуть.
     
  • 2.18, Аноним (18), 20:08, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Он ещё не учёл, что в каждой новой версии стандарта Unicode появляются новые правила

    Какие например?

     
  • 2.27, Аноним (-), 20:31, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Стандарт Юникода нельзя сравнивать со Стандартами языков программирования. В Юникоде кодовые позиции символов не пересматриваются. Каждый следующий стандарт привязывает к определённой кодовой позиции какой-либо символ.
     
     
  • 3.28, Аноним (-), 20:33, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ... к незанятой кодовой позиции, какой-нибудь "новый" символ.
     
     
  • 4.126, Аноним (126), 23:29, 28/04/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.46, Карлос Сношайтилис (ok), 21:16, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Он-то как раз и учёл. И прямо об этом говорит.
    И появляются не "правила", а новые символы и новые, дополнительные интерпретации. Старое не ломается.
     

  • 1.2, Аноним (2), 19:50, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    > Торвальдс сообщил, что времена FAT давно закончились

    EFI system partition уже можно в ext4 ?!!

     
     
  • 2.8, Аноним (8), 19:55, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Разрешаю!
    Можешь реализовать, а мы посмотрим.
     
     
  • 3.26, Аноним (26), 20:25, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кто сказал CoreBoot и CanoeBoot?
     
     
  • 4.55, Аноним (55), 21:29, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    KogoeBoot?
     
     
  • 5.128, Аноним (126), 23:32, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Das U-Boot
     
  • 2.19, Я (??), 20:08, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    вообще можно.. но стандарт требует от производителей ефи добавлять только минимальный набор драйверов среди которых нет ехт4, но он не запрещает его добавлять а значит можно иметь ефи систем партишн на любом разделе.
     
     
  • 3.129, Аноним (126), 23:34, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А исполняемые файлы EFI в формате ELF можно?
     
  • 2.43, НяшМяш (ok), 21:04, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В маке вроде hfs+? =)
     
     
  • 3.51, Минона (ok), 21:24, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В маке APFS.
     
  • 2.52, sergey (??), 21:26, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В смысле? Вы в курсе что если в новой системе форматировать диск в ext4 в его в старой системе (где то же есть ext4) не сможете даже примонтировать !
     
     
  • 3.121, Аноним (121), 23:00, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    для переноса данных используется ext3, а для починки новой системы не используйте древний rescue. а спасти данные можно - читать то можно, только писать нельзя...
     
     
  • 4.124, Аноним (124), 23:04, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ему не надо чинить. Там на старой системе отказ монтировать из-за того, что диск отформатирован с поддержкой фич, о которых старое ядро внезапно не знает.
     
  • 2.53, Ан Оним (?), 21:27, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ESP - это ошибка
     
  • 2.72, Аноним (72), 22:01, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > EFI system partition уже можно в ext4 ?!!

    Можно, и не только в ext4: https://efi.akeo.ie/downloads/efifs-1.11/x64/

     
  • 2.119, ананим.orig (?), 22:56, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну да, времена FAT может и закончились, а вот мс до сих пор жив - поэтому секуре в бут вам всем, пока эту нежить не закопаете.
     

  • 1.3, Аноним (3), 19:51, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –12 +/
    Все правильно сказал. Регистронезависимость -- это Приколюха™, которую нам подложили диды. Те же самые диды, которые решили, что было бы Прикольно™, если бы IP-адреса записывались не только как десятичные числа через точку, но и как всякие там 127.1, 0x7f.0.0.1 и еще какая-нибудь ересь.
     
     
  • 2.7, Анон321 (?), 19:55, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +21 +/
    Молодому поколению похоже не объяснили, что ip-адрес это просто число. А запись числа может быть любой.
     
     
  • 3.11, Аноним (11), 19:58, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Старшему поколению походу не объяснили, что поддерживать множество способов ввода числа нужно сразу везде: во всех приложениях с полем ввода IP-адреса, во всех библиотеках, парсящих IP-адрес из строки. В итоге разные приложения/библы поддерживают разную часть Прикольного™ RFC.
     
     
  • 4.140, Аноним (140), 00:50, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А по какой причине предъява людям, придумавшим ИП, а не писателям программ втч себе?!
     
  • 3.12, Илья (??), 19:59, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > А запись числа может быть любой.

    А есть хотя бы одна причина использовать какие-то числа кроме ОБЫЧНЫХ ?

     
     
  • 4.21, Страдивариус (?), 20:22, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Чуви явно не видел IP-адреса IPv6. Ничего, подрастёшь и узнаешь, а пока делай ДЗ и кушай кашку
     
  • 4.79, ProfessorNavigator (ok), 22:10, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А есть хотя бы одна причина использовать какие-то числа кроме ОБЫЧНЫХ ?

    Что такое "обычные" числа? Беззнаковые целые длиной 8, 16, 32, 64 бита? Знаковые той же длины? Т.н. числа с плавающей точкой? Это раз.

    Два - вон там рядом новость про qbittorrent. Торрентами пользуетесь? Наверняка. А в их спецификации есть такая штука, как DHT. Где идентификатор каждого узла - число в 20 байт длинной. Более того, для работы DHT над такими числами ещё и разные операции совершать нужно - XOR, сравнение. Шифрование - тоже внезапно сплошь и рядом работа с "длинной" арифметикой. А без шифрования вы бы даже сюда не попали - сайт то скорее всего по протоколу https загружен.

     
  • 4.84, Аноним (-), 22:13, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    16тиричная система не так уж и плоха для адресов от 00 до ff в каждом из 4 сегментов адреса. 7F.0.0.1 или C0.A8.0.1 выглядит ничуть не хуже десятичной системы, даже как-то лаконичнее.
     
     
  • 5.131, Анониссимус (?), 23:44, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Суть не в том, хуже или лучше шестнадцатиричная запись десятичной. А в том, что вариант должен быть один, потому что это стандарт. Нет ни единой причины использовать много вариантов там, где можно использовать один. Было бы сэкономлено много человеколет, если бы стандартодатели выбрали бы один вариант для записи ip-адреса.
     
  • 4.143, Аноним (140), 00:51, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    а обычные у вас это какие числа?
     
  • 2.9, Илья (??), 19:57, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > 0x7f.0.0.1

    ужас. кошмар. Но я знаю одного человечка, который в HTTP статусах возвращал 0x404 и 0x200.

    Он думал, что хакеры вот так по крутому числа пишут, наверное

     
     
  • 3.95, Аноним (-), 22:25, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не мог он возвращать 0х404. На что вы намекаете? Говорите прямо
     
  • 3.97, Аноним (-), 22:28, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > 0х200

    HTTP статус-код 512 не является стандартным кодом; он был предложен для использования в определенных приложениях, чтобы указывать на ошибку сервера, когда произошла хотя бы одна ошибка.

    Мдя..

     
  • 3.125, Аноним (-), 23:13, 28/04/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.10, Аноним (1), 19:57, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +17 +/
    Вас это удивит, но наберите в браузере http://3644916501/63149
     
     
  • 3.20, Аноним (20), 20:08, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Однако
     
  • 3.22, Аноним (22), 20:23, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    молодец. Теперь бери этот айпишник - 3644916501 - и попробуй его вводить во все остальные проги: настройки прокси-сервера, нетворк-менеджер, какой-нибудь ip route add, cli докера, пинг, а еще вот сюда: https://www.wikihow.com/images/thumb/2/25/Find-Your-Subnet-Mask-Step-2-Version
     
     
  • 4.45, Аноним (45), 21:16, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Поэтому и изобретают json, потому как думают, что всё должно быть читаемым. Им же не приходит на ум, что процессор видит только числа и никаких скобок и прочего.
     
  • 3.25, Аноним Анонимович Анонимов (?), 20:25, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это что такое?!
     
  • 3.66, Аноним (66), 21:48, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Меня это ОЧЕНЬ удивило, спасибо.
     
  • 3.99, Аноним (-), 22:34, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Меня удивляет что это кого-то удивляет. И много ли тут людей меньше 20?
     
  • 2.38, 12yoexpert (ok), 20:57, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ты прав, малолетки придумали ipv6, у которого формы записи куда более логичны
     
  • 2.76, Аноним (-), 22:06, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот маску подсети можно было бы как-то проще делать или наоборот - более интересно. Хорошо хоть короткую преамбулу придумали и на этом спасибо.
     

  • 1.5, Аноним (5), 19:54, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Жиза, только сегодня пришлось иметь дело с renpy и файлы были в рандомном регистре повсюду. Часто с электроном то же самое.
     
  • 1.13, xsignal (ok), 20:02, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Пингвин прав - регистронезависимые имена файлов это сознательное упрощение для первых неискушённых пользователей персональных компьютеров времён MS-DOS с кодировкой ASCII, чтобы им было проще освоить диковинную чудо-технику. Но сейчас-то все уже прошаренные - называют файлы большими и маленькими буквами, некоторые даже с пробелами)) Зачем тащить этот анахронизм в сегодняшнее время? Тем более в юникоде понятие регистра действительно крайне расплывчатое...
     
     
  • 2.17, User (??), 20:08, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Некоторые даже в национальных кодировках, прикинь! Но, как правило - не ъ. Третьего дня мне тут пара человек зачесывала кто за название книг транслитом, кто против имен возможности имена пользователя\пароли в кодировках, отличных от дефолтной протестовал, кто на Power-Shell ругался...
    В общем, те-о-ре-ти-чес-ки да, но нет.
     
  • 2.74, Zenitur (ok), 22:02, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Но ведь и в ext4 недавно добавили nocase: https://www.opennet.dev/opennews/art.shtml?num=50581
     
     
  • 3.93, Аноним (93), 22:23, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Опционально. Очевидно - для узких нужд.
     
     
  • 4.104, Аноним (104), 22:40, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Опционально. Очевидно - для узких нужд.

    А кстати, для каких? Всегда было любопытно

     
     
  • 5.127, Rollo99 (ok), 23:32, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для совместимости с уже существующими решениями.

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

    Так как расширения у файлов стандартные и латиницей, но встречаются в любом регистре, а имена числовые, то было решено отформатировать раздел с этой опцией. Это позволило rsync-ом забирать только дельту.

    Сами файлики выгружаются из ИС с сохранением исходного расширения, а добавляются пользователями. За годы работы их накопилось весьма много.
    Разработчикам ушел запрос на доработку экспорта, по пока не переделали.

     
     
  • 6.134, Аноним (104), 00:11, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тут скорее имело бы смысл сделать запрос на доработку поиска (игнорировать регистр расширений).

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

    На самбе, емнип, все эти штуки с регистром и автоконвертацией имён решались настройками сервера.

     

  • 1.15, svsd_val (ok), 20:06, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Всё верно сказал!
     
  • 1.23, Аноним (23), 20:23, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    сердечки в юникоде еще и размер меняют?
     
     
  • 2.39, Аноним (-), 20:57, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >сердечки в юникоде еще и размер меняют?

    Не понял вопроса? Есть кодовая позиция, она может быть занята определённым символом, либо может быть незанятой, свободной. Если красному и чёрному сердцу отвели определённые кодовые позиции, то это разные символы. Если например, не вдаваясь в подробности просто, символ "сердце" привязяли к определённой кодовой позиции, и нет других привязок с графичеим русунком в форму сердца. То тогда все сердца разных форм и цветов будут считаться одним символом. Такова анатомия Юникода. Всё дело в привязке: "кодовая позиция = графический рисунок".

     
     
  • 3.49, Аноним (45), 21:19, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сердечки в имени файла. Это мы заслужили. За такое надо было бить по рукам с самого начала, а теперь все эти dei расплодились.
     
     
  • 4.80, Аноним (-), 22:11, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > За такое надо было бить по рукам с самого начала

    А за умляуты в имени файла тоже? Это же такая наглость желать писать слово правильно!
    А за иероглифы тоже?

    Слава богу таких даунито как ты никто не слушал. И позволили писать то, что они хотят.

     
     
  • 5.117, Аноним (45), 22:54, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сперва сердечки разных цветов, потом буквы разных цветов. Это же круто, мы же всё можем. И причем тут национальные алфавиты? Там есть сердечки?
     
     
  • 6.130, Аноним (104), 23:35, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Бессердечные алфавиты!
     
  • 4.148, Имя (?), 01:41, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    С чего бы анониму решать это? Хочу и использую, вот, держи 🤡
     
  • 3.136, Аноним (23), 00:35, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Не понял вопроса?

    ну вот у "а" и "А" одна и таже буква, имеют разные коды, и мы говорим что "А" это буква "а" большого размера (верхнего регистра). Ну вот с буквами понятно, а понятие регистра разве у сердечек есть? "Красное сердечко" никоим образом не является "регистром" "черного сердечка", это два разных символа.

     
  • 3.137, Аноним (23), 00:38, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Такова анатомия Юникода. Всё дело в привязке: "кодовая позиция = графический рисунок".

    а что есть регистр? это "кодовая позиция('a') ~ кодовая позиция('A')"

     

  • 1.29, Аноним (29), 20:35, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Пивожор как-то забыл, что был ASCII одним регистром во времена, когда он ещё не умел списывать. И что filename должен быть именно что name, где Алекс, алекс и аЛеКс — это одно и то же, а смайлы должны запрещаться/меняться на всякие (0x444) и т.д.
    Регистронезависимость в именах файлов — благо системного уровня, а не прикол от дедов.
     
     
  • 2.33, Аноним (33), 20:45, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Никто не виноват, что вас в шелле не научили эскейпить файлы и параметры в кавычки брать.
     
  • 2.54, Карлос Сношайтилис (ok), 21:28, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > был ASCII одним регистром во времена

    Никогда не был. Символы 'A' и 'a' имеют разные коды в ASCII

     
  • 2.69, YetAnotherOnanym (ok), 21:53, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Регистронезависимость в именах файлов - отрава и мина замедленного действия.
     

  • 1.31, Аноним (33), 20:44, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Есть хоть одна техническая причина превращать одно имя файла в другое? Линус прав, имя файла - это просто набор байтов, и самый переносимый способ записывать имя - это любые байты, кроме '\0', '/' и ещё '\n', но во многих случаях даже он ничего не сломает. Если файловая система занимается подобной хренью, как превращение одних кодировок в другие или сменой регистра, то пусть будут добры занимать сразу ВСЕ возможные имена, если им делать нехрен.
     
  • 1.32, Уникум (?), 20:44, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Не вижу проблемы в создании стандарта с набором регистрозависимых символов, включающего только алфавиты существующих языков + что-то по иероглифам если там оно есть. Всё остальное не имеет регистра и не учитывается. Готов к решению следующей задачи
     
     
  • 2.83, Аноним (83), 22:12, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты предложил простое и неправильное решение. С турецким языком что делать будем, например? Там с английским регистры их версий I не совпадают: I → ı, İ → i.
     

  • 1.44, BrainFucker (ok), 21:06, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Нашёл о чём капитанить, старый брюзжун. Лучше бы набросил на тему неактуальности древовидных ФС с их директориями/папками, симлинками и прочим.
     
     
     
    Часть нити удалена модератором

  • 3.116, Аноним (-), 22:53, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > просто бесятся от того, что им приходилось пыриться в детстве в консольку.

    Вот не надо тут. Мне в детстве приходилось пыриться в интерфес, сделанный из вот такой cpaни



    ╔════════════════════╗
    ║░░░░░░░░░░░░░░░░░░░░║
    ║░░░░░░░░OPEN░░░░░░░░║
    ║░░░░░░░░░░░░░░░░░░░░║
    ╚════════════════════╝


    Но я совсем не против использования юникода в именах файлов.

     

  • 1.48, trolleybus (?), 21:18, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Тут не с регистронезависимостью проблема, а с тем, что в именах файлов разрешена всякая дичь вроде вот этих юникодных сердечек.
     
     
  • 2.58, тоже Аноним (ok), 21:31, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну, иди расскажи японцам, что они должны файлы латиницей называть.
    Проблема вообще не в символах, а всего лишь в синдроме утенка вскормленных Виндой.
    Они считают правильной всю ту дичь, которую Микрософт накосорезил в своих системах в 1980-х - и продолжает бережно тащить ее в 2020-е.
     
     
  • 3.71, _hide_ (ok), 22:00, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну регистронезависимость важна при поиске. При обращении к файлу регистр однозначно должен соблюдаться, в противном случае имя файла нельзя представить в виде набора конкретных байт и тут все абстракции поехали... Как велосипед на квадратных колёсах!
     
     
  • 4.113, oficsu (ok), 22:50, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Для обеспечения регистронезависимого поиска по файловой системе вовсе не требуется поддержка со стороны файловой системы
     
  • 3.75, Zenitur (ok), 22:05, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Против символов национальных алфавитов никто не против. А вот цветные смайлики в именах файлов... Зачем?
     
     
  • 4.88, Аноним (-), 22:16, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Против символов национальных алфавитов никто не против.

    В чем разница? Написать 赤いハート или поставить ❤️?

    > А вот цветные смайлики в именах файлов... Зачем?

    Не зачем, а почему бы и нет. И то, и другое просто код юникода.
    В данном случае проблема это "регистронезависимые файловые системы". Которые просто пережиток старых времен.

     
     
  • 5.111, Аноним (111), 22:48, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Против символов национальных алфавитов никто не против.
    > В чем разница? Написать 赤いハート или поставить ❤️?

    Ну зачем так далеко ходить:
    ͦpͤnnͤͭ - удачи любителям "независимости" подобрать тот самый, единственно-верный "регистронезависимый" вариант. Я уж не говорю о всяких скучных öäÜóß ... и о том, как ЭТО более-менее эффективно можно парсить.

     
     
  • 6.122, Аноним (-), 23:03, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > удачи любителям "независимости" подобрать тот самый,
    > единственно-верный "регистронезависимый" вариант.

    А зачем тебе вообще "регистронезависимый" вариант? Чтобы со всяким старьем было совместимо?
    Сейчас даже NTFS поддерживает case-sensitive.

    > Я уж не говорю о всяких скучных öäÜóß

    Так как раз из-за того, что ß просто так в upper-case не конвертнешь, и нужно использовать case-insensitive!

     
  • 4.109, Аноним (109), 22:43, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А вот цветные смайлики в именах файлов... Зачем?

    Просто красиво,

    Только найди потом файл с таким названием.

     
     
  • 5.112, Аноним (104), 22:49, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> А вот цветные смайлики в именах файлов... Зачем?
    > Просто красиво,
    > Только найди потом файл с таким названием.

    У вас в find юникод сломали?


     
  • 3.100, RHEL fan (?), 22:35, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ничего они, поди, email адреса то латиницей пишут, не обламываются.
     
     
  • 4.135, тоже Аноним (ok), 00:26, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ничего они, поди, email адреса то латиницей пишут, не обламываются.

    Боюсь, обламываются, но не они - 二ノ宮@黒川.日本, например.

     
  • 3.141, Аноним (109), 00:50, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > синдроме утенка вскормленных Виндой

    Синдром утенка вскормленных Виндой.

     
  • 2.61, Chel (?), 21:37, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Напиши список разрешенных символов
     
     
  • 3.64, trolleybus (?), 21:46, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Этот список уже до меня давно написали. ASCII называется.
     
     
  • 4.70, YetAnotherOnanym (ok), 21:56, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, ок, конвертнём в base64 и будем в таком виде хранить на диске, а в файлменеджере будем показывать исходную форму с сердечками, иероглифами и арабской вязью.
     
  • 3.144, Аноним (109), 00:52, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Товальдс такой жест придумал нвидии.
    Ну это которым потом он, пазязя, напишите драйверы.
    А чтой то не пишут драйверы для Нвидиа.
    Молодец ну.
     

  • 1.57, Аноним (109), 21:30, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > в режиме без учёта регистра

    А теперь поиграйтесь в регистре где символы L I i l выглядят одинаково.

     
     
  • 2.60, Аноним (60), 21:35, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если я хочу тебя взломать  или обмануть это мне только плюс. Поэтому я буду продавливать регистронезависимость всеми силами.
     
     
  • 3.63, Аноним (109), 21:41, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да не, иногда в шрифтах L выглядит как i, 0 как o, я про это.
    Меня нечего взламывать, я не криптовалютчик.
     
     
  • 4.82, YetAnotherOnanym (ok), 22:12, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Диды придумали нолик зачёркивать. И всё было хорошо, однозначно и недвусмысленно, пока не пришёл юникод со скандинавским Ø.
     
     
  • 5.118, Аноним (104), 22:56, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > пока не пришёл юникод со скандинавским Ø.

    Про ISO8859 ты, понятное дело, не в курсе.

     
  • 5.145, Аноним (109), 00:53, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Диды придумали нолик зачёркивать. И всё было хорошо, однозначно и недвусмысленно, пока не пришёл юникод со скандинавским Ø.

    Что за Деды, непонятно.

    Еще кассирша придумала счеты.

     
  • 3.67, trolleybus (?), 21:49, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > регистронезависимость

    Так это как раз про регистрозависимость. В каком-нибудь досе или винде 3.1 по умолчанию все имена файлов заглавными буквами показываются, и сразу понятно, где L, а где I.

     
     
  • 4.81, Аноним (93), 22:11, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не было такого в досе и 3.1. Прописными.
     

  • 1.59, Аноним (60), 21:34, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Я всегда говорил что Линус наш слоняра. Все правильно и по полочкам разложил.
     

  • 1.77, YetAnotherOnanym (ok), 22:07, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Поздно рассуждать о боржоми, когда почки накрылись. Само появление не-ascii символов в именах файлов открыло ящик пандоры. ИЧСХ, если появится менеджер паролей i❤mypasswords или криптокошелёк i❤cryptocoins - найдутся лопухи, которые будут ими пользоваться, и их потом поимеет злой хакирь, который выпустит, соответственно, менеджер паролей i❤️mypasswords или криптокошелёк i❤️cryptocoins со зловредами внутри, в том же каталоге приложений.
     
     
  • 2.120, Аноним (104), 23:00, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Поздно рассуждать о боржоми, когда почки накрылись. Само появление не-ascii символов в
    > именах файлов открыло ящик пандоры.

    Как открыло, так и закроет. Немного боли и придет стандартизация.

     

  • 1.78, Zenitur (ok), 22:08, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > времена FAT давно закончились

    Тут я бы поспорил. Даже на больших флешках, таких как 128 Гб, FAT32 прекрасно себя чувствует. По размеру кластера они вроде как с exFAT одинаковы. Единственный минус - нельзя создавать файлы больше 4 Гб.

    FAT32 позволяет вставить флешку в телевизор, магнитолу, приставку, смартфон, и не думать "а поддерживается ли там exFAT или нет?".

    По поводу юникода и FAT32. Поддерживается. Файлы со спецсимволами создаются. А во поводу регистров (а тем более регистров спецсимволов), ну, под Linux FAT32 case sensitive. А под виндой nocase. Но там и NTFS - nocase.

     
     
  • 2.85, Аноним (85), 22:14, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Разве речь о том, чтобы выпилять FAT32 из линукса?

    Речь о том, чтобы в новые ФС не тянуть старые неактуальные привычки.

     
     
  • 3.89, Zenitur (ok), 22:16, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Разве речь о том, чтобы выпилять FAT32 из линукса?
    > Речь о том, чтобы в новые ФС не тянуть старые неактуальные привычки.

    Ну не знаю, мне лично с nocase удобнее. Всяко лучше, чем иметь в одной папке файлы вида:

    привет.txt
    Привет.txt
    ПрИвЕт.txt
    привет.txT

     
     
  • 4.107, Аноним (109), 22:42, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > с nocase удобнее. Всяко лучше, чем иметь в одной папке файлы вида:
    > привет.txt
    > Привет.txt
    > ПрИвЕт.txt
    > привет.txT

    Соглашусь,
    Temp
    temp

    Круто., а теперь разберись какая из них, Temp, temp.
    Это как пример.

     
     
  • 5.123, Аноним (104), 23:04, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Круто., а теперь разберись какая из них, Temp, temp.
    > Это как пример.

    Три буквы: FHS.


     
     
  • 6.138, Аноним (109), 00:48, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Молодец, садись пятерка и зачет автоматом.
     
  • 6.142, Аноним (142), 00:51, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Никому не нужное нагромождение костылей, которого сам стандартизатор не придерживается.
     
  • 6.147, Аноним (109), 01:14, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Три буквы: FHS.

    FHS, или фолликулостимулирующий гормон , — это гормон, вырабатываемый гипофизом как у мужчин, так и у женщин.

     
  • 3.94, тоже Аноним (ok), 22:24, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > старые неактуальные привычки

    Это называется "обеспечивать совместимость, столь ценимую нашими корпоративными клиентами". Например, так:



    Invalid file or folder names
    Applies to: OneDrive for Business

    These names aren't allowed for files or folders: .lock, CON, PRN, AUX, NUL, COM0 - COM9, LPT0 - LPT9, _vti_, desktop.ini, any filename starting with ~$.

    Notes:
        _vti_ can't be used anywhere in a file name.
        forms can't be used when the folder or file is at the root level of a library.
        ゛​​​​​​​and ဧ can't be used as the first character of a folder.




     

  • 1.86, Аноним (-), 22:15, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Торвальдс однозначно не прав.
    Все эти свистелки и перделки разбаловали юзеров!

    Нужно делать как в RT-11.
    6+3 длинна имени файла, и фиксированный набор "A—Z, 0—9, $, ., %"
    Этого хватит всем!

    А то взяли моду придумывать длинные названия, да еще и какие-то сердечки туда пихать!!11

     
     
  • 2.105, Аноним (109), 22:40, 28/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Нужно делать как в RT-11.
    > 6+3 длинна имени файла, и фиксированный набор "A—Z, 0—9, $, ., %"

    Ну вообще чем прощще тем лучше, тем это более надежнее, правда длинна имени файла коротка.
    Насамом деле как в Windows, нормально вполне.
    Или это такое развлечение, играться с именами файлов папок из таблицы символов, сомнительное развлечение.
    Все эти регистры, Temp temp.

     

  • 1.108, Аноним (-), 22:42, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С точки зрения пользователя все же регистронезависимые имена удобны. И если проблема в похожих символах UTF-8, которые нельзя порой в нужный регистр привести, то может проблема в UTF-8?
     
  • 1.114, Аноним (-), 22:50, 28/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Какие собственно проблемы хранить тогда локаль в файловой системе? Это от силы один байт. Да и при наличии локали отпадает необходимость в utf-8 или решает проблемы какими символами имя файла ограничить в utf-8. Главное графически отобразить локаль и будет сразу видно где турецкая l, а где английская l. Или чего там ещё. Ну а список эмодзи можно и ограничить, тогда и не будет проблем. У сердечек нет верхнего и нижнего регистра, это вообще картинка которая записана как символ в utf-8. Такие картинки порой решают некоторые проблемы программистов.
     
     
  • 2.133, Аноним (133), 00:02, 29/04/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Такая, что это не очень совместимо с ФС.
     

  • 1.132, Аноним (133), 00:01, 29/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Торвальдс абсолютно прав. И правильное решение - прямо в винде включить регистрозависимые пути в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\obcaseinsensitive=dword:00000000

    Для тех каталогов, где прям супер-нужно регистронезависмость можно её включить через fsutil.exe file setCaseSensitiveInfo <path> enable/disable

     
  • 1.139, Аноним (109), 00:48, 29/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Каждый раз включая Linux, я благодарю Товальдса.
    Каждый раз включая лампочку, я благодарю Тесла. Каждый раз заводя мотор автомобиля, я благодарю Генри Форда.
     
  • 1.146, Аноним (146), 01:05, 29/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А весь секрет в том, что юникод - это не кодировка, юникод - это бинарный формат для хранения текстовой информации, наравне с odt, openxml и Microsoft doc/docx. Именно поэтому там есть "символы" типа "обратить весь последующий текст задом нарерёд" и подобные, о которых никто не в курсе. Стоит понять эту простую истину, и куча вопросов к юникоду, используемому в качестве кодировки, сразу отпадает.
     
  • 1.149, Аноним (149), 01:48, 29/04/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В винде ж как-то сделали.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру