Nastavení Raspberry Pi pro vzdálený přístup přes XMing

Velmi podrobný návod od stažení a instalace Raspbianu až po zprovoznění vzdáleného přístupu je zde.

Já předpokládám, že již máte Raspbian nainstalován a přístup k RPi přes SSH (putty) zprovozněn.
Je také vhodné mít na RPi nastavenu statickou IP (ale není to nutné).
Také předpokládám, že máte na RPi nainstallován Midnight Commander. Pokud ne, nahraďte mcedit za svůj oblíbený editor, nebo „sudo apt-get install mc“.

Celý příspěvek

Rubriky: Technika | Štítky: , , , , , , | Napsat komentář

Mklink pro Altap Salamander

Občas potřebuji v Altap Salamanderu vytvořit link.  Jelikož jsem v něm ale tuto možnost nenašel, hurá do command line, naštvat se, kterej že … to psal nápovědu ke commandu mklink a vytvořit si napodruhé odkaz (pořadí parametrů v nápovědě a ve skutečnosti je prohozeno).

Nicméně dnes jsem asi moc roztopil kotel a přehřál se mi mozek, načež jsem se rozhodl, že to takhle nejde a nemám přece tolik času, abych si mohl každé dva měsíce dovolit ztratit drahocenou půlminutu takovou otrockou dřinou, a rozhodl jsem se si vytvoření linku  zaintegrovat do Saláma.

Výsledkem bezmála půldenní činnosti a (velice nepřátelského) seznamování se s VBScript syntaxí je vytvoření asi stořádkového skriptu mymklink – zdroják viz. níže. Takže zbytečně promarněný půlden, ale třeba to někomu udělá radost.

Pokud si soubor „mymklink.wsf“ nakopírujete do „C:\Windows\System32“ (Win7 32bit) nebo jinam, kam máte nastavenu cestu pro vyhledávání commandů ve windoze,  pak integrace do Saláma vypadá asi takto:

_todo - Altap Salamander 2.54 EDU_2014-10-30_23-26-18

a takto pro hardlink.
_todo - Altap Salamander 2.54 EDU_2014-10-30_23-27-46

Pokud si soubor zkopírujete jinam, bude asi třeba zadat příslušný „Spouštěcí adresář“.

V Salámu to pak funguje asi takto: – pomocí F9 si vlezte do „Uživatelské nabídky“, a po vybrání položky vytvoří skript v adresáři otevřeném v neaktivním panelu odkaz na soubor(y)/adresář(e) vybraný(é) v aktivním panelu.
Před a po::

test - Altap Salamander 2.54 EDU_2014-10-30_23-45-56

Jméno nového linku je automaticky nastaveno stené jako jméno původního souboru. Pokud byste preferovali možnost být pokaždé na jméno nového linku dotázáni, vynechte v definici na řádce „Argumenty“ parametr /a

A nyní již zdrojový kód tohoto veledíla:

