Hack-A-N900/First Steps: Unterschied zwischen den Versionen

aus Metalab Wiki, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Zur Navigation springenZur Suche springen
(Die Seite wurde neu angelegt: <b>WARNING:</b> That's where the pleasure and pain of N900 starts. How much pleasure and/or pain depends highly on how familiar you are with linux. So make sure you kno...)
 
Zeile 1: Zeile 1:
 
<b>WARNING:</b> That's where the pleasure and pain of N900 starts. How much pleasure and/or pain depends highly on how familiar you are with linux. So make sure you know how to accomplish simple administrative tasks via a root shell without bricking your system and do regular [http://metalab.at/wiki/Hack-A-N900/Backup backups].
 
<b>WARNING:</b> That's where the pleasure and pain of N900 starts. How much pleasure and/or pain depends highly on how familiar you are with linux. So make sure you know how to accomplish simple administrative tasks via a root shell without bricking your system and do regular [http://metalab.at/wiki/Hack-A-N900/Backup backups].
  
== ROOT ACCESS ==
+
=== ROOT ACCESS ===
 
Start "Application Manager" and install package "rootsh"
 
Start "Application Manager" and install package "rootsh"
  
Zeile 11: Zeile 11:
 
</pre>
 
</pre>
  
== USBIP ==
+
=== USBIP ===
 
Connect the n900 via usb to your pc and select "PC Suite Mode".
 
Connect the n900 via usb to your pc and select "PC Suite Mode".
  
Zeile 28: Zeile 28:
 
Please refer to http://wiki.maemo.org/N900_USB_networking for a complete guide.
 
Please refer to http://wiki.maemo.org/N900_USB_networking for a complete guide.
  
== OpenSSH ==
+
=== OpenSSH ===
  
 
Install OpenSSH client and server:
 
Install OpenSSH client and server:
Zeile 61: Zeile 61:
 
# Change to no to disable tunnelled clear text passwords
 
# Change to no to disable tunnelled clear text passwords
 
PasswordAuthentication no
 
PasswordAuthentication no
 +
</pre>
 +
 +
=== Install essential tools ===
 +
 +
<pre>
 +
apt-get install bash coreutils-gnu grep-gnu wget vim
 +
</pre>
 +
 +
Change shell in /etc/passwd to bash:
 +
<pre>
 +
root:x:0:0:root:/root:/bin/bash
 +
user:!:29999:29999::/home/user:/bin/bash
 +
</pre>
 +
 +
<i>NOTE:</i> Maemo ignores [http://de.wikipedia.org/wiki/Shebang shebangs] for shells and always executes shell scripts in busybox. You need to pass the script explicitly to any other shell:
 +
<pre>
 +
bash ./test.sh
 +
</pre>
 +
 +
<b>WARNING:</b> Don't try to relink /bin/sh to /bin/bash. You system won't boot and you will have to reflash the device.
 +
<br>
 +
 +
<i>NOTE:</i> Gnu coreutils and gnu grep are prefixed with the letter 'g'. Therefore you need to call <pre style="display: inline; padding: 2px">/usr/bin/gls</pre> to use gnu ls. For some third party scripts/builds to work properly you might need to create symlinks for the gnu tools to be used.
 +
 +
Example:
 +
<pre>
 +
ln -s /usr/bin/ggrep /usr/bin/grep
 +
</pre>
 +
 +
You might also create bash aliases for gnu utils.
 +
 +
$HOME/.bashrc aliases example:
 +
<pre>
 +
# alias to gnu ls instead of busybux
 +
alias ls='gls --color=auto'
 +
 +
alias ll='ls -l'
 +
alias la='ls -la'
 +
alias md='mkdir'
 +
alias rd='rmdir'
 +
 +
# aliases to gnu grep instead of busybux
 +
alias grep='ggrep'
 +
alias egrep='gegrep'
 +
alias fgrep='gfgrep'
 
</pre>
 
</pre>
  
 
[[Kategorie:N900]]
 
[[Kategorie:N900]]

Version vom 14. April 2010, 14:12 Uhr

WARNING: That's where the pleasure and pain of N900 starts. How much pleasure and/or pain depends highly on how familiar you are with linux. So make sure you know how to accomplish simple administrative tasks via a root shell without bricking your system and do regular backups.

ROOT ACCESS

Start "Application Manager" and install package "rootsh"

Open "X-Terminal" on your N900.

Gain root access:

sudo gainroot

USBIP

Connect the n900 via usb to your pc and select "PC Suite Mode".

On your N900:

ifup usb0
ifconfig usb0 192.168.99.2

On your PC:

ifup usb0
ifconfig usb0 192.168.99.1

Please refer to http://wiki.maemo.org/N900_USB_networking for a complete guide.

OpenSSH

Install OpenSSH client and server:

apt-get install openssh

Generate ssh key:

ssh-keygen

From this point it's more convenient to work remotely via ssh.

Copy the generated private key to your PC.

scp root@192.168.99.2:/root/.ssh/id_rsa ~/.ssh/id_rsa_n900

Put the public key to the right place:

ssh root@192.168.99.2 "mv /root/.ssh/id_rsa /root/.ssh/authorized_keys"

Log on to your N900:

ssh -i ~/.ssh/id_rsa_n900 root@192.168.99.2

change /etc/sshd_config to denied password authentication:

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no

Install essential tools

apt-get install bash coreutils-gnu grep-gnu wget vim

Change shell in /etc/passwd to bash:

root:x:0:0:root:/root:/bin/bash
user:!:29999:29999::/home/user:/bin/bash

NOTE: Maemo ignores shebangs for shells and always executes shell scripts in busybox. You need to pass the script explicitly to any other shell:

bash ./test.sh

WARNING: Don't try to relink /bin/sh to /bin/bash. You system won't boot and you will have to reflash the device.

NOTE: Gnu coreutils and gnu grep are prefixed with the letter 'g'. Therefore you need to call

/usr/bin/gls

to use gnu ls. For some third party scripts/builds to work properly you might need to create symlinks for the gnu tools to be used.

Example:

ln -s /usr/bin/ggrep /usr/bin/grep

You might also create bash aliases for gnu utils.

$HOME/.bashrc aliases example:

# alias to gnu ls instead of busybux
alias ls='gls --color=auto'

alias ll='ls -l'
alias la='ls -la'
alias md='mkdir'
alias rd='rmdir'

# aliases to gnu grep instead of busybux
alias grep='ggrep'
alias egrep='gegrep'
alias fgrep='gfgrep'