우분투 터치에서 apt-get을 사용한 결과


17

방금 BQ Aquaris E4.5 Ubuntu 에디션을 받았습니다. 나는 그것으로 놀고 있었고 그것이 내가 기대했던 것임을 발견했습니다.

패키지 관리를 포함한 완전한 우분투 스택입니다. hpt, python2, openvpn과 같은 것들을 설치하기 위해 apt-get을 사용하고 싶습니다.

그러나 apt-get Unable to write to /var/cache/apt The Package lists or status file could not be parsed or opened오류에 도달했습니다 . 나는 ( apt-get을 사용하는 Ubuntu Touch ) 이것이 "/"파티션이로 마운트되어 있기 때문이며 ro, apt-get rw이 작동하려면 파티션이 필요하다는 것을 이해합니다 .

여기에서 ( sudo app-get install로 설치하면 작동하지 않습니다. "읽기 전용 파일 / var / lib / dpkg / lock에 대해 잠금을 사용하지 않음" )은 다음 명령으로 문제를 해결할 수있는 방법 sudo mount -o remount,rw /입니다. <--- 나쁜 생각 일 수 있습니다. 더 완벽하고 안전한 rw모드 활성화 방법은 evergreen의 답변을 참조하십시오 .

내가 알고 싶은 것은 "/"를 다음과 같이 마운트 한 결과입니다 rw. 초보자가 OTA 업데이트를 중지한다는 것을 읽었으며 apt-get을 사용하여 시스템을 최신 상태로 유지할 수 있다면 완벽하게 괜찮습니다. 그러나 나는 다른 종류의 공포 이야기 도 읽었습니다 ( /ubuntu//a/583439/264601 ).

그래서 내 두 가지 질문은 다음과 같습니다.

  1. apt-get 만 사용하여 시스템을 최신 상태로 유지할 수 있습니까?
  2. OTA 업데이트를 해제 이외에, 나는 어떤 다른 결과를해야 기대 ?

답변 주셔서 감사합니다!

답변:


4
  1. 아니요 (하지만 잠시 예라고 느낄 것입니다)

/에서 rw를 활성화하고 수정을 시작하면 아무것도 OTA 업데이트 배달을 비활성화하지 않습니다. 따라서 도착하면 이전과 같이 설치를 위해 제공됩니다.

그러나 OTA 프로세스는 파일 시스템에 매우 간단한 작업을 수행합니다. 그것은 당신이 가지고있는 파일 시스템 위에 많은 파일 세트를 압축 해제합니다. 이전 파일 시스템을 알고 있기 때문에 (ro이기 때문에), 이것은 단순히 변경된 파일 세트입니다.

그래서 당신은 도박입니다. 변경 사항이 발생했을 때 부작용이 발생합니까? 일반적으로 그렇습니다. 일반적으로 / 파일 시스템에서 일부 파일을 수정하고 해당 변경에 따라 소프트웨어를 추가했습니다. OTA가 설치되면 해당 변경 사항이 제거되고 충돌하는 변경 사항으로 대체 될 수 있습니다. 이 시점에서 다음에 일어날 일은 알 수 없으며 확실히 테스트되지 않았습니다.

따라서 실제로 일부 apt-get 설치는 기존 파일과 병렬로 소프트웨어를 추가하므로 OTA의 영향을 크게받지 않습니다. 그러나 하나의 파일 세트가 확실히 영향을받을 것입니다. apt의 자체 기록 유지 (OTA는 ro 파일 시스템 구성에 사용 된 레코드를 제공합니다). 따라서 시스템은 존재하는 것과 그렇지 않은 것에 대한 지식을 잃게됩니다.

이것이 apt-get 업그레이드의 핵심 위험입니다. 그것은 항상 장치에있는 것의 잘못된 데이터베이스로 수행되므로 성공을 보장 할 수 없습니다. 추가가 더 복잡해지고 기본 시스템이 전화를 Utopic에서 Vivid로 이동하는 등의 주요 전환을 수행함에 따라 apt-get을 직접 실행하면 잘못된 작업이 수행됩니다.

그런 다음 지우기 및 재설치를 수행 할 때까지 모든 OTA가 도박이됩니다.

  1. 시스템이 느리게 고장납니다 (위 참조).

10

우분투 터치에서 "apt-get"을 사용하려면 안전을 위해 "읽기 / 쓰기 모드 활성화 / 비활성화"기능을 사용하는 것이 좋습니다.

"읽기-쓰기 모드"를 활성화하면 Ubuntu 시스템 업그레이드가 비활성화됩니다.

그러나 "읽기-쓰기 모드"를 비활성화하여 자동 OTA 업데이트를 복원 할 수 있습니다.

"기본적으로 시스템은 읽기 전용입니다. Ubuntu 시스템 업그레이드를 비활성화하지만 읽기 / 쓰기 모드로 전환 할 수 있습니다.이 목적의 주요 목적은 Ubuntu 시스템을 직접 개발하는 것입니다. 앱을 개발하거나 시스템을 정상적으로 사용하는 데는 필요하지 않습니다. 읽기-쓰기 모드에서 복구는 가능하지만 시스템을 처음부터 다시 설치해야 함 경고 : 장치를 읽기 / 쓰기 모드로 전환 (및 / 또는 복구)하는 것은 고급 기능이며 완전한 데이터 손실을 초래할 수 있습니다. 읽기 / 쓰기 모드의 장치는 OTA (Over-The-Air) 델타 업데이트를 비활성화합니다.

먼저 Ubuntu 장치에서 개발자 모드를 활성화하십시오. 이렇게하려면 설정 →이 장치 정보 → 개발자 모드로 이동하십시오 . ( " 4 자리 비밀번호 "또는 " 비밀번호 문구 " 대안으로 "보안 잠금"을 적용해야합니다 . 그렇지 않으면 " 스 와이프 "기능을 사용하면 "개발자 모드"를 사용할 수 없습니다)

장치를 PC에 연결하십시오 (우분투 플랫폼 환경이라고 가정).

연결을 확인하려면 adb를 사용하여 현재 연결된 장치를 표시하십시오.

$ adb 장치

연결된 장치의 목록

025d138e2f521413 장치

  1. phablet-tools 패키지 설치

유니버스 아카이브가 활성화되어 있는지 확인한 후 다음을 수행하십시오.

$ sudo apt-get phablet-tools를 설치하십시오

  1. 읽기-쓰기 모드 활성화 :

$ phablet-config 쓰기 가능한 이미지

시스템이 읽기 / 쓰기 모드로 재부팅됩니다.

  1. 읽기-쓰기 모드 비활성화 : 읽기-쓰기를 비활성화하고 자동 OTA 업데이트를 복원 할 수 있습니다.

$ adb shell rm /userdata/.writable_image

Ubuntu 시스템을 설치하여 읽기 / 쓰기 모드에서 변경 한 내용이 포함되지 않은 정상적인 상태로 정상적으로 읽기 / 쓰기 금지 된 시스템 영역을 복원하려면 다음을 수행하십시오.

$ 우분투 장치 플래시 터치 --channel = CHANNEL

출처 : https://developer.ubuntu.com/en/start/ubuntu-for-devices/installing-ubuntu-for-devices/#install-options

조언 : 지금까지는 "apt-get"을 사용하는 것은 좋지 않습니다 (Popey).

"우리는 전화에서 apt-get 설치 시나리오를 테스트하지 않으며 apt-get 업그레이드를 사용하는 경우 이미지 기반 업데이트의 일부로 아직 완전히 테스트되지 않은 패키지를 설치할 수 있습니다"

출처 : Ubuntu-Touch에서 .deb 파일을 설치하는 방법은 무엇입니까?


3
이것은 rw모드 를 활성화하는 방법에 대한 완벽한 답변입니다 . 그러나 여전히 내 질문에 대답하지 않습니다.
Stunts

@evergreen 전화에서 sudo apt-get install phablet-toolsapt가 비활성화되어있는 경우 (읽기 전용 이미지로 인해) 처음 실행하려면 어떻게해야 합니까?
Khurshid Alam

@KhurshidAlam이 명령은 "컴퓨터를 장치에 연결 (Ubuntu 플랫폼 환경이라고 가정)"에 설명 된대로 다른 컴퓨터에서 입력해야합니다. 이 환경에 필요한 도구가 모두 있는지 확인하십시오.
스턴트

PC에 Ubuntu가 설치되어 있지 않은 경우 다음 소스에서 phablet-tools를 빌드 할 수 있습니다 : bazaar.launchpad.net/~phablet-team/phablet-tools/trunk/files . 1. bzr패키지 관리자를 사용하여 설치 하십시오. 예를 들어 CentOS의 경우 yum install bzr2. 복제 가능 phablet-tools 소스 : bzr branch lp:phablet-tools3. phablet-tools디렉토리로 이동합니다 . cd phablet-tools4. 설치 : sudo python setup.py install 모든 CentOS 사용자 및 기타 사용자 (초등 OS, Linux 민트, Arch Linux, Tails, Debian, openSUSE, Manjaro, Fedora, Zorin 등)
Maxim Mazurok

0

읽기 및 쓰기를 영구적으로 마운트하려면 3 줄만 필요합니다. 원래 UBPort에서이 지침 을 따르려고 했지만 아무 소용이 없습니다. 패 블릿 도구가 필요하지 않습니다.

adb shell
sudo touch /userdata/.writable_image
sudo reboot

세션을 위해 r / w로 변경하십시오.

adb shell
sudo mount -o remount,rw /

영구적으로 r / o로 다시 변경

adb shell
sudo mount -o remount,rw /

우분투 터치는 일반적으로 apt-get 용이 아닙니다. 데스크탑 앱은 설정하지 않았지만 일반적으로 리버티 컨테이너에서 사용됩니다. 모델 apt-get에 따라 루트 파티션이 막힙니다. 업데이트를 방해하거나 충돌하는 패키지를 설치하거나 시스템을 손상시킬 수 있습니다. 그러나 당신이 할 수 없다면 재미는 어디에 있습니까?

원래 루트 공간을 거의 즉시 사용했고 사용 가능한 사용자 데이터에 대한보다 적절한 심볼릭 링크가 있어야하지만이 명령을 사용하여 공간을 확보해야했습니다.

sudo mount -o rw,remount /                             
sudo rm -r /var/cache/apt
sudo tune2fs -m 0 /dev/loop0
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.