Android 휴대폰을 Linux 서버(베어메탈 성능)로 변환하시겠습니까?

Android 휴대폰을 Linux 서버(베어메탈 성능)로 변환하시겠습니까?

일부 오래된 Android 휴대폰(2017+)을 SSH 전용 서버로 전환하고 싶은데 가능합니까? 내 목표는 다음과 같습니다

  • 배터리 없이 연중무휴 24시간 휴대전화를 작동하세요.
  • 마더보드와 Wi-Fi 이외의 다른 것을 사용하고(또는 가능하면 USB에서 인터넷을 사용) 돈을 위해 디스플레이, 배터리, 카메라 및 기타 센서를 폐기하고 싶지 않습니다.
  • 베어메탈 성능, 내부에 CPU와 RAM을 차지하는 Android 정크 없음
  • 서버에서와 마찬가지로 루트 액세스
  • 우분투 서버 또는 데비안 실행

내 프로젝트의 범위는 오래된 전화기를 Linux 서버로 재사용하고 nginx, posgresql, nodejs, Ruby 등과 같은 것을 실행할 수 있는 것입니다. 가능하다면 도커라도요.

답변1

일부 오래된 Android 휴대폰(2017+)을 SSH 전용 서버로 전환하고 싶은데 가능합니까?

물론 Android는 Linux 커널을 기반으로 하는 운영 체제이므로 모든 사용자 인터페이스를 실행할 수 있습니다. 실제로 일반 무료 대체 앱 스토어(예: fdroid)에는 실행할 데비안 컨테이너가 있습니다.

배터리 없이 연중무휴 24시간 휴대전화를 작동하세요.

많은 전화기에는 배터리가 없으면 부팅되지 않는 하드웨어가 있습니다. 하지만 이 기능을 지원하는 휴대폰은 확실히 찾을 수 있습니다.

마더보드와 Wi-Fi 이외의 다른 것을 사용하고(또는 가능하면 USB에서 인터넷을 사용) 돈을 위해 디스플레이, 배터리, 카메라 및 기타 센서를 폐기하고 싶지 않습니다.

귀하의 스크랩 부품 작업은 마이너스 수익을 낼 것으로 예상됩니다. 잊어버리세요. 화면을 제거하는 데 드는 비용이 중고 화면에 지불하는 가격을 정당화할 수는 없습니다. 제조업체에서 밝기 센서나 가속도계의 가격이 얼마라고 생각하시나요? 우리는 여기서 센트를 이야기하고 있습니다.

베어메탈 성능, 내부에 CPU와 RAM을 차지하는 Android 정크 없음

Android는 운영 체제입니다. 그것은 "나는 모터 제어 문제 없이 베어메탈 성능으로 내 차를 운전하고 싶다"와 같습니다... 안드로이드는 아마도필요한휴대폰을 작동 상태로 전환하면 인터넷 연결이 필요한 모든 작업을 수행할 수 있습니다. 그러니 그것도 잊어버리세요.

서버에서와 마찬가지로 루트 액세스

이 작업을 수행하려면 루트 액세스 권한이 있는 전화기가 필요합니다(많은 전화기에는 다소 쉽게 들어갈 수 있는 개발자 모드가 있지만 지금까지는 전부는 아님).

내 프로젝트의 범위는 오래된 전화기를 Linux 서버로 재사용하고 nginx, posgresql, nodejs, Ruby 등과 같은 것을 실행할 수 있는 것입니다. 가능하다면 도커라도요.

Docker는 문제가 가장 적습니다. Linux 네임스페이스는 잘 작동하며 최신 Android의 필수 부분입니다.

나머지는 전혀 의미가 없습니다.

  • nginx는 웹 서버이지만 Wi-Fi를 통해서만 연결할 수 있는 장치가 있습니다. 사용 가능한 Wi-Fi 연결이 무엇이든 웹 서버를 실행하므로 휴대폰을 버릴 수 있습니다.
  • postgresql은 데이터베이스 서버입니다. 휴대폰의 저장 공간이 데이터베이스 서버에서 원하는 것과 반대라는 것을 알게 될 것입니다.
  • nodejs: 음, 이것은 일반적으로 RAM을 많이 사용하는 작업입니다. 정말로 기존 휴대폰에서 Nodejs를 실행하시겠습니까?
  • Ruby: 글쎄요, 그것은 단지 인기 있는 스크립팅 언어일 뿐입니다. 아마 거기에 쓰여진 안드로이드 앱이 많이 있을 겁니다. 이것이 특별한 이유는 없습니다.

