Terminal Activity: Difference between revisions
(→Common Terminal Commands: remove keyboard shortcuts from here, rephrase fedora, lowercase heading) |
(various cleanups, move all the copy and paste to one place, user section) |
||
Line 12: | Line 12: | ||
[[Image:Activity-terminal.svg|85px]] The [[Terminal]] activity grants access to the XO's [[Linux]] command line. |
[[Image:Activity-terminal.svg|85px]] The [[Terminal]] activity grants access to the XO's [[Linux]] command line. |
||
The Terminal is an Activity that allows you to control your XO directly from a command line, similar to the Terminal program in Mac OS X or the Command Prompt in Microsoft Windows. The Terminal allows you to do far more with your XO than running Sugar activities. But it is also possible to delete your data, |
The Terminal is an Activity that allows you to control your XO directly from a command line, similar to the Terminal program in Mac OS X or the Command Prompt in Microsoft Windows. The Terminal allows you to do far more with your XO than running Sugar activities. But '''BEWARE''' it is also possible to delete your data, so be careful. And if you become the [[root]] user, you have full control of the computer and can destroy all software! |
||
'''BEWARE: If you become user "root" by executing "[[su -l]] " you have full control — you can destroy all software!''' |
|||
== Starting Terminal == |
== Starting Terminal == |
||
Line 25: | Line 22: | ||
== Common '''Terminal''' commands == |
== Common '''Terminal''' commands == |
||
When you start Terminal, it runs the [[wikipedia:bash|Bash]] "shell" program that interprets keystrokes and commands. Its main job is to allow you to run other programs, for example: |
|||
* [[Sugar-Control-Panel|sugar-control-panel]] - Change [[Sugar-Control-Panel#nickname|nickname]], [[Sugar-Control-Panel#Color|XO Color]], [[Sugar-Control-Panel#Time|time zone]] and other options |
* [[Sugar-Control-Panel|sugar-control-panel]] - Change [[Sugar-Control-Panel#nickname|nickname]], [[Sugar-Control-Panel#Color|XO Color]], [[Sugar-Control-Panel#Time|time zone]] and other options |
||
* [[ifconfig]] - View [[Wifi Connectivity|Wireless Network connections]] |
* [[ifconfig]] - View [[Wifi Connectivity|Wireless Network connections]] |
||
Line 34: | Line 31: | ||
There are hundreds of Linux commands available in the Terminal, [[Linux software]] describes some more of them. |
There are hundreds of Linux commands available in the Terminal, [[Linux software]] describes some more of them. |
||
The OLPC system software on the XO is a slimmed-down version of [Fedora]]. |
The OLPC system software on the XO is a slimmed-down version of [[Fedora]] and so its command-line programs come from Fedora. Many command-line programs from Fedora are not available but experienced users can add them using [[yum]] or [[rpm]]. |
||
== |
=== Users and super-user === |
||
Initially Terminal connects to your computer as the default user (usually "olpc", perhaps "liveuser" on a [[Live CD]]). Some programs require that you run them as the [[root]] "super-user. You can prepend <tt>[[sudo]]</tt> to these, or press the #_ icon in the Activity menu to become root, or enter <tt>[[su -l]]</tt> to become root. To repeat, the root user has awesome destructive power, do run commands as root unless you have to. |
|||
It '''IS''' possible insert text in the Terminal Activity without having to use a pen and paper. All you have to do is highlight the text you want to insert. Then, go back to the Terminal Activity, and on the two buttons below the XO Touch Pad, you click right in the center of the two and that's it! |
|||
== Copy and paste in Terminal == |
|||
⚫ | |||
* Use the Edit menu |
|||
* Press Shift+Ctrl+C to copy, Shift+Ctrl+V to paste. (You have to hold the shift key down in addition because Ctrl+C and Ctrl+V are meaningful key combinations in terminal programs.) |
|||
* Plug a three-button mouse into a USB port and use the middle mouse button to paste. |
|||
* Click both buttons below the XO-1's track pad (or click directly between them) to paste. |
|||
You can select text in Terminal's window and use the last technique to duplicate it without first copying it to the Sugar clipboard. |
|||
⚫ | |||
⚫ | |||
Open a terminal and create a new file named ''paste'' in the home directory, this can be done with nano for example. |
|||
''(This is more relevant to earlier releases where copy and paste did not work in Terminal.'' |
|||
⚫ | |||
⚫ | |||
To create this using the nano text editor, enter |
|||
⚫ | |||
In the file enter the following |
In the file enter the following |
||
⚫ | |||
⚫ | |||
⚫ | |||
import gtk |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
Save and exit, then make the file executable by entering |
Save and exit, then make the file executable by entering |
||
chmod a+x paste |
|||
Finally to run the script to paste from the clipboard enter |
Finally to run the script to paste from the clipboard enter |
||
./paste |
|||
== Other keystroke commands == |
|||
[[Keyboard shortcuts]] lists special keys in Sugar. Some of these don't work in Terminal, or require that you press the Shift key as well. |
|||
==Change font size in the Terminal |
==Change font size in the Terminal activity== |
||
To increase the print size in Terminal: |
|||
* Launch the Terminal activity. |
* Launch the Terminal activity. |
||
Line 72: | Line 78: | ||
Font = Monospace 16 |
Font = Monospace 16 |
||
(or whatever you want—see [[Fonts]] for info on determining available fonts). |
(or whatever you want—see [[Fonts]] for info on determining available fonts). |
||
* Press |
* Press Control+X and answer '''Yes''' to save. |
||
* Stop the |
* Stop the Terminal activity (the stop-sign icon in the top right-hand corner of the Activity menu) |
||
* Re-open |
* Re-open Terminal, the terminal should now be in a larger font. |
||
==The Console== |
==The Console== |
||
Line 96: | Line 102: | ||
To increase the font size in the console, type: |
To increase the font size in the console, type: |
||
setfont sun12x22 |
setfont ''sun12x22'' |
||
For a list of other console fonts, look in /lib/kbd/consolefonts/ and type: |
For a list of other console fonts, look in /lib/kbd/consolefonts/ and type: |
||
Line 102: | Line 108: | ||
(remove the suffix .psfu.gz when used with the 'setfont' command) |
(remove the suffix .psfu.gz when used with the 'setfont' command) |
||
For a |
For a permanant change, edit the line: |
||
" ro ${ROOTDEV} console=ttyS0,115200 console=tty0 fbcon=font:sun12x22" expand$ to boot-file |
" ro ${ROOTDEV} console=ttyS0,115200 console=tty0 fbcon=font:''sun12x22''" expand$ to boot-file |
||
in /boot/olpc.fth and substitute |
in /boot/olpc.fth and substitute your font choice for ''sun12x22''. |
||
==Cutting and Pasting== |
|||
===Using build 650=== |
|||
It is not possible to cut and paste from the terminal to other activities. However you can use the the clipboard function (i.e., to cut and paste) to drop text into a terminal if you attach a 3 button USB mouse to your USB port. After you have copied text from the web page(usually Ctl C), switch to the Terminal activity, put your cursor on the command line and click your middle button. Doing that should cause the text to be copied successfully. |
|||
: Isn't it possible to configure the X Server so that the "double chord" of pressing the left and the right mouse button at the same time, emulate the middle mouse button? But even simpler would be to use the right mouse button for pasting since it is not currently used in the terminal. -- Dov Grobgeld - 2008-01-23 |
|||
Also try "CTRL+SHIFT+V" for paste. |
|||
== Alternative terminal program== |
== Alternative terminal program== |
||
Line 120: | Line 118: | ||
[[yum]] install gnome-terminal |
[[yum]] install gnome-terminal |
||
Use an existing terminal session to launch a 'gnome terminal' session. |
|||
⚫ | |||
you would have to use an existing terminal session to launch a 'gnome terminal' session, until a sugarized version is available. |
|||
⚫ | |||
* [[Linux software]] A brief description of <i>some</i> of the linux software that is installed with Sugar. |
* [[Linux software]] A brief description of <i>some</i> of the linux software that is installed with Sugar. |
||
* [http://www.ss64.com/bash/ BASH Reference] A longer list of commands and programs |
* [http://www.ss64.com/bash/ BASH Reference] A longer list of commands and programs (many are not installed on the XO-1 by default due to its constrained storage. |
||
h4y33kj<s>Strike-through text</s> |
Revision as of 00:38, 15 March 2009
Image:Support-banner-square.png|173px|community support pages rect 0 0 135 204 [1] rect 135 0 345 204 Support FAQ rect 0 205 135 408 [2]
- Comment : there's some whitespace here:
rect 135 205 345 408 Other support
- maybe desc none is better. testing.
desc none
</imagemap>The Terminal activity grants access to the XO's Linux command line.
The Terminal is an Activity that allows you to control your XO directly from a command line, similar to the Terminal program in Mac OS X or the Command Prompt in Microsoft Windows. The Terminal allows you to do far more with your XO than running Sugar activities. But BEWARE it is also possible to delete your data, so be careful. And if you become the root user, you have full control of the computer and can destroy all software!
Starting Terminal
The Terminal Activity is found in the Activities taskbar at the bottom of your Home View. You may need to scroll through the Activities taskbar by using the right arrow icon at the bottom of your screen () to find the icon.
Starting a console
You can also access a Linux command prompt by switching to the console, instead of starting the Terminal activity.
Common Terminal commands
When you start Terminal, it runs the Bash "shell" program that interprets keystrokes and commands. Its main job is to allow you to run other programs, for example:
- sugar-control-panel - Change nickname, XO Color, time zone and other options
- ifconfig - View Wireless Network connections
- nano for editing text files directly. If you want to edit text files in Sugar, use Write.
- yum for automatically installing new software.
- rpm - another way to automatically install new software
- olpc-logbat - log the activity of the battery system. Useful for assisting developers in debugging battery problems.
There are hundreds of Linux commands available in the Terminal, Linux software describes some more of them. The OLPC system software on the XO is a slimmed-down version of Fedora and so its command-line programs come from Fedora. Many command-line programs from Fedora are not available but experienced users can add them using yum or rpm.
Users and super-user
Initially Terminal connects to your computer as the default user (usually "olpc", perhaps "liveuser" on a Live CD). Some programs require that you run them as the root "super-user. You can prepend sudo to these, or press the #_ icon in the Activity menu to become root, or enter su -l to become root. To repeat, the root user has awesome destructive power, do run commands as root unless you have to.
Copy and paste in Terminal
- Use the Edit menu
- Press Shift+Ctrl+C to copy, Shift+Ctrl+V to paste. (You have to hold the shift key down in addition because Ctrl+C and Ctrl+V are meaningful key combinations in terminal programs.)
- Plug a three-button mouse into a USB port and use the middle mouse button to paste.
- Click both buttons below the XO-1's track pad (or click directly between them) to paste.
You can select text in Terminal's window and use the last technique to duplicate it without first copying it to the Sugar clipboard.
Paste script
(This is more relevant to earlier releases where copy and paste did not work in Terminal.
You can create a command-line script named paste to paste text from the clipboard into Terminal. To create this using the nano text editor, enter
nano paste
In the file enter the following
#!/usr/bin/python import pygtk import gtk cb = gtk.clipboard_get(selection = "PRIMARY") print cb.wait_for_text()
Save and exit, then make the file executable by entering
chmod a+x paste
Finally to run the script to paste from the clipboard enter
./paste
Other keystroke commands
Keyboard shortcuts lists special keys in Sugar. Some of these don't work in Terminal, or require that you press the Shift key as well.
Change font size in the Terminal activity
To increase the print size in Terminal:
- Launch the Terminal activity.
- Type
nano ~/.sugar/default/terminalrc
- Find the line saying
Font = Monospace 8
And change it to
Font = Monospace 16
(or whatever you want—see Fonts for info on determining available fonts).
- Press Control+X and answer Yes to save.
- Stop the Terminal activity (the stop-sign icon in the top right-hand corner of the Activity menu)
- Re-open Terminal, the terminal should now be in a larger font.
The Console
Another way to bring up the Linux command prompt is by pressing the Ctrl+Alt+Neighborhood keys at the same time (the Neighborhood view key is represented by a circle with 8 small dots ). This will switch to a console terminal that runs outside the Sugar UI and X Window System. The console also displays some internal messages during XO operation. (Note that many Sugar binding are not available in the console, so commands such as sugar-control-panel will not work there.)
To return to the X Window System environment, press Ctrl+Alt+Home keys ().
There is a second terminal (technically, /dev/tty2) outside Sugar that you can switch to by pressing Ctrl+Alt+Group keys ().
Logging in to the console
In "Ship.1" releases (builds 650, 653, and 656), the console may give you a login prompt and require you to login before you can enter commands. If so, type root and press the Enter key,
xo-NN-NN-NN login: root
In more recent builds both virtual terminals log you in as root after you first press Enter.
You are now logged in as the root user, be careful.
Changing font size in the console
To increase the font size in the console, type:
setfont sun12x22
For a list of other console fonts, look in /lib/kbd/consolefonts/ and type:
ls /lib/kbd/consolefonts/*.psfu.gz
(remove the suffix .psfu.gz when used with the 'setfont' command)
For a permanant change, edit the line:
" ro ${ROOTDEV} console=ttyS0,115200 console=tty0 fbcon=font:sun12x22" expand$ to boot-file
in /boot/olpc.fth and substitute your font choice for sun12x22.
Alternative terminal program
You can install gnome-terminal:
su -l yum install gnome-terminal
Use an existing terminal session to launch a 'gnome terminal' session.
See also
- Linux software A brief description of some of the linux software that is installed with Sugar.
- BASH Reference A longer list of commands and programs (many are not installed on the XO-1 by default due to its constrained storage.