<job>
<script language="VBScript">

  helpTxt = vbNewLine & vbNewLine & "Usage: mymklink [/H] [/A] [/V] linkDir target " & vbNewLine & " linkDir: directory where new link will be created " & vbNewLine & " target: path to the file/folder linked " & vbNewLine & " /H: hardlink is created instead of symlink " & vbNewLine & " /A: Auto - new link name will be automatically created from target - without it user is asked for new link name" & vbNewLine & " /V: Verbose - prints out mklink output even on success, by default only on errors "
  If WScript.Arguments.Count < 2 Then  
    MsgBox helpTxt
    Wscript.Quit
  End If

  Set fso = CreateObject("Scripting.FileSystemObject")

  '// read required command line parameters 
  linkDir = Trim(WScript.Arguments.Item(WScript.Arguments.Count-2))
  target = Trim(WScript.Arguments.Item(WScript.Arguments.Count-1))

  '// remove trailing backslash in linkDir & target if necessary
  If(Right(linkDir,1) = "\") Then
    linkDir = Left(linkDir,Len(linkDir)-1)
  End If
  If(Right(target,1) = "\") Then
    linkDir = Left(target,Len(target)-1)
  End If

  '// check first param 
  If NOT fso.FolderExists(linkDir) Then 
    MsgBox "Error: linkDir """ & linkDir & """ must be existing folder" & helpTxt
    Wscript.Quit
  End If

  '// check second param and find out if it is Folder or File 
  If fso.FolderExists(target) Then
    isTargetFolder = 1
  Elseif fso.FileExists(target) Then  
    isTargetFile = 1
  Else
    MsgBox "Error: target """ & target & """ must be existing folder/file" & helpTxt
    Wscript.Quit
  End If

  '// read optional command line parameters
  'target = Trim(WScript.Arguments.Item(WScript.Arguments.Count-1))
  extraOptions = ""
  For i = 0 to WScript.Arguments.Count-3
    extraOptions = extraOptions & Trim(WScript.Arguments.Item(i))
  Next
  extraOptions = UCase(extraOptions)
  extraOptionHard = InStr(extraOptions,"H")
  extraOptionAuto = InStr(extraOptions,"A")
  extraOptionVerbose = InStr(extraOptions,"V")
  'MsgBox "Options: H:"&extraOptionHard&" A:"&extraOptionAuto&" V:"&extraOptionVerbose '// DEBUG

  '// choose proper mklink command modifier depending on target type and hard/sym parameter 
  If extraOptionHard Then 
    If isTargetFolder Then
      modif = "/J "
    Else
      modif = "/H "
    End If
  Else
    If isTargetFolder Then
      modif = "/D "
    Else
      modif = ""
    End If
  End If

  '// default link name created from target file name 
  linkName = fso.GetFileName(target)

  '// ask user for name of new link to be created
  '// if file/folder of specified name already exists user is informed and asked to give another name  
  '// if auto parameter is specified user is not asked in first loop
  tmpErrMsg = ""
  Do   
    If extraOptionAuto = 0 Then
      linkName = InputBox(tmpErrMsg & vbNewLine & "Enter the name for new link or press Cancel to end.", "Create Link", linkName)
      If linkName = "" Then
        Wscript.Quit
      End If
    End If

    link = linkDir & "\" & linkName

    If fso.FileExists(link) OR fso.FolderExists(link) Then
      tmpErrMsg = "Error: File or folder """ & link & """ already exists, choose another."
      link = ""
      extraOptionAuto = 0 '// We have to reset otherwise we will end-up with endless 
    End If
  Loop While link = ""

  '// create mklink command 
  'MsgBox "Parameters " & vbNewLine & "link: " & link & vbNewLine & "target: " & target '//DEBUG  
  cmdMkLink = "mklink " & modif & """" & link & """ """ & target & """ " 
  'MsgBox cmdMkLink '//DEBUG
  'Wscript.Quit '//DEBUG

  '// exec command and get mklink output 
  Set oShell = WScript.CreateObject("WSCript.shell")
  Set oExec = oShell.Exec("cmd /K " & cmdMkLink & " & exit" )
  Do While oExec.Status = 0
     WScript.Sleep 100
  Loop
  res = oExec.StdOut.ReadAll
  errors = oExec.StdErr.ReadAll

  '// (if VERBOSE option is specified output is always printed, otherwise only on error)
  If oExec.ExitCode <> 0 Then 
    MsgBox "Errors:" & vbNewLine & errors
  Else
    If extraOptionVerbose Then
      MsgBox res
    End If
  End If

</script>
</job>
Rubriky: Technika | Štítky: , , , , , , | Napsat komentář

Instalace CyanogenMod 10.2 na Samsung Galaxy Xcover 2 GT-S7710

Fórum na XDA Developers věnované portům CyanogenModu na Galaxy Xcover 2 je zde.

Telefon mám rootnutý (viz. zde). Nejsem si jistý ale předpokládám, že pro úspěšnou instalaci je to nutné.

Rom Manager (možno přeskočit)

Našel jsem tuto aplikaci jako možnost pro správu a instalaci ROMek.
Stáhl jsem a nainstaloval aplikaci Rom Manager z Google Play.
RomManager po mě po instalaci chtěl provést inicializaci tzv. „custom recovery“ – buď ClockWorkMod nebo TeamWinRecoveryProject.
Pokud jsem zvolil v RomManageru instalaci nebyla verze CWM pro Xcover2 k dispozici.
Pokud jsem vybral potvrzení, že už mám custom recovery nainstalován (ClockWorkMod), ptal se mě ještě na model (Unsupported device) a jeho verzi (vybral jsem 3.x+).
Aktuální verzi „recovery“ je možno zjistit restartem do recovery modu (vypnout a spustit stisknutím Volume UP + Home + Power).
Vzhledem k tomu, že Xcover 2 nebyl ve výběru zařízení, a navíc mi stejně ROM CyanogenMod nenabízel, rozhodl jsem se raději pro manuální instalaci a Rom Manager dále v návodu nepoužívám.
Ve fóru zde jsem našel doporučení používat verzi ClockworkMod 6.0.4.6.

Instalace ClockWorkMod 6.0.4.6

Návody v angličtině jsou zde a zde.

Stáhl jsem si do notebooku soubor s custom recovery ClockWorkMod 6.0.4.6 pro Xcover 2 pro aplikaci Odin. Stažení zde soubor 20140112_cwm-6.0.4.6_skomer_fixed.tar.md5.
Od každého souboru jsou zde 2 verze. Jedna je pro odin (končí .tar.md5) – tu používám já.  Druhá je pro heimdall – obdoba programu Odin pro linux (končí .img).
2014-05-09_11-59-30_Index of S7710recoverycwm by flxo@xda - Mozilla Firefox

Stáhl a spustil jsem program Odin 3.09 jako SPRÁVCE.
Odin - Altap Salamander 2.54 EDU_2014-01-18_13-17-20Odin - Altap Salamander 2.54 EDU_2014-01-18_13-17-48

Vypnul jsem telefon.
Zapnul jsem telefon v download modu (vypnout a spustit stisknutím Volume DOWN + Home + Power) a připojil ho k notebooku pomocí USB kabelu. (Ovladače USB od telefonu mám již naninstalovány).
Zkontroloval jsem, že ODIN telefon „vidí“ – nahoře v řádku ID:COM vidím 0:[COM36] a v boxu message „<ID:0/036> Added!!“.
2014-05-07_14-09-16_Odin3 v3.09
Klikl jsem na AP a vybral soubor s ClockWorkMod Recovery – tedy „20140112_cwm-6.0.4.6_skomer_fixed.tar.md5“.
Zkontroloval jsem, že je zaškrtnuto pouze „F.reset Time“ (odškrtnout „Auto reboot“).
Klikl jsem na „Start“.
2014-05-07_14-09-33_Odin3 v3.09
Po chvilce se nahoře objeví RESET a asi po 2 minutách se objeví PASS.
2014-05-07_14-11-46_Odin3 v3.09
Po rebootu do recovery modu (vypnout a Volume UP + Home + Power) jsem se ocitl v menu ClockWorkMod verze 6.0.4.6 (první řádek je „CWM-based Recovery v6.0.4.6“). Pohyb v menu je u mne volume Up/Down – nahoru/dolů; Power – potvrzení; Back – krok zpět.

Záloha stávajícího systému

V ClockWorkMod recovery jsem si provedl zálohu aktuálního systému na externí SD kartu.
- backup and restore > backup to /storage/sdcard1
Po spuštění napíše na prvním řádku volné místo (možno ověřit, že skutečně zálohuje na ext. kartu) a poté pár minut zálohuje. Vyčkal jsem na hlášku „Backup complete“.
Zvolil jsem v menu
- reboot system now
Po rebootu jsem zkontroloval zálohu (u mě adresář /storage/extSdCard/clockworkmod/backup/2014-05-07.13.54.15).
Tuto zálohu jsem si pro jistotu ješte zkopíroval na síťový disk přes ESFileExplorer (u mě má 1.68GB).

Kontakty a kalendář synchronizuji na Google, takže jsem nezálohoval.

Pro jistotu jsem si odzálohoval obsah ext. SD karty včetně partition pro Link2SD.
Použil jsem programy EaseUS Partition Master 9.3.0 a EaseUS Todo Backup Free 6.5
Nejprve jsem si prohlédl co na SD kartě je – první partition je normální FAT32 a za ní je ext3 partition pro Link2SD (nazvaný Androsys).
070_EaseUS Partition Master Free Edition - Free For Home Users_2014-01-18_13-14-20
Jeho obsah je vidět zde.
080_2014-05-08_12-41-37_Explore partition 090_2014-05-08_12-41-31_Explore partition
Poté jsem si na síťový disk odzálohoval nejprve samotný Link2SD partition Androsys (partition backup – sector by sector).
110_2014-05-08_13-02-04_EaseUS Todo Backup 120_2014-05-08_13-17-08_EaseUS Todo Backup 130_2014-05-08_13-23-52_EaseUS Todo Backup 140_2014-05-08_13-24-31_EaseUS Todo Backup
A pak také soubory z FAT32 partition kromě velkých adresářů, které už mám jinde (mapy, fotky, zálohu clockworkmod, … ) (files backup).
100_2014-05-08_12-52-57_F - Altap Salamander 2.54 EDU 150_2014-05-08_13-25-12_EaseUS Todo Backup 160_2014-05-08_13-34-19_EaseUS Todo Backup

 Instalace CyanogenMod 10.2

Odkazy na download zde a zde.

Stáhnul jsem 20140204_cm_10.2_skomer-ota-eng.flx.zip (189MB).
Zkopíroval jsem soubor na externí SD kartu do telefonu.

Nabootoval jsem do recovery modu (vypnout a Volume UP + Home + Power).
Nejprve jsem smazal některá stará data (bez provedení tohoto kroku u mně telefon po rebootu nenaběhl).
- wipe data/factory reset > Yes - Wipe all user data
Poté jsem nainstaloval CyanogenMod 10.2
- install zip > choose zip from /storage/sdcard1
Našel jsem a vybral 20140204_cm_10.2_skomer-ota-eng.flx.zip a potvrdil.

Po rebootu mi naběhl ořezaný funkční základ systému CyanogenMod.
První co jsem postrádal byl obchod Google Play.

Instalace Google Apps

Stáhl jsem verzi google apps pro mnou nainstalovanou verzi cyanogenmod (viz. zde).  Například odsud .
Zkopíroval jsem soubor na externí SD kartu do telefonu.
Nabootoval jsem do recovery modu (vypnout a Volume UP! + Home + Power).
Poté jsem nainstaloval Google Apps.
- install zip > choose zip from /storage/sdcard1
Po rebootu a vytvoření účtu Google (třeba přihlášením na Play) se objevily i kontakty.

Link2SD

Bohužel ani v CyanogenModu 10.2 není defaultně možnost přesouvat aplikace na externí SD kartu.
Proto jsem nainstaloval Link2SD z Google Play.
Po spuštění se mne aplikace zeptala „Vyberte systém souboru druhého oddílu své SD karty“.
Zvolil jsem ext3 (viz můj návod zde).
Poté jsem aplikaci přiřadil root práva a dostal jsem hlášku „Propojovací skript vytvořen, ….“, zvolil jsem „Restartovat zařízení“.
Po restartu už bylo možno aplikace linkovat (Vytvořit Odkaz).
Byl jsem celkem zvědav, jak si aplikace poradí s tím, že na ext3 partiotion pro linkování, už jsou nějaké aplikace nalinkované z původního systému.
Vyzkoušel jsem nainstalovat několik aplikací.
Vetšinou sice Link2SD nepoznala, že už je link vytvořen, ale po volbě Vytvořit Odkaz v Link2SD se aplikace nalinkovala a fungovala OK.
Jednou se mi stalo (aplikace Atlas Hub – 121MB), že se při linkování objevila chyba. Po odstranění starých dat (Odebrat odkaz) a opětovném linknutí už bylo OK.
Jednou se mi při automatickém updatu (Jedna z dříve nainstalovaných GoogleApps – Google Search) stalo, že Link2SD si aplikaci automaticky linknul aniž bych to v CyanogenModu nastavoval.
Kdybych tedy na CyanogenMod přecházel na trvalo, doporučil bych asi pro jistotu reformat ext3 partition na externí SD a link aplikací znovu po instalaci.
Po revertu – viz níže – byl problém s aplikacemi které jsem pod Cyanogen nainstaloval a linknul na SD – po spuštení spadli. Po zrušení a opětovném vytvoření odkazu opět funkční.

Používání

Vyzkoušel jsem problémy zmiňované na fóru XDA Developers. Wifi Tethering (Přenosný aktivní bod – sdílení mobilního připojení vytvořením Wifi sítě) u mě fungovalo bez problémů. Bluetooth handsfree naopak nefunguje (vyzkoušel jsem Nokia BH-108 a HF sadu v autě). Přesně jak je zmiňováno ve fóru, spárování a ovládání je OK, ale zvuk při telefonování není slyšet. BT Audio (přehrávání hudby z telefonu přes bluetooth) v autě funguje bez problémů.

Co se týká vzledu a používání vypadá CM na první pohled dobře a působí o něco svižněji než stock ROM. Některé věci se mi v default stavu nelíbily – přepínaná horní lišta, vzhled kontaktů – ale všiml jsem si, že GUI se dá vydatně konfigurovat, takže to si asi člověk odladí dle gusta.

Další co mi hned po instalaci chybělo je „Samsungovské“ rozsvícení svítilny podržením Volume Up při zamknuté obrazovce. To by ale mělo být řešitelné stažením aplikace z Google Play (nezkoušel jsem).

Během testování a hraní si s telefonem jsem nezaznamenal žádné problémy s restarty ani nefunkčností aplikací.

Nicméně jelikož handsfree v autě celkem využívám, rozhodl jsem se (zatím) pro návrat ke stock ROM.

Revert

Nabootoval jsem do recovery modu (vypnout a Volume UP + Home + Power).
Odzálohoval jsem si aktuální stav CM 10.2 pro případné budoucí testy
- backup and restore > backup to storage/sdcard1
Vyčistil jsem data.
- wipe data/factory reset > Yes - Wipe all user data
A obnovil jsem systém z původní zálohy.
- backup and restore > restore from storage/sdcard1
Vybral jsem původní zálohu a po doběhnutí (několik minut) jsem restartoval.
Po rebootu jsem dostal hlášku „Probíhá upgrade OS Android“ – chvíli chroustá ale na nic se neptá, proběhne a zmizí.
Ponaběhnutí se pustil update od Google Maps a Endomonda ale nedoběhl (nedostatek místa v úložišti).
Zkusil jsem další restart.
Po restartu jsem opět dostal hlášku „Probíhá upgrade OS Android“.
Poté stále problém s instalací aktualizací (nedostatek místa).
Pustil jsem Link2SD a odebral odkaz pro aplikace s kterými jsem experimentoval v CyanogenModu.
Znovu jsem restartoval a už se rozběhl update a doběhl OK.
Poté jsem aplikace znovu linklul na SD (Vytvořit odkaz).

Ještě jsem po revertu projel obsah vnitřní karty v prohlížeči souborů a všiml jsem si, že command wipe data/factory reset neodstranil adresář „0“ v rootu disku (souvisí s podporou více userů na novějších Androidech), ale zabírá jen asi 1MB tak jsem ho tam nechal.

Závěr

Dá se říct, že instalace CyanogenMod i návrat k původní Stock ROM je na Xcover 2 celkem bezbolestný proces. Na druhou stranu, pokud by byl telefon podporován přímo vývojáři CM, bylo by asi vše lepší. Až tedy budu příště kupovat telefon, už vím kam se mimo jiné podívám. A pokud by se na XDA objevila nová verze s funkčním propojením na BT handsfree asi dám CM ještě jednu šanci.

Rubriky: Technika | 17 komentářů