Read only file system openwrt как исправить

OpenWrt Forum

Loading


0

1

Добрый день!
У меня появилась необходимость поставить примитивный вебсервер на базе роутера. В наличии имеется TP-Link WR703N на MIPS-24 проце, 32МБ памяти.

Первая проблема: не могу понять, почему файловая система монтирована с флагом read-only? Это было задано при прошивке? Т.е. мне нужно его перепрошивать и убирать этот флаг? Из-за этого я не могу настроить конфиг установленного сервера uhttpd.

Вторая проблема:
сейчас доступно всего 40 КБ места, чего не хватает для скачивания хотя бы пакетов для монтирования флэшки. Что-либо еще я установить я тоже не могу.
Как быть?

UPD1:
Состояние памяти в вкладке Overview интерфейса LuCi. Как можно видеть, свободной памяти — мегабайты.

Состояние памяти в вкладке Software интерфейса LuCi

Вывод команды ls с информацией о памяти

Почему везде разный вывод?

Пытался использовать комаду mount -O / «remount,rw», изменять права доступа, работаю по ssh от рута. Писать получается только в /tmp

UPD2:

Подведу итог для тех, кто будет в будущем задаваться тем же вопросом:

  1. Каталоги /etc/ были read-only по неопределенной причине. Эта проблема исчезала при перекомпиляции и перепрошивке openwrt.
  2. Определенные каталоги файловой системы все же read-only в соответствии с тем, как решили разбить внутреннюю flash и ram память разработчики openwrt. Коротко говоря: каталоги openwrt состоят из read-only ФС SquashFS и read-write ФС JFFS2, которые объединены при помощи еще одной ФС OverlayFS.

    Конкретнее об этом написано в двух последних сообщениях темы и по ссылкам в этих сообщениях

  3. Если нужно устанавливать более, чем 1-2 пакета, то нужно подключать usb-flash. Для этого:
    • Отформатировать флешку под ext4 (Я использовал эту утилиту )
    • Откомплировать и прошить openwrt вместе с пакетами kmod-usb-core, kmod-usb-ohci, kmod-usb-storage, kmod-usb2, kmod-fs-ext4, block-mount (т.е. в меню команды make menuconfig выбрать эти пакеты)

      Стоит учесть, что block-mount может и не влезть в прошивку (т.е. его не будет в системе после прошивки). Тогда нужно будет установить его через opkg. Скорее всего места хватит под этот единственный пакет.

    • Следовать инструкции по подключению флешки

      Теперь проблем с дисковым пространством возникнуть не должно.

I have installed minimal OpenWRT firmware on Linksys router.

When I try to modify some of the files withing /etc/ directory for example firewall.user file by using command vi firewall.user it opens file in read-only attributes only.

How can I enable editing of files? The chmod command isn’t accessible and my memory in router is very limited, therefore installing any extra resources is not an option.

asked Oct 13, 2012 at 8:29

HelpNeeder's user avatar

The filesystem is mounted read only, you need to change how it is mounted.

But most embedded system don’t work that way, and in those cases you need to modify the image you flashed the device with so it is correct from the start.

answered Oct 13, 2012 at 9:20

Johan's user avatar

JohanJohan

4,4632 gold badges26 silver badges33 bronze badges

Well, in my case, I have installed OpenWRT into a SD card and plugged into a Raspberry PI 2. Immediately after the installation I got errors like that one:

Installing kmod-usb-net (3.18.23-1) to root...
Collected errors:
* wfopen: //usr/lib/opkg/info/libusb-1.0.control: Read-only file system.

I tried things like:

mount -o remount,rw /

with no success.

My solution was to flash again the SD card and than I was able to install packages and write into the disk with no trouble.

answered May 21, 2018 at 22:28

Duloren's user avatar

4

This often appears to be down to filesystem corruption. When the filesystem is mounted as read only it is possible to use the fsck filesystem check/repair tool — provided you have already installed it (e.g. for the ext2/3/4 based filesystems it is package e2fsprogs):

fsck /dev/sdb1

Alternatively if the image is stored on a micro/SD card/removable storage then you can plug it into another Linux box and run fsck to repair the filesystems so it can be mounted again. When you insert the micro/SD into the other Linux box check dmesg to find the device name (e.g. /dev/sdb1) and run fsck as above.

answered Dec 2, 2018 at 21:07

Pierz's user avatar

PierzPierz

6619 silver badges9 bronze badges

Старый
16.07.2017, 23:48

 
#1

Junior Member

 

Регистрация: 04.02.2017

Сообщений: 16

Вес репутации: 0

ippvir is an unknown quantity at this point

Unhappy
chmod: HDD: Read-only file system.


