私は素人なので、ほとんどは参考にしたサイトのパクリ。基本的に sudo -s して作業。あと言語を日本語にするとターミナルのメッセージがよくわからなくなるため、本体GUIから言語を英語に設定。
SSH
まずはwindowsからadbで作業
adb devices #デバイスID確認 adb -s ほにゃらら(ID) shell android-gadget-service enable ssh mkdir .ssh chmod 700 .ssh cd .ssh ssh-keygen #入力項目は全て空白 cp id_rsa.pub authorized_keys chmod 600 authorized_keys cp id_rsa ~ exit cd /d (作業フォルダ) #作業フォルダに移動 adb -s ほにゃらら(ID) pull /home/phablet/id_rsa
このid_rsa(秘密鍵)を利用してpoderosaの公開鍵認証で接続。
userはphablet、パスワードはUbuntu Touchのロック解除のパスワード(PINの場合はその数字らしい)
SSHでパスワード認証を可能にする (サービス起動を無効化し、rc.localから起動する)
update-rc.d ssh remove systemctl disable sshd.service #だったかな rm /etc/init/ssh.conf #適宜バックアップ rm /etc/init.d/ssh #適宜バックアップ #ここで /etc/rc*.d/ 類にsshが無いのを確認 nano /etc/rc.local #追記 mkdir /var/run/sshd #←ないとsshd起動しない /usr/sbin/sshd -D -o PasswordAuthentication=yes #多分/usr/sbin/sshd -DだけでOK
初期設定ぽいもの
mount -o remount,rw / nano /etc/rc.local #追記 mount -o rw,remount / adduser _apt --force-badname #_aptがいないとapt-get等で最後にWarningが出る #入力項目は全て空白 chown root: / 等 #ルートディレクトリ(/)などのownerが_aptになってるので直す apt-get update
システム容量拡張 2.0→5.0GiB
losetup /dev/loop0 blockdev --getsize64 /dev/loop0 truncate -s 5368709120 /userdata/system.img losetup --set-capacity /dev/loop0 shutdown -h now
本体のリカバリを起動し、adbから容量拡張
adb -s ほにゃらら(ID) shell losetup /dev/block/loop0 /data/system.img resize2fs -f /dev/block/loop0 reboot
swap領域拡張は、freeコマンドで確認すると32MiBあるから不要のような気もする(知らんけど)
wifiよりもモバイルネットワークを優先する
rmnet0のmetricはread-onlyになっていて弄れない?弄り方もよくわからないので、wifiのmetricを下げてモバイルネットワーク優先とする。
route -n #rmnet0(モバイル)が700, wlan0(wifi)が600になっている。 nmcli connection #wifiのNAMEを確認(SSIDのはず) nmcli connection modify wifiのNAME ipv4.route-metric 900 #rmnet0優先にする nmcli connection up wifiのNAME #設定反映 route -n #metricが変わったのを確認。再起動しても残る
ちなみに機内モードのコマンド
/usr/share/urfkill/scripts/flight-mode 1 #機内モードになる /usr/share/urfkill/scripts/flight-mode 0 #機内モード解除
nmcli radio wwan off → nmcli radio wwan on → nmcli device connect ril_0
なども試したが、これではIPアドレスは変わらない。データ通信が使えなくてもモバイル回線は切れていないため(通話はできる)。
squid
apt-get install squid nano /etc/squid/squid.conf #追記 acl localnet src 192.168.ほにゃらら.0/24 http_access allow localnet #←コメントアウトを外す visible_hostname none #プロキシ判定(匿名性)を改善する。ないと色々漏れる forwarded_for off request_header_access X-FORWARDED-FOR deny all request_header_access VIA deny all request_header_access CACHE-CONTROL deny all service squid restart #stopには時間かかる
LAN内のマシンからUbuntu Touchのwifi IPを通せば、固定回線でなくモバイルネットワークから出れるようになる。(モバイルネットワーク優先にしていれば)
参考にしたサイト
- Nexus 4 に Ubuntu Touch をインストールしてみた - Qiita
- Google Nexus5 に Ubuntu Touch をインストールする。(第6版) - rfriendsでラジオ録音
- nmcliコマンドの基礎 - えんでぃの技術ブログ
- Ubuntuでネットワーク接続の優先度を設定するにはどうすればよいですか?
- Squidでプロキシーサーバー (Proxy) を構築、設定 (CentOS 7, Windows Server 2008)
- B串から完全匿名串へ
- Squidのインストールと設定 - テクノロ自慰通信
- [WIP] Ubuntu touch for OnePlus One