임베디드 Linux에서는 읽기 전용 파일을 편집하거나 삭제할 수 없습니다.

임베디드 Linux에서는 읽기 전용 파일을 편집하거나 삭제할 수 없습니다.

나는 다음과 같은 하드웨어를 가지고 있습니다:

여기에 이미지 설명을 입력하세요.

이름은 에어파이버 x5

Putty 프로그램 또는 WinSCP를 사용하여 SSH를 통해 장치에 액세스하여 운영 체제 파일을 볼 수 있습니다.

웹 인터페이스가 내장되어 있으며,

하지만 네트워크 인터페이스의 디렉터리는 /usr/www라는 것을 알았습니다.

페이지의 index.cgi를 변경하려고 합니다. 더 구체적으로 웹 인터페이스의 제조업체 로고 옆에 회사 로고를 추가하고 싶습니다.

문제는 www 안팎의 어떤 것도 편집할 수 없다는 것입니다.

퍼티에서 계속 말합니다: rm: 'index.cgi'를 삭제할 수 없습니다: 읽기 전용 파일 시스템

아니면 WinSCP를 사용하여 다른 파일을 덮어써서 link.cgi 파일을 수정하려고 합니다.

scp:/usr/www/160311.1301/link.cgi: 읽기 전용 파일 시스템입니다.

퍼티에서 chmod나 chown을 사용하여 권한 부여를 시도하기도 했습니다.

chmod: index.cgi: Read-only file system
chown: index.cgi: Read-only file system

나는 다음 솔루션을 시도했습니다. https://askubuntu.com/questions/47538/how-to-make-read-only-file-system-writable

https://askubuntu.com/questions/572579/chmod-error-changing-permission-read-only-file-system

그들 중 누구도 작동하지 않습니다.

제가 궁금한 점은 이러한 유형의 장치에 하드웨어 보호 기능이 있습니까?

아니면 내가 뭔가를 놓치고 있는 걸까?

참고: 인터넷 인터페이스는 장치의 설정을 구성하므로 데이터를 저장할 장소가 있어야 하며 데이터가 변경될 수 있습니다.

내 질문은: 어떻게 완료되었나요? 운영 체제의 일부 영역은 보호되고 일부는 보호되지 않습니다!

모든 파일을 잠금 해제하는 방법!

여기에 이미지 설명을 입력하세요.

uname -a 명령을 입력합니다.

모든 시스템 정보를 얻으십시오.

AF06.v3.2.1# uname -a Linux UBNT 2.6.33 #1 금요일 3월 11일 13:02:34 CST 2016 armv5tejl 알 수 없음

이 하드웨어 리눅스가 어떻게 작동하는지에 대한 아이디어나 이론이 있는 사람이 있다면

편집하다: 나는 다음을 입력했다: install

AF06.v3.2.1# mount
rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro,relatime)
none on /proc type proc (rw,relatime)
none on /sys type sysfs (rw,relatime)
tmpfs on /var type tmpfs (rw,relatime,size=32768k)
dev on /dev type tmpfs (rw,relatime)
none on /dev/pts type devpts (rw,relatime,mode=600)

나는 다음을 입력했습니다: cat /proc/mtd

AF06.v3.2.1# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00010000 00010000 "UBL"
mtd1: 00040000 00010000 "u-boot"
mtd2: 00010000 00010000 "u-boot-env"
mtd3: 00200000 00010000 "kernel"
mtd4: 00950000 00010000 "rootfs"
mtd5: 00400000 00010000 "u-code"
mtd6: 00040000 00010000 "cfg"
mtd7: 00010000 00010000 "EEPROM"

답변1

squashfs는 읽기 전용 파일 시스템이지만 압축된 파일 시스템이기 때문에 쓰기 가능으로 다시 마운트할 수 없습니다.

답변2

이 줄

/dev/root on / type squashfs (ro,relatime)

파일 시스템이 읽기 전용(ro)으로 마운트되었음을 ​​나타냅니다. 다른 모든 설치는 임시 설치입니다("실제" 파일 시스템이 아님). 오버레이 설치가 없습니다.

이것은 당신을 의미합니다할 수 없다파일 시스템에서 무엇이든 변경하십시오.

당신이 할 수 있는 유일한 일은 펌웨어 사본을 얻는 것입니다(또는정제it), 다른 PC에서 원하는 것으로 변경하고 u-boot를 사용하여 변경된 펌웨어를 업로드합니다.

이러한 변경 사항을 시도하려면 설치된 커널과 하드웨어 지원에 따라 일시적으로 다른 장치(네트워크를 통해)를 설치할 수 있습니다.

전체적으로 회사 로고를 추가하는 것만으로도 많은 노력이 필요하며, 임베디드 장치를 처음 보는 경우에도 이를 작동시키는 데 많은 시간을 투자해야 합니다. 아니요, 단계별 지침을 드릴 수는 없습니다. 실제로는 기기에 무엇이 있는지에 따라 다릅니다.

관련 정보