Прошу вашей помощи в данном деле.
Стоит OpenWrt Barrier Breaker 14.07 с жестким на борту.
Раньше до сброса настроек все работало а после не хочет. Во общем диск разделен на 3 части:
1)NTFS — для всякой всячины (мне нужна именно эта фс)(монтирую mount -t ntfs /dev/sda1 /mnt/HDD -o umask=0,nls=utf8)
2)ext4- для пакетов
3)swap
Все монтируется, но 1 раздел постоянно монтируется с правами 0555 и в итоге через самбу я могу ток файлы посмотреть (копировать и т.п. не дает)
при попытке менять права 0777(к примеру) выдает: Read-only file system. как мне победить это

mount

/dev/sda4 on /mnt/HDD type ntfs (ro,relatime,uid=0,gid=0,umask=00,nls=utf8,error s=continue,mft_zone_multiplier=1)

[свернуть]


Последний раз редактировалось ippvir; 16.07.2017 в 23:52.

ippvir вне форума

 

Ответить с цитированием

Старый
17.07.2017, 17:40

 
#2

Senior Member

 

Аватар для stD

По умолчанию


А если так монтировать:

PHP код:



mount -t ntfs /dev/sda1 /mnt/HDD -o rw,umask=0,nls=utf8 




stD вне форума

 

Ответить с цитированием

Старый
17.07.2017, 23:34

 
#3

Junior Member

 

Регистрация: 04.02.2017

Сообщений: 16

Вес репутации: 0

ippvir is an unknown quantity at this point

По умолчанию


