2024. április 20., szombat

Gyorskeresés

Útvonal

Cikkek » Telefónia rovat

Android terminál parancsok

  • (f)
  • (p)
Írta: |

Ezen cikk elsősorban ZTE Blade-n futó Android 2.1 (Éclair), 2.2 (Froyo) operációs rendszerekhez készült.

[ ÚJ TESZT ]

Ezen cikk a ZTE Blade-n futó Android 2.1 (Éclair), 2.2 (Froyo) operációs rendszerekhez készült, ugyanakkor számos ismertetésre kerülő parancs/eljárás alkalmazható másik androidos okostelefonon, sőt asztali gépen futó Linux (pl. Ubuntu, Debian) terminálban is!

Az Android Linux alapú operációs rendszer: tehát Linux kernel (rendszermag) töltődik be indításkor a memóriába.

Megjegyzés: a szürke színű szövegek elsősorban haladó felhasználóknak ajánlottak, illetve a téma iránt különösen érdeklődő olvasónak; aki kezdő/most ismerkedik az Androiddal kihagyhatja most a szürke részeket, és esetleg később elolvashatja azokat.

Megjegyzés: a boot.img lemezképfájl tartalmazza a bootloader nevű partíción a normál rendszerindításkor inicializált kernelt (ugyanis pl. a clockwork recovery is tartalmaz egy egyszerűsített kernelt; a kernel mérete Android esetén néhány MB).
Megjegyzés: Aki már felrakta a Clockwork recoveryt a ZTE Blade-re, a recovery indításakor láthatott egy fekete képernyőn megjelenő A N D R O I D ... szöveget (fejjel lefelé); a recovery kernele ekkor töltődik be.
További érdekességek:
- normál boot (elérése: Power gomb nyomvatartása a splash kép megjelenéséig): legelőször a splash partíción található bitképet látjuk, ezután/közben a bootloader partícióról betöltődik a kernel és a firmware egy része, ezután felcsatolódnak a system, userdata, cache stb. partíciók csak olvashatóan, és elindul a grafikus felület.
- recovery boot (elérése: Power gomb + hangerő MÍNUSZ gomb nyomvatartása a splash kép eltűnéséig): szintén a splash tartalmát látjuk, majd a recovery partícióról betöltődik egy speciális, "csökkentett tudású" kernel, majd betöltődik a recovery menüje is (ha felraktuk a clockwork-öt, egyébként 3 betűt látunk, és semmi különöset nem tudunk csinálni).
- bootloader mód (elérése: Power gomb + hangerő PLUSZ gomb nyomvatartása ~ 10 másodpercig): ekkor a splash után látszólag megáll a rendszer, ugyanis nem töltődik be a kernel. Ekkor PC-ről ADB-n keresztül olyan diagnosztikai beavatkozásokat hajthatunk végre, amelyeket futó (betöltött) rendszer alatt csak root jogkörrel tudnánk végrehajtani. Ebben az üzemmódban a telefon keres a fájlrendszerben a /mnt/sdcard/image helyen mbn fájlokat: ezekkel alacsony szintű műveletek automatizálhatók (pl. partícióátméretezés, partíciók tartalmának flashelése, boot, recovery csere stb.) Az eljárás neve: Total Phone Transfer (TPT), a ZTE Blade fórumán csodazip-nek hívják a zipet, amely tartalmazza az image mappát, ami tartalma az előbb említett helyre írható, ha low-level módosításokat szeretnénk végrehajtani (módosított verziói: csudazip, csudazip2).
Figyelem! A low-level (TPT) beavatkozások különös körültekintést, figyelmet kívánnak: ugyanis elképzelhető (ha a felhasználó nem követi PONTOSAN a leírásokat), hogy a készülék a végfelhasználó számára visszafordíthatatlanul károsodik, helyreállítása csak szakszervízben lehetséges!
TPT beavatkozás előtt a szkriptek (image.rar) md5 hashainek kiszámítása, összevetése a fájlokat publikáló által közzétett ellenőrzőösszeggel kritikus fontosságú!

Az ún. parancsértelmező (ha elindítjuk) egy burkot (shell) formál a rendszermag (kernel) körül: rajta keresztül közvetlenül (alacsony szinten) parancsokat adhatunk ki a rendszermag számára.

