systemd: 비활성화할 수 없습니다. 단위: 읽기 전용 파일 시스템

systemd: 비활성화할 수 없습니다. 단위: 읽기 전용 파일 시스템

저는 2개의 경쟁 dhcp 클라이언트인 connman 및 systemd-networkd와 함께 yocto(자동차 등급 Linux: Halibut 8.0)에서 구축한 OS가 포함된 임베디드 시스템을 가지고 있습니다.

sa8155:~# systemctl --type=service

  connman.service                                        loaded active running Connection service
  systemd-networkd.service                               loaded active running Network Service

connman을 비활성화하고 싶지만 시도하면 다음과 같은 이상한 오류가 발생합니다.

sa8155:~# systemctl disable connman.service
Failed to disable unit: File /etc/systemd/system/multi-user.target.wants/connman.service: Read-only file system

나는 뿌리입니다. 그래서 왜 이 파일을 삭제할 수 없는지 잘 모르겠습니다.

sa8155:~# ls -l /etc/systemd/system/multi-user.target.wants/connman.service
lrwxrwxrwx 1 root root 35 Nov 27  2019 /etc/systemd/system/multi-user.target.wants/connman.service -> /lib/systemd/system/connman.service
sa8155:~# 

이유를 아는 사람 있나요?
이 서비스를 비활성화하는 올바른 방법은 무엇입니까?

비정상적으로 많은 수의 파일 시스템이 있는 것 같습니다.

sa8155:~# df -hT
Filesystem    Type    Size  Used Avail Use% Mounted on
/dev/root     ext4    1.4G  504M  812M  39% /
devtmpfs  devtmpfs    291M     0  291M   0% /dev
tmpfs        tmpfs    443M     0  443M   0% /dev/shm
tmpfs        tmpfs    443M   18M  425M   4% /run
tmpfs        tmpfs    443M     0  443M   0% /sys/fs/cgroup
tmpfs        tmpfs    443M   18M  425M   4% /etc/machine-id
/dev/sde4     vfat    180M   53M  128M  30% /firmware
/dev/sde5     vfat     64M  512K   64M   1% /bluetooth
/dev/sde9     ext4     59M   21M   38M  36% /dsp
/dev/sda2     ext4    122M   12M  108M  10% /var
/dev/sda2     ext4    122M   12M  108M  10% /etc/bluetooth
/dev/sda2     ext4    122M   12M  108M  10% /persist
/dev/sda2     ext4    122M   12M  108M  10% /etc/build.prop
/dev/sda2     ext4    122M   12M  108M  10% /etc/usb
/dev/sda2     ext4    122M   12M  108M  10% /etc/misc/wifi
/dev/sda2     ext4    122M   12M  108M  10% /etc/smack/accesses.d
/dev/sda2     ext4    122M   12M  108M  10% /etc/adb_devid
tmpfs        tmpfs    443M  416K  442M   1% /var/volatile
tmpfs        tmpfs    443M  416K  442M   1% /persist/volatile
/dev/sda8     ext4    108G  6.4G  101G   6% /data
/dev/sda8     ext4    108G  6.4G  101G   6% /home
tmpfs        tmpfs    755M  4.0K  755M   1% /run/user/0
/dev/sda8     ext4    108G  6.4G  101G   6% /home/root/adas/dev
/dev/sda8     ext4    108G  6.4G  101G   6% /data/root/adas/dev
sa8155:~# 

답변1

임베디드 시스템에서는 /파일 시스템이 읽기 전용으로 마운트되는 경우가 있습니다. 일반적으로 여러 번의 쓰기로 인해 성능이 저하되고 수명이 우선인 스토리지 유형이기 때문입니다.

이 특정 문제에 대한 임시 해결책은 파일 시스템을 로 다시 마운트하고 rw필요한 변경을 수행한 다음 다시 "ro"로 다시 마운트하는 것입니다. 영구 저장소가 아직 변경되지 않았을 수 있으므로 이는 일시적일 수 있습니다.

때로는 이미지가 변경 사항을 영구적으로 만드는 방법을 제공합니다. 예를 들어 부팅 중에 읽혀지는 영구 저장소의 구성 파일에 기록하는 방식입니다(귀하의 경우에는 먼저 살펴보지만 /persist이미지 문서(사용 가능한 경우)도 참조).

이것이 실제로 호환되지 않는 서비스 집합인 경우 올바른 해결책은 필요한 서비스만 활성화하여 기본 이미지를 복구한 다음 장치를 다시 플래시하는 것일 수 있습니다.

관련 정보