デバイスのコンソールに接続するには、Tizen SDKのSmart Development Bridge(SDB)ユーティリティが必要です。 開発者のサイトから個別にダウンロードできます。 バイナリファイルとして、Smart Development BridgeはTizen SDKと同じプラットフォームで使用できます:Windows 7(32および64ビット)、Ubuntu(32および64ビット)、Mac OS X(64ビット)。 この場合のUbuntuの指定はいくぶんarbitrary意的です;私のユーティリティはFedora 19(x64)で問題なく動作しました。 Smart Development Bridgeは複数のデバイスで動作し、デバイスのコマンドシェルへのリモートアクセスなど、デバイスで動作するための基本的なコマンドセットを提供します。 それから彼はまず私たちに興味を持っています。 それ以降の操作はすべてコンソールから行われます。
Tizenには、最初に作業を行うことができる2つの主要なユーザーがいます。開発者とroot、デフォルトは開発者です。 オペレーティングシステムと対話するときに最大限の機会を得るには、特権のレベルを上げる必要があります。そのためには、スーパーユーザーモードを有効にする必要があります。 接続に必要なコマンドを紹介します。
$ sdb root on 「ルート」アカウントモードに切り替えました $ sdbシェル sh-4.1#
そのため、システムへのルートアクセスを取得しました。 まず、プラットフォームに関する情報を取得するための簡単なテストを行います。 提供されているシェル、システムのバージョン、カーネルを調べてみましょう。
sh-4.1#echo $ SHELL / bin / sh sh-4.1#sh-バージョン sh-バージョン GNU bash、バージョン4.1.5(1)-release(armv7l-unknown-linux-gnueabi) Copyright(C)2009 Free Software Foundation、Inc. ライセンスGPLv3 +:GNU GPLバージョン3以降<http://gnu.org/licenses/gpl.html> これはフリーソフトウェアです。 自由に変更して再配布できます。 法律で許可されている範囲での保証はありません。 sh-4.1 $ cat / etc / system-release Tizenリリース2.2.0(Tizen) sh-4.1#uname -a Linux TRATS2 3.0.15-00002-g277d62a#1-Tizen SMP PREEMPT Tue Jul 16 13:12:44 KST 2013 armv7l GNU / Linux
かなり普通のLinuxはカーネル3.0.15を備えたTizen 2.2.0であり、Bash 4.1.5はコマンドシェルとして使用されます。 プロセッサやメモリなど、プラットフォームの特性に関する情報をリクエストします。
sh-4.1#cat / proc / cpuinfo プロセッサー:ARMv7 Processor rev 0(v7l) プロセッサー:0 BogoMIPS:1590.88 プロセッサー:1 BogoMIPS:1590.88 プロセッサー:2 BogoMIPS:1590.88 プロセッサー:3 BogoMIPS:1590.88 特徴:SWPハーフサムFastMult VFP EDSPネオンVFPV3 TLS CPU実装者:0x41 CPUアーキテクチャ:7 CPUバリアント:0x3 CPUパーツ:0xc09 CPUリビジョン:0 チップリビジョン:0011 ハードウェア:TRATS2 リビジョン:000c シリアル:4df764b878e3cf00 sh-4.1#cat / proc / meminfo | grep mem MemTotal:797944 kB MemFree:385720 kB sh-4.1#fdisk -l 警告:GPT(GUIDパーティションテーブル)が「/ dev / mmcblk0」で検出されました! util fdiskはGPTをサポートしていません。 GNU Partedを使用します。 ディスク/ dev / mmcblk0:15.8 GB、15758000128バイト 1ヘッド、16セクター/トラック、1923584シリンダー、合計30777344セクター 単位= 1 * 512 = 512バイトのセクター セクターサイズ(論理/物理):512バイト/ 512バイト I / Oサイズ(最小/最適):512バイト/ 512バイト ディスク識別子:0x00000000 デバイスブートスタートエンドブロックIDシステム / dev / mmcblk0p1 1 30777343 15388671+ ee GPT
予想されるパラメーターは、周波数が1.6 GHzのクアッドコアarmv7とギガバイトのRAMで、そのうち約800 MBがシステムで使用可能です。 16 Gbドライブ。 仕様は、Samsung Galaxy S III(GT-i9300)と完全に一致しています。これは、Tizen開発者にple乏者として提供されています。
Tabキーを2回押して、使用可能な実行可能ファイルに関する情報を取得してみましょう。 これに応じて、シェルは約1,000個のアイテムを撤回することを提案します。 いくつかの起動でオプションの数は952から1003の範囲であったため、正確な数は指定しません。いずれにしても、この数は携帯電話のオペレーティングシステムにとっては非常に大きいものです。 リスト全体が非常に長い間リストされているので、X11、enlightenment、scp、ssh、sshd、rpm、zypper、xclock、xeyes、xmessageの中で最も興味深いものに注目します。 このことから、電話機にはデスクトップに劣らない一連のアプリケーション用のオペレーティングシステムがあると結論付けることができます。X、シェル、パッケージマネージャーがあります。 デスクトップ環境はEnlightenmentです。 一部のアプリケーションは、コンソールから起動すると、電話画面に表示され、メニューが閉じます。 xeyesを実行すると、画面へのタッチに続いて電話画面に目が表示されます。 xeyesを起動した結果の例は、記事の冒頭の写真に示されています。 同様に、ディスプレイにoclock、xclock、xlogo、xmessageを表示できます。
sh-4.1 $ xmessage -geometry 240x120 -centerこんにちはHABRAHABR!
すべてのアプリケーションが「そのまま」機能するわけではないため、それらを使用するには設定が必要です。たとえば、sshdデーモンを起動するスクリプトがシステムに存在せず、デーモンが「額に」デーモンが起動せず、「権限分離ディレクトリがありません:」 var / run / sshd "。 問題は簡単に解決されます-このディレクトリを作成し、必要な権限を付与する必要があります。
mkdir / var / run / sshd chmod 0755 / var / run / sshd
操作が完了したら、デーモンを開始できます。
start-stop-daemon --start --pidfile /var/run/sshd.pid --exec / usr / sbin / sshd--p 22
パスワードなしでrootとしてsshサーバーに接続するため、サーバーの電源を入れたままにしません。
start-stop-daemon --stop --pidfile /var/run/sshd.pid
パッケージ管理システムに移りましょう。 システムにはRed Hat Package Managerバージョン4.9.1がインストールされています。
sh-4.1#rpm-バージョン RPMバージョン4.9.1
プレインストールされたパッケージを更新する機能を確認してください。 Zypperは、GNU / Linux openSUSEディストリビューションで使用されるコンソールパッケージマネージャーです。 パッケージマネージャーがある場合は、パッケージを格納するリポジトリが必要です。 zypper refreshコマンドを使用してパッケージリストを更新しようとしましたが、ここでは失望が待っています-リポジトリが見つかりませんでした。
sh-4.1#zypperの更新 リポジトリ 'Tizen-main'メタデータの取得[\] 指定されたパス '/srv/snapshots//tizen-2.2/common/tizen-2.2_20130717.6/repos/tizen-main/armv7l/packages/'はディレクトリではありません:ファイル:/srv/snapshots//tizen-2.2/ common / tizen-2.2_20130717.6 / repos / tizen-main / armv7l /パッケージ/ リポジトリ「Tizen-main」メタデータの取得[エラー] リポジトリ 'Tizen-main'は無効です。 [|]指定されたURLで有効なメタデータが見つかりません このリポジトリに定義されているURIが有効なリポジトリを指しているかどうかを確認してください。 上記のエラーのため、リポジトリ 'Tizen-main'をスキップしています。 エラーのため、リポジトリを更新できませんでした。
エラーメッセージのテキストから判断すると、Tizen-Mainリポジトリは存在しないパスにあります。 リポジトリの公式サイトを見てみましょう。 電話で既にわかっているように、TIZEN 2.2があります。http: //download.tizen.orgに適切なリポジトリがいくつかあります 。 古いリポジトリを切断し、いくつかの新しいリポジトリを接続します。 tizen-2.2リポジトリとともに、もう少し新しいtizen-2.2_20130719.3を接続します。 要求されていないリポジトリは常に無効にできます。
zypper mr -d 1 zypper ar http://download.tizen.org/releases/2.2/tizen-2.2/repos/tizen-base/armv7l/packages/ Base zypper ar http://download.tizen.org/releases/2.2/tizen-2.2/repos/tizen-main/armv7l/packages/ Main zypper ar http://download.tizen.org/releases/2.2/tizen-2.2_20130719.3/repos/tizen-base/armv7l/packages/ Base20130719 zypper ar http://download.tizen.org/releases/2.2/tizen-2.2_20130719.3/repos/tizen-main/armv7l/packages/ Main20130719 ジッパー更新
システムは、パッケージをインストールしてアップグレードする準備ができています。
Tizenは非常に柔軟なシステムであり、多くの可能性があります。 結論として、接続されたリポジトリには、cmake、ccache、gccなどの開発ツールがありました。 この事実は、Tizenの下での開発の新しい可能性を開きます。