이것을 일종의 비즈니스로 전환하고 싶다면 느리고, 전력을 많이 소모하고, 신뢰할 수 없고, 비용이 많이 드는 서버를 발명하는 것입니다. 단일 ARM 또는 x86_64 서버 상자는 동일한 수의 전화기가 수용할 수 있는 것보다 더 강력한 수백 개의 가상 머신을 호스팅할 수 있습니다. 하드웨어 비용은 아주 저렴하고, 전력도 적게 사용하며(모바일 프로세서는 서버 작업 부하에 최적화되어 있지 않으며, 수백 개의 USB 전원 공급 장치는 ATX 전원 공급 장치 1개보다 효율이 낮음), 유지 관리가 훨씬 더 쉽습니다. 서버 펌웨어 업데이트를 얻는 옵션이 있습니다.

생각해 볼 점을 하나 말씀드리겠습니다. 독일의 전기 요금은 킬로와트시당 0.34유로입니다. 이는 1W가 1년에 약 3유로에 해당한다는 의미입니다. 750mA 출력 3.75W를 제공하는 USB 전원 공급 장치(5V) 이러한 전원 공급 장치의 일반적인 전력 효율은 그다지 높지 않습니다. 80%이면 충분하므로 입력 시 4.7W로 저부하에서 전화기를 실행할 수 있습니다. 1년에 14유로입니다.

비교를 위해 azure, ionos, AWS 또는 디지털 오션의 소형 가상 머신 비용은 연간 약 24유로입니다. 여기에는 전력, 실행에 필요한 하드웨어, 트래픽 비용, IP 주소(여기서는 가격이 실제로 가장 중요합니다. 동일한 IPv4 주소 뒤에 많은 서버를 배치할 수 있으면 비용이 훨씬 낮아집니다), 전체 데이터 센터(24개)가 포함됩니다. 네트워크) /7 인력 충원, 냉각, 시스템에 전력을 공급하는 여러 중복 스토리지 클러스터... 중고 전화기를 구입하여 그 가격에 가까워도 충분히 오랫동안 사용할 수 없습니다.

답변2

아마도 전화 용도 변경은 돈이나 전력 소비 측면에서 서비스를 호스팅하는 가장 효율적인 방법은 아니지만 아마도 *pi PCB보다 더 효율적일 것입니다. 하지만 언젠가는 클라우드나 원격으로 호스팅되는 서비스에 대한 액세스가 제어될 것이라고 믿습니다. . 내 데이터가 다른 사람의 컴퓨터에 있다는 이유만으로 내가 하지 않을 일을 하는 데 이용당하고 싶지 않습니다.

나는 최근 인터넷 통신에 대한 의존도가 대중에게 큰 지렛대 역할을 하고 있다고 생각합니다. 제가 중앙 집중식 컴퓨팅의 효율성을 중요하게 생각하는 만큼, 기회주의자들이 사람들에 대해 더 많은 권력을 추구하는 세상에서 현재 속도를 계속 유지하면 우리의 종말이 올까 두렵습니다.

고객 관점에서 볼 때, 로컬 인터넷 연결/LAN/라우터에 웹 호스트나 웹 애플리케이션을 두는 것이 더 빠르고 안정적일까요? 업로드 속도는 일반적으로 최소이기 때문에 아마도 그렇지 않을 것입니다. 그러나 웹에 액세스하기 위한 인터넷 서비스 중단, 디지털 ID 요구 사항 등이 있는 경우 내 서비스가 로컬에 있으면 좋을 것입니다. 그날이 레벨에서 제공되면 네트워크에 더 로컬로 액세스할 수 있습니다. 그러나 인터넷을 유지하고 실행하는 것은 전 세계에 서비스를 제공하는 데 어려운 일이지만 가능한 실패 지점을 최소화합니다.

현재로서는 사용할 수 있는 데이터가 없으며 내 직감에 따르면 우리 모두가 자체 인터넷 연결에서 자체 호스팅할 수 있거나 최소한 일부 데이터를 분산하여 잠재적인 데이터 활용 전략을 완화할 수 있다면 우리의 자유는 견인력을 얻습니다. 메시지 통신은 장치 간이어야 하며 중앙 서비스에 연결할 수 없을 때 충돌이 발생하지 않아야 합니다. 이렇게 하면 인터넷이 완전히 중단되거나 일부 지역에서 광섬유 백본이 끊어졌을 때 로컬 메시 네트워크와 같은 인터넷 이외의 다른 수단을 통해 사람들에게 메시지를 보내도록 적응할 수 있습니다.