Miért is jó ez nekünk? A shell segítségével közvetlenül kommunikálhatunk a kernellel, sok műveletet egyszerűbben/gyorsabban végrehajthatunk a parancssorban, mint a grafikus felületen; sőt sok -- jellemzően alacsony szintű -- művelet (pl. partíciók teljes adattartalmának kiolvasása ("dump"), illetve felülírása (bekapcsolt rendszeren) kizárólag a shellen keresztül -- parancsok kiadásával -- hajtható végre. Továbbá készíthetünk shell szkripteket, amelyek futtatásával összetett műveletsorokat automatizálhatunk. A parancssor használata először kissé nehézkesnek tűnhet, azonban tanulás, gyakorlás után természetesnek fog tűnni.

A legtöbb Android okostelefon az ash shellt (parancsértelmező) tartalmazza. Az asztali Linux disztribúciókban defaultból általában a bash-t találjuk. A bash és az ash igen sok hasonlóságot mutat: tekinthetünk az ash-ra, mint a bash kisebb tudású változatára, amely kis méret- és alacsony erőforrásigénye miatt hordozható eszközök számára ideális. Természetesen a "tudása" is szerényebb a bash-hoz képest. Azonban a legtöbb parancs (főleg az egyszerűbbek) működik mindkét shellben.

Ezen leírás nem titkolt célja az, hogy a Linux terminál használatának alapjait az átlagos felhasználó is megismerhesse; mivel igen nagy átfedés van egy asztali Linux rendszeren futó bash shell és egy Android telefonon futó ash shellen futtatott parancsok között. Ha valaki az egyik shell-lel már megismerkedett, nem fog neki gondot okozni a másik használata.
A jelen leírás az Android telefonok shelljének használatára fókuszál, de a parancsok nagy része nem Android-specifikus, így azok működnek asztali gépen futó Linuxon (pl. Ubuntu) is.

A parancsok lehetnek belsők vagy külsők. A belső parancsok szorosan a shellhez tartoznak, azok szerves részei. Ezzel szemben a külső parancsok nem mások, mint az adott architektúrára (esetünkben: armv61) portolt futtatható programok (programforrásból az adott CPU-nk számára "megemészthető" formátumra fordított bináris, közvetlenül végrehajtható kódok).
Megjegyzés: az Android több architektúrán elérhető (pl. arm, x86 stb). Tehát akár asztali PC-n is natívan (és/vagy virtuális gépen) futtatható az x86-os verziója. Fontos megjegyezni, hogy az APK Android programok nem platform-specifikusak!
Megjegyezzük, hogy a két kategória (belső, külső parancs) között a valóságban nincs éles határvonal. Például az Android esetében a legtöbb "külső" parancs egy univerzális bináris programra (busybox a neve) mutató "parancsikon" (szaknyelven: szimbolikus link). A busybox ideális korlátozott erőforrású (hordozható) rendszerek számára, mivel alacsony az erőforrásigénye -- így igen sok beágyazott (embedded) Linux rendszer szerves része.

A következőkben ismertetek belső és külső parancsokat, amelyeket beírhatunk közvetlenül a telefonba (Terminal Emulator szükséges, a Marketből ingyenesen letölthető); vagy ha PC közelben vagyunk, USB, vagy Wifi kapcsolaton keresztül elküldhetünk parancsokat a telefonnak Windows/Linux operációs rendszer alól. Természetesen az utóbbi megoldás sokkal kényelmesebb a PC billentyűzete miatt. Ez utóbbi esetben is választhatunk, hogy az ADB (Android Device Bridge) shelljét használjuk ehhez (USB vagy Wifi (lásd az ADB Wireless ingyenes programot a Marketen) szükséges), vagy esetleg egy SSH (Secure SHell) szervert telepítünk a telefonra, és PC-ről (LAN-on belül) SSH-n csatlakozunk. Ekkor az SSHDroid nevű programot kell telepítenünk, ingyenesen elérhető a Marketből: a dropbear nevű SSH és SFTP szerver daemont tartalmazza, aminek igen alacsony az erőforrásigénye (az SSH-hoz Wifi szükséges!). Természetesen az ADB és az SSHDroid is lehetővé teszi számunkra, hogy a telefonunk tetszőleges partíciójára (beleértve az SD-kártyát is) fájlokat írjunk PC-ről, illetve azokról fájlokat PC-re másoljunk. Sőt az SSHDroid esetén egy másik telefonról is másolhatunk oda-vissza fájlokat a készülékünkre/(ről). Az SSH használata esetén a PC-n kliensnek Windows esetén a PuTTY ajánlott, a legtöbb Linux disztribúció pedig tartalmazza az OpenSSH klienst.

Az SSH előnye, hogy egyszerűen manipulálhatjuk a telefon összes fájlját PC-n keresztül egy explorer-szerű nézetben a WinSCP windowsos SFTP/SCP kliens segítségével. Továbbá SSH-n keresztül akár egy földrajzilag távoli gépről is küldhetünk parancsokat a telefonunkra, természetesen megfelelő beállítások után. Sőt, akár egy földrajzilag távol lévő mobil eszközről (pl. Android okostelefonról) is küldhetünk fájlokat a telefonunkra, persze mindkét irányba is (természetesen a shell (paranccsor) is használható távolról). Az SSH hátránya, hogy kezdők számára nem biztos, hogy jó választás, mivel kicsit több szakértelmet kíván a konfigurálása, mint az ADB-é.

Összefoglalva tehát, ha
- telefonon szeretnénk parancsokat beírni: telepítsük a Terminal Emulatort (ingyenes, Market) (ez a legegyszerűbb megoldás kezdőknek, ugyanakkor a parancsok bevitele lassú a telefon kicsi billentyűzete miatt);
- PC-n szeretnénk parancsokat bevinni és az ADB-t választjuk, telepítsük a szükséges drivereket és adb szoftvert a PC-re, -- és csatlakoztassuk a telefont USB-n (az usb debugging mode legyen aktív a telefonon!), vagy telepítsük az ADB Wireless apk-t (lásd a Marketen), és csatlakozzunk Wifin keresztül.
- PC-n szeretnénk dolgozni és az SSH-t választjuk, telepítsük az SSHDroid alkalmazást a Marketből, és PC-re a PuTTY-ot töltsük le, vagy Linux alatt virtuális terminálban adjuk ki az ssh -l root -p <port_száma> <telefon_lan_ip_címe> parancsot (az SSH kizárólag Wifin keresztül működik).

A kapcsolat típusa szerint összefoglalva tehát:
- Közvetlenül a telefonon szeretnék dolgozni -> Terminal Emulator;
- USB-n szeretnék dolgozni -> ADB shell;
- Wifin szeretném elküldeni a parancsokat a telefonnak -> ADB Wireless VAGY SSHDroid.

Felhívnám a figyelmet, hogy mindegyik módszer lokális (tehát nálunk kell lenni a telefonnak), kivéve az SSH, ami -- megfelelő konfiguráció (router, tűzfal, portbeállítások stb.) után -- távoli PC-ről (vagy Android telefonról) (természetesen megfelelő autentikációt -- jelszó vagy publikus kulcs azonosítás -- követően) is működik.

Fontos! El kell kerülnünk, hogy a telefon (mély) standby módba lépjen, miközben a parancsértelmezőnek PC-n keresztül küldünk parancsokat. Ugye USB-kapcsolat esetén a telefon általában töltődik, így akkor nem kerül standby-ba. Viszont a Wifi esetében a standby-ba kerüléskor megszakad a vezeték nélküli kapcsolat; ezt megelőzendő csatlakoztassuk a gyári adapterrel az elektromos hálózathoz a telefont! Így egy csapásra két-három legyet ütünk:
1. nem fog megszakadni a Wifi a shell használata közben,
2. a Wifi által felvett többletenergia rögtön pótlásra kerül, így nem merül a telefonunk.
3. Mivel a töltés az elektromos hálózatról zajlik, az gyorsabb, mint a PC-s töltés, továbbá egyenletesebb is, ami hozzájárul az akkumulátorunk élettartamának növeléséhez.

Fontos megjegyezni, hogy a parancsok döntő részének futtatásához rootolt rendszer szükséges (a főzött romok szinte kivétel nélkül ilyenek): ugyanis a legtöbb parancs (program) futtatásához rendszergazdai (root user) jogok szükségesek. A "rootolt" rendszeren bármiféle jelszó megadása nélkül, szabadon hozzáférhetünk az eredetileg zárolt rendszergazdai (root) felhasználói fiókhoz, tehát adminisztrátori jogkörrel tevékenykedhetünk a rendszeren. Tehát bármit megcsinálhatunk (akár kitörölhetünk rendszerfájlokat is, ami megbénítja a telefon működését), ez ezért nagy felelősséggel jár: a stock romokban nem véletlenül nem férhetünk hozzá defaultból a root jogkörhöz.

Miután elindítottuk a parancsértelmezőt (pl. PC-n adjuk ki a következő parancsot a Windows parancssorban: adb shell), szinte azonnal megjelenik a prompt, jelezve, hogy a rendszer készen áll a parancsaink fogadására. A prompt utolsó karaktere először $ jel. Ez jelzi, hogy normál (nem root) userként vagyunk bejelentkezve. A legtöbb parancshoz viszont root-nak kell lennünk, ezért indítsunk el egy újabb héjat, amiben már rootként tekint ránk a rendszer: ehhez írjuk be az su (super user) parancsot! Ekkor a következő sorban, megjelenik egy # jel: ez a root prompt (a normál user elindított tehát egy újabb parancsértelmezőt a munkamenetében). Ekkor természetesen a Super User program megkérdezi, hogy rendszergazdai jogkörrel tevékenykedhet-e a Terminal Emulator nevű program; ezt most engedélyezzük. Kilépni a munkamenetekből a logout vagy exit parancsokkal, vagy Ctrl+D billentyűkombinációval tudunk.
Alapvető parancsok:
- pwd (print working directory: az aktuális mappa elérési útjának kiírása),
- ls (list: az aktuális mappa tartalmának listázása),
- ls -l (=ls --long: hosszú, bővített mappalistázás),
- ls -a (=ls --all: rejtett fájlokat is kilistáz, amelyek neve .-tal kezdődik, ide tartozik az aktuális mappa . és az egy szinttel feljebbi mappa .. jele is).
A parancsok kapcsolói kombinálhatók: ls -l -a = ls -a -l = ls -al = ls -la.
A parancsot és a kapcsoló(ka)t és/vagy argumentumot (a parancs tárgyát) mindig min. egy szóközzel válasszuk el. Ha a parancs paraméterei nem összefüggőek (tehát van benne szóköz, pl. mivel olyan fájlnév, amiben van szóköz), akkor érdemes az argumentumot ", illetve ' jelek közé rakni. cd (change directory) paranccsal válthatunk mappát: pl. egy szinttel feljebb lépés: cd .. (fontos a parancs és argumentuma közötti szóköz!).

Elemezzük egy kicsit az ls -l parancs kimenetét!
Minden sor egy 10 karakterből álló sorozattal kezdődik. Az első helyen álló d betű azt jelenti, hogy könyvtárról van szó, a - jel pedig (egyszerű) fájlra utal. (Időnként más is előfordul ott, de az kevésbé lényeges, most azzal nem foglalkozunk.) A következő 3 karakter a tulajdonos engedélyeit kódolja. Az utána következő három a fájl/könyvtár csoportjának, az utolsó három pedig mindenki másnak a jogosultságait írja le. A fájl tulajdonosát a harmadik oszlopból olvashatjuk ki, a tulajdonos csoportot pedig a negyedikből. (A csoportoknak a mindennapi életben elég kevés szerepe van, de bizonyos esetekben nagyon praktikusak lehetnek.)
Egy fájl esetén az "r" az olvasásengedélyt, a "w" az írási engedélyt, "x" pedig a végrehajtási engedélyt jelenti (a Linux rendszerekben tehát nincsenek .exe fájlok (meg kiterjesztések sincsenek), itt ettől az engedélytől függ, hogy futtathatjuk-e az elméletileg végrehajtható típusú fájlt, vagy sem).
Könyvtárak esetén egy kicsit bonyolultabb a helyzet. Itt az "r" azt jelenti, hogy a könyvtár tartalma kilistázható. A "w" azt, hogy a könyvtárban írási engedényünk van. Míg "x" jelentése most nem az, hogy futtatható, hanem az, hogy hozzáférhetünk a könyvtár fájlaihoz.
Tehát pl. az r-- engedélynél látjuk a könyvtár tartalmát, ki is tudjuk listázni, de a benne szereplő dologhoz egy ujjal sem nyúlhatunk. Nem is olvashatjuk a fájlokat. A --x engedélynél pedig nem listázhatjuk ki a könyvtár tartalmát, tehát nem nézhetünk bele a könyvtárba, de ha mégis tudjuk, hogy milyen fájl van ott, akkor azt használhatjuk.
Ha egy könyvtárra nincs írási jogunk, akkor nem tudunk semmit módosítani a könyvtáron belül, még akkor sem, ha pl. egy ottani fájlra lenne írási engedélyünk. Tehát vigyázat, a "w" engedély felülírja a fájlok írhatósági engedélyét. Ez azt is jelenti, hogy ha a könyvtárnak van "w" engedélye, de egy benne levő fájlnak nincs, akkor is lehet törölni. A törlés előtt azonban megkérdez minket a rendszer, hogy biztosak vagyunk-e a szándékunkban.
Az ls -l parancs kimenetében a második oszlopban egy szám áll. Fájloknál ez mindig 1, könyvtáraknál pedig annyi, ahány alkönyvtára van a könyvtárnak. Mivel a . és a .. szimbólumokat is számolja, ez üres könyvtár esetén is 2. (Ezeket az ls nem listázza ki, mert rejtett könyvtáraknak számítanak, mint minden .-tal kezdődő könyvtár. Hasonlóan, a .-tal kezdődő fájlok a rejtett fájlok. A -a opcióval (kapcsolóval) ezeket is láthatjuk).
Az 5. oszlopban a fájl mérete szerepel. Könyvtárak esetén általában egy konstans számot kapunk, nem azt, hogy mekkora a könyvtár tartalma. Utána a fájl/könyvtár utolsó módosításának dátuma szerepel.

Másolni cp (copy) paranccsal, áthelyezni/átnevezni mv (move) paranccsal (argumentumaik (2 db): 1.: mit, 2.: hova), törölni rm (remove) paranccsal tudunk fájlokat. A fájlok (a parancsok argumentumában/argumentumaiban) hivatkozhatók abszolút vagy relatív elérési úttal. Az abszolút elérési út mindig a kályhától, a fájlrendszer gyökerétől: / indul. Figyelem! Nincs backslash! A relatív pedig az adott munkakönyvtártól indul (pl. a két szinttel fentebbi mappa relatív elérési útja: "../..". Üres könyvtár létrehozható, illetve törölhető rendre az mkdir illetve az rmdir parancsokkal. A törlés Linux rendszereken végleges!

Az echo paranccsal a standard outputra (kijelző) írhatunk ki szöveget. Ha a kimenetet átirányítjuk (>), akkor szöveges fájlt hozhatunk létre a munkakönyvtárunkban. Pl. echo 'Hello World!' > proba. Szöveges fájl végéhez hozzáfűzhető szöveg a >> operátorral. Szöveges (ASCII) fájlok tartalma megtekinthető a cat (concatenate) paranccsal. Egyszerű szöveg szerkesztésére használható a vi vagy a nano program. A nano-t nem minden rom tartalmazza.
Figyelem! A Linux rendszerek megkülönböztetik a kis- és nagybetűket (case-sensitive)!

A szabad memória (RAM) kapacitás megtekinthető a free paranccsal. A szabad háttértár kapacitás (ROM + SD-kártya) megtekinthető a df paranccsal (partíciókra lebontva). A legfontosabb partíciók a bootloader, system, userdata, cache (kevésbé fontosak: persist, splash). A mount paranccsal megtekinthetők a fájlrendszerünkben különböző csatolási pontokban mountolt (felcsatolt) partíciók (köztük az SD-kártya is).
Megjegyzés a partíciókról:
- a bootloader partíció tartalmazza a feltelepített rom zip fájljában, a gyökérben található boot.img fájl tartalmát;
- a system partíció tartalmazza a feltelepített rom zipjében található system mappa teljes tartalmát (csatolási pont: /system).
- a userdata partíció defaultból általában üres, a rendszer berendezi magának: a felhasználói adatok (apk, stb) kerülnek ide (csatolási pont: /data).
- a cache partíció átmeneti információkat tárol (a futtatott programok írhatják elsősorban).
- a splash partíció tartalmazza az indításkor, a kernel boot előtt/közben megjelenő bitképet, amely mérete jól definiált KB (nem tévesztendő össze a /system/media/bootanimation.zip opcionális bootanimációval, amely később jelenik meg, és animált általában!).
- ezeken túl van számos virtuális rendszerpartíció (pl. dev, root, persist stb), sőt alkalmazások is létrehozhatnak maguknak pl. az SD-kártyán.

Partíció leválasztható a fájlrendszerről az umount paranccsal. A rendszerpartíciók általában csak olvashatóként (r/o, read/only) vannak mountolva. Tartalmuk módosításához szükséges az újramountolásuk írhatóként (r/w, read/write): mount -o remount,rw /dev/block/mtdblock5 /system. A megfelelő módosítások után mountoljuk r/o-ként a partíciót, tehát: mount -o remount,ro /dev/block/mtdblock5 /system, feltéve, ha az 5. mtdblock eszköz tartalmazza (mount-tal ellenőrizhetjük) a rendszerpartíciót (system). Figyelem! A rendszermappák tartalmának módosítása könnyedén használhatatlan rendszerhez, illetve adatvesztéshez vezethet! A fentebb tárgyalt parancsok futtatása (a fájlműveletek gyakorlása/tesztfájlok létrehozása előtt érdemes a default "/" (gyökér) munkakönyvtárból az SD-kártyára lépni (ehhez parancs: cd /mnt/sdcard vagy cd /sdcard (az utóbbi szimbolikus link az előzőre)). Ha pendriveként csatlakoztatva van a telefon PC-hez, akkor a telefon fájlrendszerén keresztül az SD-kártyához nem férhetünk hozzá.
Megjegyzés: ha telefonunkat USB-n csatlakoztatjuk PC-hez, akkor defaultból (ha a storage módot kiválasztjuk) a telefon fájlrendszeréről lecsatolódik automatikusan az SD-kártya, majd a PC operációs rendszere azt automatikusan felcsatolja a saját fájlrendszeréhez. Ezután PC-ről szabványos USB Mass Storage interfészen keresztül látjuk az SD-kártyát. Fontos, ha befejeztük a munkát, akkor mindig leválasszuk (Hardver biztonságos eltávolítása...) a PC operációs rendszerében az SD-kártyához társított meghajtót. Ha ezt elmulasztjuk, akkor könnyedén írási/olvasási problémákkal, sőt ezen keresztül hibás rom frissítéssel találkozhatunk! A biztonságos eltávolítás azért fontos, mivel a rendszer írási gyorsítótárakat használ az általános rendszerteljesítmény (válasz idők) optimalizálásához: azaz, nem íródnak rögtön a fizikai lemezre a módosítások: előfordulhat, hogy az SD-kártyára ténylegesen sok adat az eltávolítási engedélyt megelőző néhány másodpercben kerül!

További hasznos parancsok:
- uptime (az utolsó indítás óta eltelt idő + rendszer erőforrás/rendelkezésre állási adatok),
- ping <szerver_ip_címe> (szerver pingelése),
- wget <url> (fájl(ok) letöltése szerverről),
- chmod (jogosultságok módosítása, pl. tegyünk futtathatóvá (executive) egy "teszt" nevű állományt: chmod u+x teszt),
- traceroute <szerver_ip_címe> (útvonalkövetés egy szerverhez),
- md5sum <fájl> (md5 hash kiszámítása fájlokhoz),
- cal (naptár, pl. cal -y 2011),
- date (dátum, idő megjelenítése),
- uname -a (Linux kernel verzió (build dátum stb), architektúra megjelenítése),
- du <fájl> (disk usage, fájlok lemezen elfoglalt helyének megtekintése),
- reboot (újraindítás),
- reboot recovery (újraindítás recovery üzemmódban), reboot bootloader (újraindítás bootloader üzemmódban),
- ether-wake <ip_cím> (magic packet küldése távoli PC felébresztéséhez),
- whoami (melyik felhasználóként vagyunk bejelentkezve),
- diff <1._fájl> <2._fájl> (2 fájl tartalmának összehasonlítása),
- touch <fájlnév> (üres fájl létrehozása adott névvel, illetve már létező fájl argumentum esetén az utolsó módosításnak a jelenlegi dátum/időre állítása),
- chown (change owner, fájl tulajdonosának megváltoztatása),
- top (az éppen futó processzek (folyamatok) megjelenítése, valós időben frissül, kilépés q billentyűvel),
- wc (szöveges fájl szavainak, karaktereinek megszámolása),
- dmesg, logcat (diagnosztikai információk megjelenítése; fájlba kiírhatjuk: pl. dmesg > <fájlnév>; kereshetünk benne: dmesg | grep <kulcsszó>, ahol a "|" karakter egy virtuális csővezeték: a dmesg kimenete azon keresztül átfolyik a grep bemenetébe),
- ash, sh (újabb shell indítása a jelenlegi shellen belül),
- find (fájl keresése),
- grep (a parancsnak irányított szövegben szó keresése),
- ssh -l <távoli_usernév> -p <távoli_port> <távoli_szerver_ip_címe> (ha telepítve van a dropbear ssh és sftp szerver, és szerepel az ssh binárisra (a /data partíción van) mutató szimbolikus link valamelyik, a PATH nevű környezeti változóban szereplő könyvtárban (lásd: echo $PATH, akkor ssh kapcsolat kezdeményezése egy ssh szerverrel),
- tty (az aktuálisan aktív termináleszköz nevének megjelenítése),
- reset (a kijelző letakarítása),
- sort (adatok rendezése különböző szempontok szerint),
- head / tail (szöveges fájl elejének / végének megjelenítése),
- ln -s (szimbolikus link (~parancsikon) létrehozása egy fájlhoz)
- zip, gunzip, unzip (fájlok tömörítése, archívum kicsomagolása)
- flash_image (lemezképfájl (img fájl) kiírása partícióra pl. boot, recovery; használatával PC kapcsolat nélkül (tehát driverek nélkül, USB-kábel nélkül) flashelhető recovery a telefonra; pl. flash_image recovery /sdcard/recovery.img parancs az SD-kártya gyökerében lévő recovery.img-vel felülírja a recovery partíció jelenlegi tartalmát) ...

Figyelem! A legtöbb parancs számos kapcsolóval rendelkezik, azokkal a parancsok működése finomhangolható. Itt -- hely hiányában -- a legtöbb parancsnál nem szerepelnek a kapcsolóik!

Jelenleg közel 50 parancs szerepel ezen leírásban: láthatjuk, hogy a parancsértelmező révén sok, változatos műveletet végrehajthatunk. Természetesen a parancsok listájának közel sincs itt vége, igyekszem bővíteni azokat (az Android specifikus parancsokra fókuszálva).

Mivel néhány parancs nem megfelelő használata révén használhatatlanná tehetjük a rendszerünket (a csodazippel ZTE Blade-nél azért szinte mindig visszaállítható a gyári állapot), illetve személyes adataink elveszhetnek, ezért kénytelen vagyok közzétenni a következő üzenetet:
FIGYELEM! AZ ESETLEGES ADATVESZTÉS VAGY A TELEFONBAN KELETKEZŐ KÁROKÉRT SEMMILYEN FELELŐSSÉGET NEM VÁLLALOK!
MINDENKI CSAK SAJÁT FELELŐSSÉGÉRE FUTTASSA A PARANCSOKAT, ILLETVE, HA BIZONYTALAN EGYES PARANCSOK HATÁSAIT ILLETŐEN, MINDIG NÉZZEN UTÁNA, VAGY KÉRDEZZEN ITT (HOZZÁSZÓLÁSBAN), MIELŐTT FUTTATNÁ!

Azóta történt

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.