Definition på terminal/konsol
En terminal, også kaldt en console eller (i KDE) konsol, er et program der gør det muligt at interagere direkte med linux operativ systemet, ved at indtaste forskellige kommandoer der så bliver udført øjeblikkeligt. Andre anvendte navne for det samme er 'skal' (shell) eller 'kommandolinie'. Terminaler er stærke værktøjer, og det har store fordele at have et basalt kendskab til anvendelsen af dem.
I aptosid finder du terminalen/ konsollen tæt på K-menu'en, symboliseret ved en Pc-skærm. Afhængigt af dit skrivebords-tema kan det være at du endda kan se en prompt i ikonet. Du finder også en genvej til programmet under K-menu > System.
Når du åbner programmet præsenteres du af terminalens prompt, den har dette format:
brugernavn@værtsnavn:~$
Forhåbentlig kan du genkende brugernavnet som dit log ind navn. Værtsnavnet er navnet på din maskine. ~ (tilde) indikerer at du er i din hjemmemappe (/home) og $ indikerer at du er logget ind på terminalen med bruger-rettigheder. Ved liniens slutning finder du din markør. Det er kommandolinien, og det er her du skriver de kommandoer du vil have maskinen til at udføre.
En hel del kommandoer kræver root-rettigheder (administrator-rettigheder) for at kunne udføres. For at opnå root-rettigheder kan du skrive su på kommandolinien og trykke retur. Du bliver så spurgt om dit root password. Mens du taster dit root password ind, bemærk da at du ikke kan se hvad du taster på skærmen. Afslut med retur.
Hvis det var det korrekte password så vil prompten nu ændres til:
root@værtsnavn:/home/brugernavn#
ADVARSEL: Når du er logget ind som root vil systemet ikke stoppe dig i at udføre potentielt skadelige ting, som at slette essentielle filer, osv. Du skal, når du er logget ind som root, være helt og aldeles fuldstændig sikker på at du er klar over hvad du foretager dig, for det er fuldt muligt at udrette seriøs og uoprettelig skade på systemet.
Bemærk at $ tegnet har ændret sig til et # (hash). I en terminal betyder # altid at du er logget ind med root-rettigheder. Igennem alle forklaringerne i denne manual vil vi udelade alt det der står foran $ eller #. Så en kommando som dette:
# apt-get installer noget
Betyder: Åben et terminalvindue, bliv root (med sux) og skriv kommandoen ved #-prompten. (Du skal ikke skrive #-tegnet)
Nogle gange bliver en konsol og/ eller en terminal korrumperet -eller hvis du bare vil rense din konsol for alt hvad der står- skriver du:
reset
og trykker retur.
Hvis en konsol eller en terminals output bliver forvrænget, kan du ofte kurere dette ved at trykke ctrl+l, som genskriver terminalvinduet. Denne forvrængning opstår som regel oftest når man arbejder med programmer der bruger ncurses interface, for eksempel irssi
En konsol eller terminal kan lejlighedsvist fremstå som frossen, det er den dog ikke, og alt hvad du skriver vil stadig blive behandlet. Denne tilstand kan opstå hvis man trykker ctrl+s ved et uheld. I dette tilfælde kan du prøve at trykke ctrl+q for at genoplive terminalen.
kulørte terminaler bruger:~$ og root:# prompt:
En kulørt terminal prompt kan måske redde dig fra at lave pinlige og potentielt katastrofiske fejl som root # bår du i virkeligheden skulle have udført kommandoen som bruger~$, eller farver kan anvendes til at for eksempel at markere kommandoer du udførte nogle 100 linjer tidligere.
Som standard er både bruger~$ og root# prompten den samme farve, men det er virkeligt nemt at ændre dem for begges vedkommende.
De basale farver er :
(the syntax is 00;XX) [00;30] Sortk [00;31] Rød [00;32] Grøn [00;33] Gul [00;34] Blå [00;35] Magenta [00;36] Cyan [00;37] Hvid [erstat [00;XX] med [01;XX] for at opnå en farvevariation].
For at ændre farven i bruger ~$ prompten:
Som $ bruger, med din favorit tekst editor:
$ <editor> ~/.bashrc
Gå til linie 39 og afkommenter den (fjern #), altså:
force_color_prompt=yes
Så til linie 53 hvor du finder farvekoden 01;32m, (eksempelvis), skift den kode til den farvekode du vil bruge.
Som eksempel, for cyan farve til bruger ~:$ prompten, [01;36m\], skal du ændre koden [01;XXm\] 3 steder i linien:
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;36m\]\u@\h\[\033[01;36m\]:\[\033[01;36m\]\w\[\033[00m\]\$ '
De nye farver optræder kun i nye terminal sessioner der startes efter du har gemt ændringen.
For at ændre farven i din root# prompt:
su <mcedit> /root/.bashrc
Gå til linie 39 og afkommenter den (fjern #), altså:
force_color_prompt=yes
Så til linie 53 hvor du finder farvekoden 01;32m, (eksempelvis), skift den kode til den farvekode du vil bruge.
Som eksempel, for rød farve til bruger ~:$ prompten, [01;31m\], skal du ændre koden [01;XXm\] 3 steder i linien:
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[01;31m\]:\[\033[01;31m\]\w\[\033[00m\]\$ '
De nye farver optræder kun i nye terminal sessioner der startes efter du har gemt ændringen.
Terminal baggbrunds farveer
For at ændre farven i baggrunden samt fonten der anvendes i terminalen kan du se under menu mulighederne i terminalen.
Der er et hav af muligheder for at ændre farve her, det vigtigste er dog at forsøge at holde det simpelt og overskueligt.
About Xapps whilst in X as root and sux2 as an alias
While the common command for becoming root is <su>, using kdesu <Application> or gksu <Application> will allow you run GUI / X11 applications from the desktop and allow root to start graphical applications.
For those used to using sux , (sux has been broken by a 'login' security update for a long time), will find that sux2, as an alias, is a good option in the meantime otherwise use, as $user:
$ suxterm
In most cases, using an Xapp while in root is to take advantage of a GUI editor like kate, kwrite, mousepad or leafpad to name just a few. X while in root is also required for the GUI partitioning application gparted. (Also see sudo).
Non-gui applications like mcedit, vim, vi, or emacs are highly recommended as editors, with mcedit being one of the intuitive editors of the non-gui applications for use by first time users of a text editor while in root with X. mcedit, vim, vi or emacs are possibly your only choices of an editor while not in X. (mc is an ideal file browser while not in X).
KDE options
To start kdesu in KDE:
Alt+F2
or right-click on the desktop and choose:
Run Command
then:
kdesu <Application>
Some KDE applications require dbus-launch in front of the application:
dbus-launch <Application>
Xfce options
To start Run Command in Xfce:
Alt+F2
or right-click on the desktop and choose:
Run Command
then:
gksu <Application>
Other Desktop Window Manager options
Another keyboard option also generic to all major Desktop Managers is:
Alt+F2
then:
su-to-root -X -c <Application>
Terminal/konsole options
To run kdesu in a terminal:
/usr/lib/kde4/libexec/kdesu
To run gksu in a terminal:
/usr/bin/gksu
Another option is ssh -X root@localhost otherwise use su-to-root -X -c :
ssh -X root@localhost
Whilst ssh is installed by defualt it may not be enabled. To enable ssh, as root:
service ssh start
else:
su-to-root -X -c <application>
Setting up an alias in a the terminal for kdesu, gksu, su-to-root -X -c or ssh -X root@localhost called sux2
Typing a long command line in the terminal all the time is not an ideal, so the solution is to set up an terminal/konsole alias called sux2.
Note: In each of the following examples the command to activate the alias in a terminal will be:
sux2 <application>
Setting an alias
The use of mcedit as $user in the following examples is deliberate. Feel free to use any editor you wish to use:
$ mcedit ~/.bashrc
Note:To enable any changes you have made you need to close the terminal/konsole and restart it.
Add the following code to the file ~/.bashrc by appending the code to the end of the file:
Setting kdesu an alias
alias sux2='/usr/lib/kde4/libexec/kdesu'
Setting gksu an alias
alias sux2='/usr/bin/gksu'
Setting su-to-root -X -c as an alias
alias sux2='su-to-root -X -c'
Setting ssh -X root@localhost as an alias
alias sux2='ssh -X root@localhost'
You may want to implement a ~/.bash_alias file to contain all the aliases that you find useful. Therefore make a file called ~/.bash_alias. Read the ~/.bashrc file and /usr/share/doc/bash-doc/examples:
apt-get install bash-doc
sudo er ikke understøttet
sudo er ikke aktiveret som standard på en harddisk instalation. sudo er tilgængeligt på live-ISO, eftersom der ikke er et root kodeord. Årsagen hertil er, at hvis nu en ondsindet hacker får fat i brugerens kodeord, så opnår de ikke også øjeblikkeligt fuld super-bruger privilegier og bliver i stand til at lave potentielt skadelige ændringer i dit system.
Et andet problem med sudo er at det fører til at et root program bliver kørt med en bruger konfiguration, hvilket kan ændre eller tilsidesætte tilladelser. I nogle tilfælde kan dette efterfølgende gøre programmer ubrugelige for brugeren. Brug sux2, kdesu, gksu eller su-to-root -X -c or ssh -X root@localhost som anbefalet.
Being in root
ADVARSEL: Når du er logget ind som root er der ikke noget der stopper dig i at udføre potentielt skadelige ændringer, som at slette essentielle system-filer. Su skal derfor være helt sikker på at du ved hvad det er du gør, for det er fuldt muligt at rette ubodelig skade på systemet når du er root.
Du bør under ingen omstændigheder starte applikationer som root for at udføre trivielle ting som at sende mails, surfe på nettet, eller skrive dokumenter!
Kommandolinie Hjælp
De fleste programmer har deres egen manual, de kaldes 'man page' eller 'manual page', og dem kan du læse fra kommandolinien. Syntaksen for at kalde en manpage er:
$ man "command"
eller
$ man -k <keyword>
Dette vil kalde manualen for "command" frem. Du navigerer dem med op- og ned-piletasterne. Prøv for eksempel at skrive:
$ man apt-get
For at afslutte manpage taster du q
Et andet nyttigt værktøj er "apropos" kommandoen. Apropos tillader dig at søge i manpages efter en kommando som du ikke kan huske hele syntaksen for. Du kan for eksempel prøve:
$ apropos apt-
Dette vil liste alle de kommandoer der findes for pakkemanageren 'apt'. 'apropos' værktøjet er meget effektivt, men at beskrive det her i detaljer går for vidt. For at finde ud af mere kan du jo læse apropos manpage.
Linux Terminal kommandoliste (uddrag)
Dette er en udemærket begyndelse til BASH fra linuxcommand.org
A very comprehensive list of commands in alphabetical order from An A-Z Index of the Bash command line for Linux and is a 'must bookmark'
Der er adskillige tutorials på internettet. Denne her er god for begyndere: A Beginner's Bash
Eller brug din favorit søgemaskine til at finde andre.