우리가 워키토키를 버리고 너무 쉽게 조작되어 대중이 평소에 하지 않던 일을 하도록 통제할 수 있는 통신 기술에 집착하게 되었다고 생각하는 것은 꽤 무서운 생각입니다.

필리핀에서는 활발한 프로모션 여부에 관계없이 모두가 Facebook 메신저를 사용하여 소통하기 때문에 인터넷이 끊어지면 커뮤니케이션에 큰 타격을 받게 됩니다.

많은 사람들은 책이 변경되는 것을 방지하기 위해 책의 사본을 갖고 있습니다. 경제 의제는 국민에 의해 통제되지 않고 패러다임이 변화하고 있기 때문에 웹 페이지에 쓰여진 책이나 기사는 한곳에서 쉽게 바뀔 수 있습니다. Way Back Machine은 웹에 있는 어떤 것의 이전 버전을 기록하는 좋은 방법인 것처럼 보이지만 그것조차도 권력을 가진 사람들에 의해 바뀔 수 있습니다. 나는 지역 주민들의 손에 정보를 보관하는 것이 자유의 미래를 위한 더 나은 선택이라고 믿습니다. 이러한 평범한 사람들이 자신의 개인 데이터와 미래의 자유를 소중히 여기고 조작하는 방법을 배우도록 하는 것은 독립에 매우 중요합니다. 독립은 자유를 위한 더 나은 기회를 가져왔습니다.

나는 또한 작은 크기의 *pi PCB와 우리가 할 수 있는 일에 매력을 느끼지만 전화기에는 이미 화면이 있고 일반적으로 더 많은 메모리와 CPU 성능이 있습니다. 정보의 횡포가 되기 전에 IT에서 휴대폰을 활용하면 좋을 것 같아요.

답변3

나도 똑같은 일을 하고 싶었고, 당신이 DIY 작업을 하고 싶다면 내가 당신에게 뭔가를 만들어 줄 수 있을지도 모릅니다.

답변에 있는 일부 사람들은 대부분의 휴대폰이 배터리 없이는 작동할 수 없다고 말합니다. 이는 기술적으로 잘못된 것입니다. 그러나 배터리가 감지되지 않으면 부팅을 거부하므로 배터리처럼 전화기에 전원을 공급하는 방법이 있습니다. 전화기를 열고 배터리를 꺼내고 케이블에 연결된 배터리에서 긴 직사각형 조각을 제거한 다음 이를 4.2V로 설정된 벅 컨버터에 납땜한 다음 벅 컨버터의 입력을 전화기 충전기에 납땜해야 합니다. .

벅 컨버터/충전기(5V/9V DC 공급 장치)는 전화기의 전력 소비량이 크게 변동하기 때문에 전화기를 켜진 상태로 유지할 만큼 강력하지 않을 수 있으며 전원 공급 장치가 전화기가 요청하는 필수 전류를 제공할 수 없는 경우 잔인하게 닫은. 일반적으로 휴대폰을 충전하는 것처럼 USB-C 케이블을 충전기에 연결된 충전 포트에 연결하면 휴대폰에 더 많은 전류가 공급되므로 갑자기 꺼지는 일은 거의 없습니다.

저는 이것을 iPhone XR에서 테스트했는데 훌륭하게 작동합니다. 이론적으로는 모든 스마트폰에서도 작동해야 합니다. 저는 화면이 깨진 Galaxy S20에서 이 작업을 수행할 계획입니다. 서버는 아마도 내 모바일 앱일 것입니다.

나는 또한 내 휴대폰을 최대한 활용하기 위해 가장 가볍고 거의 베어메탈에 가까운 Linux 소프트웨어를 갖는 방법을 찾고 있습니다(귀하의 게시물도 그렇게 봤습니다. 하하). 이제 여러 가지 가능성이 있습니다. 내가 할 가능성이 가장 높은 일은 GitHub에서 전화기의 커널/펌웨어를 가져와 수정하여 쓸데없이 RAM/CPU를 채우는 모든 정크를 제거하는 것입니다.

이것이 도움이 되기를 바랍니다.

관련 정보