/mnt/HDD$ mount -t ntfs /dev/sda1 /mnt/HDD -o rw,umask=0,nls=utf8
mount: mounting /dev/sda1 on /mnt/HDD failed: Invalid argument
Гы гы(((
Может я что ни-будь не прогрузил??

opkg list

base-files — 156-r42625
block-mount — 2014-06-22-e0430f5c62f367e5a8e02755412977b02c3fc45e
busybox — 1.22.1-2
dnsmasq — 2.71-4
dropbear — 2014.63-2
e2fsprogs — 1.42.4-1
fdisk — 2.24.1-1
firewall — 2014-09-19
fstools — 2014-06-22-e0430f5c62f367e5a8e02755412977b02c3fc45e
hostapd-common — 2014-06-03-1
ip6tables — 1.4.21-1
iptables — 1.4.21-1
iw — 3.15-1
jshn — 2014-08-04-dffbc09baf71b294185a36048166d00066d433b5
jsonfilter — 2014-06-19-cdc760c58077f44fc40adbbe41e1556a67c1b9a9
kernel — 3.10.49-1-0114c71ed85677c9c1e4911437af4743
kmod-ath — 3.10.49+2014-05-22-1
kmod-ath9k — 3.10.49+2014-05-22-1
kmod-ath9k-common — 3.10.49+2014-05-22-1
kmod-cfg80211 — 3.10.49+2014-05-22-1
kmod-crypto-aes — 3.10.49-1
kmod-crypto-arc4 — 3.10.49-1
kmod-crypto-core — 3.10.49-1
kmod-crypto-hash — 3.10.49-1
kmod-fs-ext4 — 3.10.49-1
kmod-fs-ntfs — 3.10.49-1
kmod-gpio-button-hotplug — 3.10.49-1
kmod-ip6tables — 3.10.49-1
kmod-ipt-conntrack — 3.10.49-1
kmod-ipt-core — 3.10.49-1
kmod-ipt-nat — 3.10.49-1
kmod-ipt-nathelper — 3.10.49-1
kmod-ipv6 — 3.10.49-1
kmod-ledtrig-usbdev — 3.10.49-1
kmod-lib-crc-ccitt — 3.10.49-1
kmod-lib-crc16 — 3.10.49-1
kmod-mac80211 — 3.10.49+2014-05-22-1
kmod-mii — 3.10.49-1
kmod-nls-base — 3.10.49-1
kmod-nls-cp1251 — 3.10.49-1
kmod-nls-cp437 — 3.10.49-1
kmod-nls-cp866 — 3.10.49-1
kmod-nls-koi8r — 3.10.49-1
kmod-nls-utf8 — 3.10.49-1
kmod-ppp — 3.10.49-1
kmod-pppoe — 3.10.49-1
kmod-pppox — 3.10.49-1
kmod-scsi-core — 3.10.49-1
kmod-slhc — 3.10.49-1
kmod-usb-core — 3.10.49-1
kmod-usb-net — 3.10.49-1
kmod-usb-net-cdc-ether — 3.10.49-1
kmod-usb-net-rndis — 3.10.49-1
kmod-usb-storage — 3.10.49-1
kmod-usb-storage-extras — 3.10.49-1
kmod-usb2 — 3.10.49-1
libblkid — 2.24.1-1
libblobmsg-json — 2014-08-04-dffbc09baf71b294185a36048166d00066d433b5
libc — 0.9.33.2-1
libext2fs — 1.42.4-1
libgcc — 4.8-linaro-1
libip4tc — 1.4.21-1
libip6tc — 1.4.21-1
libiwinfo — 51
libiwinfo-lua — 51
libjson-c — 0.11-2
libjson-script — 2014-08-04-dffbc09baf71b294185a36048166d00066d433b5
liblua — 5.1.5-1
libnl-tiny — 0.1-3
libpthread — 0.9.33.2-1
librt — 0.9.33.2-1
libubox — 2014-08-04-dffbc09baf71b294185a36048166d00066d433b5
libubus — 2014-09-17-4c4f35cf2230d70b9ddd87638ca911e8a563f2f3
libubus-lua — 2014-09-17-4c4f35cf2230d70b9ddd87638ca911e8a563f2f3
libuci — 2014-04-11.1-1
libuci-lua — 2014-04-11.1-1
libusb-1.0 — 1.0.9-1
libuuid — 2.24.1-1
libxtables — 1.4.21-1
lua — 5.1.5-1
luci — 0.12+svn-r10530-1
luci-app-firewall — 0.12+svn-r10530-1
luci-base — 0.12+svn-r10530-1
luci-lib-nixio — 0.12+svn-r10530-1
luci-mod-admin-full — 0.12+svn-r10530-1
luci-proto-ppp — 0.12+svn-r10530-1
luci-theme-bootstrap — 0.12+svn-r10530-1
mtd — 20
netifd — 2014-09-08-46c569989f984226916fec28dd8ef152a664043e
odhcp6c — 2014-08-25-0300fe7589a1701361735ac068e4b57bb1a1896f
odhcpd — 2014-08-23-24452e1e3e9adfd9d8e183db1aa589f77727f5a7
opkg — 9c97d5ecd795709c8584e972bfdf3aee3a5b846d-7
ppp — 2.4.7-2
ppp-mod-pppoe — 2.4.7-2
procd — 2014-09-15-c1a558f7d0c1e6c1ffa5a47d557a7b45205eef1d
swconfig — 10
uboot-envtools — 2014.04-4
ubox — 2014-09-16-5c45b560bc8c9e13682269ed963a8a4a65959518
ubus — 2014-09-17-4c4f35cf2230d70b9ddd87638ca911e8a563f2f3
ubusd — 2014-09-17-4c4f35cf2230d70b9ddd87638ca911e8a563f2f3
uci — 2014-04-11.1-1
uhttpd — 2014-08-25-dabd7dea6445aaa0e5b8d9add1872fa7393b3a85
uhttpd-mod-ubus — 2014-08-25-dabd7dea6445aaa0e5b8d9add1872fa7393b3a85
usb-modeswitch — 2014-07-18-01ecc3b9764d1dd89cf36ede0a2d98f9adb0cd33
wpad-mini — 2014-06-03-1

[свернуть]


Последний раз редактировалось ippvir; 17.07.2017 в 23:36.

ippvir вне форума

 

Ответить с цитированием

Старый
18.07.2017, 12:30

 
#4

Senior Member

По умолчанию


Код:

opkg install ntfs-3g
solalex вне форума

 

Ответить с цитированием

Старый
18.07.2017, 22:20

 
#5

Junior Member

 

Регистрация: 04.02.2017

Сообщений: 16

Вес репутации: 0

ippvir is an unknown quantity at this point

По умолчанию


Цитата:

Сообщение от solalex
Посмотреть сообщение

Код:

opkg install ntfs-3g

поставил но никаких изменений((
Может в жестком дело?(хотя все разделы пересоздал и на ошибки в gpartere проверил)((

ippvir вне форума

 

Ответить с цитированием

Старый
19.07.2017, 08:22

 
#6

Senior Member

По умолчанию


solalex вне форума

 

Ответить с цитированием

Старый
19.07.2017, 21:03

 
#7

Senior Member

 

Аватар для stD

По умолчанию


А в винде этот диск читается/пишется?

stD вне форума

 

Ответить с цитированием

No, the overlayfs was mounted r/o. I don’t know why this happened. I rebooted the device, but this didn’t happened again.

root@openwrt:~# mount
proc on /proc type proc (ro,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work)
tmpfs on /dev type tmpfs (ro,relatime,size=512k,mode=755)
devpts on /dev/pts type devpts (ro,relatime,mode=600,ptmxmode=000)
mountd(pid2330) on /tmp/run/blockd type autofs (ro,relatime,fd=7,pgrp=1,timeout=30,minproto=5,maxproto=5,indirect)
[reboot]
root@openwrt:~# mount
/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,noatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
/dev/mtdblock4 on /overlay type jffs2 (rw,noatime)
overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work)
tmpfs on /dev type tmpfs (rw,nosuid,relatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000)
debugfs on /sys/kernel/debug type debugfs (rw,noatime)
mountd(pid2192) on /tmp/run/blockd type autofs (rw,relatime,fd=7,pgrp=1,timeout=30,minproto=5,maxproto=5,indirect)

I guess that something went horrible wrong. I can’t reproduce that issue, but nevertheless, maybe a warning symbol would be useful

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как найти направление падающего луча
  • Советы батюшки как найти работу
  • Как найти среднее геометрическое чисел питон
  • Как найти пустоту в карте бацзы
  • Как найти время для ведения блога

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии