Проблемы с каталогами, содержащими русские символы в имени

При сохранении на раздел с NTFS при FRUGAL установке

После первого сохранения сессии на жесткий диск у меня на этом разделе перестали видны все папки с русскими именами. Puppy установлена из-под Windows в папку С:\Puppy, там же сохранен и файл pup_save.2fs. Так вот, при загрузке Puppy только на этом разделе, который теперь стал называться home, папок с русскими именами не видно.

Происходит это потому, что монтирование раздела с save-файлом производится раньше других, еще на этапе загрузки. Строка монтирования в fstab выглядит так:

/dev/hda1   /mnt/home      vfat      defaults      0 0

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

dev/hda5   /mnt/hda5   vfat   shortname=mixed,iocharset=utf8,codepage=866   0 0
dev/sda1   /mnt/sda1   vfat   shortname=mixed,iocharset=utf8,codepage=866   0 0

Дописывать необходимые для чтения русских названий опции загрузки бесполезно, т. к. надо «перемонтировать» раздел, а его отмонтирование заблокировано.

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

Выглядит это примерно так:

sda2 — это тот диск, на котором и не видно некоторых папок. Обратите внимание на частично затемненный флажок

Не зря не рекомендуют помещать файл сохранения Puppy на раздел ntfs. Дело в том, что раздел на котором находятся файлы Puppy монтируется в самом начале загрузки, сразу после загрузки ядра и initrd. Производится монтирование средствами busybox встроенной в initrd и ни о какой поддержке русского на разделе ntfs в этот момент говорить не приходится. Далее из примонтированных файлов происходит собственно загрузка Puppy, и монтирование других разделов в дальнейшем происходит средствами Puppy с поддержкой русского. Но первоначальный раздел отмонтировать нельзя, он используется. Поэтому он так и остается с директориями-«невидимками».

Выход один, помещать файлы Puppy либо на специально для этого созданный раздел с файловой системой ext2 размером не более 1 Gb, либо на fat32.

Однако, если при запуске PuppyRus задать параметр pfix=ram, то при запуске будет смонтирован только раздел SWAP, и накакие другие разделы смонтированы не будут. Минусы — не будет примонтирован сейв-файл.

Дополнение: как можно обойтись без save-файла или Ремастеринг sfs.

  1. Создаем пустой каталог в корне раздела, т. е. /mnt/home, и называем его как нибудь. например puppy-rem.
  2. Копируем туда всё содержимое каталога /initrd/pup_ro2. Просто выделяем всё и перетаскиваем мышкой в окно puppy-rem. Можно командой cp -r, но мышкой почему-то ссылки не бьет, а командой — много битых ссылок.
  3. Точно так же копируем в puppy-rem содержимое /initrd/pup_rw. Главное при перетаскивании положить на пустое место, иначе скопирует не туда. Соглашаемся на замену всех файлов, кроме битой ссылки на мышь. Ее почему-то всегда бьет.
  4. Проверяем запись в /puppy-rem/etc/fstab раздела ntfs, если надо — исправляем.
  5. Открываем консоль и
    cd /mnt/home
    mksquashfs puppy-rem pup_301-rem.sfs
  6. Ждём. Когда новый sfs «сквасится», заменяем им старый.

Теперь можно загружаться с опцией pfix=ram, настройки будут все на месте. И более того, можно безболезненно чистить pup_save, хоть под ноль. Единственный минус — железо менять после ремастеринга нежелательно. Фатальных последствий не будет, но при загрузке pfix=ram настроек нового железа не будет.


Автор: DdShurick /Zloy_Tigra/KG

 
setups/problem-ntfs-rus.txt · Последние изменения: 01.03.2016 в 18:18 (внешнее изменение)
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki