Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
| ru:docs:guide-user:additional-software:extroot_configuration [2019/09/07 20:06] – [Возможные альтернативы внешней корневой файловой системы] alexche | ru:docs:guide-user:additional-software:extroot_configuration [2019/09/08 07:43] – [Через командную строку] alexche | ||
|---|---|---|---|
| Line 21: | Line 21: | ||
| ===== Инструкции ===== | ===== Инструкции ===== | ||
| - | ==== 1.1. Для устройств | + | ==== 1.1. Для устройств менее чем |
| В образах прошивки OpenWrt по умолчанию нет инструментов для создание extroot, так как система сборки в настоящее время создает только barebone-образы. \\ | В образах прошивки OpenWrt по умолчанию нет инструментов для создание extroot, так как система сборки в настоящее время создает только barebone-образы. \\ | ||
| Единственный способ использовать эти устройства - перестроить образ прошивки с нужными пакетами с помощью Image Builder. \\ | Единственный способ использовать эти устройства - перестроить образ прошивки с нужными пакетами с помощью Image Builder. \\ | ||
| Line 65: | Line 65: | ||
| К сожалению, | К сожалению, | ||
| - | ==== 1.2. Устройства более чем 8 МБ флеш памяти ==== | + | ==== 1.2. Устройства более чем |
| На этих устройствах должно быть достаточно места для установки необходимых нам пакетов. | На этих устройствах должно быть достаточно места для установки необходимых нам пакетов. | ||
| Удалите все пакеты, | Удалите все пакеты, | ||
| Line 149: | Line 149: | ||
| </ | </ | ||
| + | ===== Проверка ===== | ||
| + | ==== Через Web интерфейс ==== | ||
| + | - **[[http:// | ||
| + | - **[[http:// | ||
| - | ===== Прежде чем начать... | ||
| - | - Прочитайте статью | ||
| - | - Для разных версий OpenWrt конфигурации и опции будут различаться или могут отсутствовать вовсе. Инструкция ниже описывает процедуры для версий OpenWrt выше 10. Для версий ниже 10 возможен только вариант " | ||
| - | - Функциональность extroot ещё дорабатывается, | ||
| - | | {{: | + | ==== Через командную |
| + | Раздел | ||
| + | Свободное | ||
| - | ===== Подготовка ===== | + | <code bash> |
| - | **Смонтируйте** **файловую систему**, | + | # grep -e /overlay /etc/mtab |
| - | * Для USB-устройств, | + | /dev/sda1 /overlay ext4 rw,relatime,data=ordered |
| - | * Также, обратите внимание на [[doc: | + | overlayfs:/overlay / overlay rw, |
| - | * Смотрите [[doc:howto: | + | |
| - | * Смотрите [[ru: | + | |
| - | Убедитесь что ваше устройство смонтировано в режиме чтения/записи и на него можно записывать данные. Для проверки смонтируйте в ручном режиме первый раздел на USB-диске '' | + | # df /overlay / |
| + | Filesystem | ||
| + | /dev/sda1 7759872 | ||
| + | overlayfs:/ | ||
| + | </ | ||
| - | mount /dev/sda1 /mnt/sda1 | ||
| - | Убедитесь, что всё успешно подключено, запустив '' | + | ===== Сохранение списков программных |
| + | Сохранение | ||
| - | ===== Chaos Calmer ===== | ||
| - | ==== Подготовка ==== | + | ==== Через |
| - | Установите следующие пакеты: | + | |
| - | * // | + | |
| - | * // | + | |
| - | * // | + | |
| - | opkg install block-mount kmod-fs-ext4 kmod-usb-storage-extras</ | + | |
| - | * Если opkg выдаёт ошибку при установке kmod-usb-storage-extras, | + | |
| - | ==== Установка на внешний overlay (рекомендованный вариант) ==== | + | 1. **[[http://openwrt.lan/|LuCI]] |
| - | - Создайте на USB-диске разделы и отформатируйте их, используя любой Live CD с Linux или средствами uci //(рекомендуется использовать первый раздел для root overlay, второй для swap (если он вам необходим), | + | |
| - | - Скопируйте /overlay на USB-устройство <code> | + | |
| - | mount /dev/sda1 /mnt | + | |
| - | tar -C /overlay -cvf - . | tar -C /mnt -xf - | + | |
| - | umount /mnt | + | |
| - | </code> | + | |
| - | | + | |
| - | block detect > / | + | |
| - | vi / | + | |
| - | </ | + | |
| - | - Внесите исправления в ''/ | + | |
| - | - Все строки вида '' | + | |
| - | - Отредактируйте '' | + | |
| - | - Отредактируйте '' | + | |
| - | config ' | + | |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| - | config ' | + | смените |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| - | config ' | + | <code bash> |
| - | | + | lists_dir ext /var/opkg-lists |
| - | option | + | |
| - | + | ||
| - | config ' | + | |
| - | option | + | |
| - | option | + | |
| - | option | + | |
| </ | </ | ||
| - | - Перезагрузите роутер | ||
| - | - Убедитесь, | ||
| - | * с помощью LuCI | ||
| - | * в //System - Software// должно быть видно свободное пространство на разделе | ||
| - | * в //System - Mount Points// должен быть виден USB-раздел, | ||
| - | * с помощью консоли | ||
| - | * команда '' | ||
| - | root@OpenWrt: | ||
| - | / | + | на |
| - | proc on /proc type proc | + | |
| - | sysfs on /sys type sysfs (rw, | + | |
| - | tmpfs on /tmp type tmpfs (rw, | + | |
| - | / | + | |
| - | overlayfs:/ | + | |
| - | tmpfs on /dev type tmpfs (rw, | + | |
| - | devpts | + | |
| - | / | + | |
| - | / | + | |
| - | debugfs | + | |
| + | <code bash> | ||
| + | lists_dir ext / | ||
| </ | </ | ||
| - | * '' | ||
| - | root@OpenWrt: | ||
| - | Filesystem | + | это должно выглядеть примерно так: |
| - | rootfs | + | |
| - | / | + | |
| - | tmpfs | + | |
| - | / | + | |
| - | overlayfs:/ | + | |
| - | tmpfs 512 | + | |
| - | / | + | |
| - | / | + | |
| - | </ | + | |
| - | ==== Установка на внешний корень ==== | + | < |
| - | - Создайте на USB-диске разделы и отформатируйте их, используя любой Live CD с Linux или средствами uci // | + | dest root / |
| - | - Скопируйте корневую файловую систему на USB-устройство | + | dest ram /tmp |
| - | mkdir -p /tmp/introot | + | lists_dir ext /usr/lib/opkg/lists |
| - | mkdir -p /tmp/extroot | + | option overlay_root |
| - | mount --bind | + | option check_signature |
| - | mount /dev/sda1 / | + | |
| - | tar -C /tmp/introot -cvf - . | tar -C / | + | |
| - | umount / | + | |
| - | umount / | + | |
| </ | </ | ||
| - | - Создайте шаблон fstab< | ||
| - | block detect > / | ||
| - | vi / | ||
| - | </ | ||
| - | - Внесите исправления в ''/ | ||
| - | - Все строки вида '' | ||
| - | - Отредактируйте '' | ||
| - | - Отредактируйте '' | ||
| - | config ' | ||
| - | option | ||
| - | option | ||
| - | option | ||
| - | option | ||
| - | option | ||
| - | option | ||
| - | config mount | + | 2. **[[http://openwrt.lan/|LuCI]] -> System -> Software -> Actions -> Update lists ** производит первоначальное обновление списка пакетов на extroot |
| - | option device '/dev/sda1' | + | |
| - | option target '/' | + | |
| - | option enabled ' | + | |
| - | config swap | ||
| - | option device '/ | ||
| - | option enabled ' | ||
| - | config mount | + | -----------Перевод |
| - | option device '/ | + | далее идет старая версия! |
| - | option target '/ | + | |
| - | option enabled ' | + | |
| - | </ | + | |
| - | | + | |
| - | - Убедитесь, что разделы корректно смонтированы. | + | |
| - | ===== Barrier Breaker ===== | ||
| - | Здесь приведены лишь отличия, | ||
| - | ==== Установка на внешний overlay (рекомендованный вариант) ==== | ||
| - | Примерное содержимое [[docs: | ||
| - | |'' | ||
| - | option target | ||
| - | option device | ||
| - | option fstype | ||
| - | option options | ||
| - | option enabled | ||
| - | option enabled_fsck | ||
| - | Если монтирование не удалось, | ||
| - | У некоторых пользователей при использовании Barier Breaker 14.07 (RC-версиях) на устройствах с архитектурой ar71xx раздел продолжает монтироваться как /mnt/sdax вместо /overlay. Проблема решается запуском block detect, который создаст правильный fstab с корректными идентификаторами разделов. | ||
| - | |||
| - | |'' | ||
| - | config global | ||
| - | option anon_swap ' | ||
| - | option anon_mount ' | ||
| - | option auto_swap ' | ||
| - | option auto_mount ' | ||
| - | option delay_root ' | ||
| - | option check_fs ' | ||
| - | config mount | ||
| - | option target '/ | ||
| - | option uuid ' | ||
| - | option enabled ' | ||
| - | option fstype ' | ||
| - | config mount | ||
| - | option target '/ | ||
| - | option uuid ' | ||
| - | option enabled ' | ||
| - | option fstype ' | ||
| - | Проверка работоспособности extroot с помощью утилиты '' | ||
| - | |'' | ||
| - | Filesystem | ||
| - | rootfs | ||
| - | / | ||
| - | tmpfs 63340 76 | ||
| - | / | ||
| - | overlayfs:/ | ||
| - | tmpfs 512 | ||
| - | |||
| - | Учитывайте, | ||
| - | |||
| - | ==== Установка на внешний корень ==== | ||
| - | Примерное содержимое [[docs: | ||
| - | | '' | ||
| - | option target | ||
| - | option device | ||
| - | option fstype | ||
| - | option options | ||
| - | option enabled | ||
| - | option enabled_fsck | ||
| - | До ревизии [[https:// | ||
| - | ===== Attitude Adjustment ===== | ||
| - | ==== Старый вариант установки на внешний overlay ==== | ||
| - | Before [[https:// | ||
| - | For trunk versions up to, but not including r25787 the following is an example for an extroot mount entry in the file / | ||
| - | |'' | ||
| - | option target | ||
| - | option device | ||
| - | option fstype | ||
| - | option options | ||
| - | option enabled | ||
| - | option enabled_fsck | ||
| - | option is_rootfs | ||
| - | A '' | ||
| - | | {{: | ||
| ===== Troubleshooting ===== | ===== Troubleshooting ===== | ||
| Line 490: | Line 331: | ||
| To upgrade kernel + kernel modules you need to first upgrade the kernel-modules (with opkg upgrade ... --force... ) and then immediately WITHOUT rebooting, reflash Kernel + SquashFS with '' | To upgrade kernel + kernel modules you need to first upgrade the kernel-modules (with opkg upgrade ... --force... ) and then immediately WITHOUT rebooting, reflash Kernel + SquashFS with '' | ||
| - | ===== Information on Legacy versions ===== | ||
| - | Backfire see: [[docs: | ||