tisdag 1 september 2009

måndag

SHELL SCRIPT

#!/bin/bash

om man bara har läsbehörighet
bash foo
bash < foo
cat foo | bash

Ett script:
du -sk *
ls -l


if
for
while

if ls apa
then
cp apa banan
else
touch banan/apa
fi

if ls apa;then; cp apa banan; else touch banan/apa; fi

ls apa && cp apa banan

&& - gör nästa om första gick bra
& - kör det första i bakgrunden

"testcase" - (man test /testcase)

if [-t apa]

-f vanlig fil
-d katalog
-x körbar fil

while ls -l apa
do
sleep 30
done

om den inte hittar filen så sleepar den

tar varje apa och utför något.
for apa in *
do
cp $apa /tmp
done


for i in /home/indata *
do
gzip -9 "$i" (kan vara bra med " " runt denna pga mellanslag)
if df | grep /utdata
then
mv "$i.gz" /utdata
else
mv "$i.gz" /home/klara
fi
done


foo.sh (kallar vi filen)

#!/bin/bash

foo.sh &
ls
foo.sh &
exit 0
exit 0 (extra exit om man har klantat sig)


$0 (ger programnamnet)
$1 (första parameter)
$2 (andra param)
$3 (tredje param)
$n (n:te param)

echo
echo apa
echo $apa
echo "$apa"

\n new line
\t
\l
\013
\x10
\\
\f form feed (matar nästa ark - till ex kassaterminaler och industri)

dc (desk calculator)
bc

$((57 - 31))
$((57 + $apa))

[ 57 - eq $apa ] (blir "sant" om apa är 57)

-eq - equal
-ne - not equal
-le - less than/equal
-ge - greater/equal

$apa = " 57 "
är inte samma sak som
§banan = "57"
pga mellanslagen, jämför strängar


PROCESS

kan allokera minne
allokera resurser (filer, sockets, semaforer mm)
en process har status
prioritet -nice

kill (skickar bara en signal till en process, dödar inte)
kill -9 proc-nr (signalhanteraren för signalen 9 ska "fint" döda proc, om den vill)

sighup ( -1 terminalen dör)
sigint (sluta vid tillfälle)
sigkill (-9 döda processen fint)

nice (defaultparameter -20)
nice -20 gzip (parametrar) (ger gzip lite mindre resurser än normalt)
root kan ge positiva nice-värden - processen tar mer resurser från andra.

ps, top, jobs (processer,"job control" titta på vad som körs)
ps -fe (ger så komplett lista som möjligt)
ps aux (komplett lista på BSD)

killall [signal] [namn]

screen
dtach (också liknande screen, lite annorlunda)
ctrl a 0...9
ctrl a d (detach)
ctrl a c (create)
ctrl a n (next)
ctrl a p (previous)
ctrl a k (kill)


KOMMUNIKATION - dator-till-dator

write user tty
writeall

IRC - Internet Relay Chat
/server (namn/nummer)
/nick (namn)
/join (#kanal)

MSN
Jabber
AIM
ICQ
Skype

Pidgin (fd GAIM)
KIT

Epost
Var finns inlådan? (inbox)
lokal hantering?

TEXTBASERADE
elm
pine
mitt
mail

thunderbird
evolution
Kmail


SMTP
Lokala alternativ:
- mbox
- mdir (en katalog per användare)

Nätverk:
- POP3
- IMAP

sendmail
postfix



SSH
Stark autentisering via certifikat
Krypterad överföring
både klient och server får mha certifikat verifiera att de är vem de utgör sig att vara
Server: /etc/ssh
innehåller servernycklar
sshd_config
ssh_host_key
.bsh kan behöva ses över vid konfigurering av uppkoppling

ssh -l user host
ssh user@host

tar cf- /foo/bar | ssh user@host tar xf-

scp -r /foo/bar user@host (då blir user@host ägare)

sftp

lftp

PreSharedKeys
görs med
ssh-keygen

ssh-keygen -t rsa1 (kompatibla med äldre system)
ssh-keygen -t rsa
ssh-keygen -t dsa

/ssh/authorized.keys

ssh-agent
man autentiserar mot agenten som sedan tar hand om kommunikationen m klient.


RSH - RemoteShell
kan finnas i Windows
program, login, VPN mm

Telnet
fjärrsession


FTP
filöverföring


TFTP (+BootP)

DHCP

PuTTy

Inga kommentarer:

Skicka en kommentar