Vast.
Linux: rpm -qa
Sun: pkginfo
HP-UX: swlist
2. Mitä prosesseja koneessa pyörii?
Mitä prosesseja pyörii omalla käyttäjätunnuksellasi ?
Vast.
ps -ef
ps -fu user_name
3. Laske koneessa vapaana/käytössä olevan levytilan määrä.
Vihje: df komento ja awk, perl tai shell.
Esim. (Linux RH 6.1) vapaa levytila.
df -l | awk '/^\// {s+=$4} END {print s}'
Esim. tarzan & jane (HP-UX):
bdf -l | awk '/^\// {s+=$4} END {print s}'
tukki:
df -kl | nawk '/^\// {s+=$4} END {print s}'
4. Kirjoita edellinen tehtävä komentojonoksi ja ajasta komentojonon
suoritus viiden minuutin päähän käyttäen at-komentoa.
Ohjaa kaikki tulostukset tiedostoon.
Esim. (Linux)
#!/bin/sh # laske.sh # tulostetaan vapaa levytila tiedostoon. exec >> laske.tulos 2>&1 df -l | awk '/^\// {s+=$4} END {print s}'ja at komento.
5. Tee komentojono (shell script), joka tekee
kotihakemistostasi 0-tason varmuuskopion käyttäen tar
ohjelmaa. Lisätietoa tar(1)
Älä tee varmuuskopiota omaan kotihakemistoosi (quota rajoitus), vaan käytä työhakemistona esim. /tmp hakemistoa. Muista tehdä myös lokitiedosto siitä mitä on varmuuskopioitu.
Esim. (Linux GNU tar)
#!/bin/sh LOG=/tmp/${LOGNAME}_`date '+%d%m%y'`.log FILE=/tmp/${LOGNAME}_`date '+%d%m%y'`.tar tar -cvf $FILE $HOME >> $LOG 2>&1
6. HUOM! ALKUPERAISESSÄ TEHTÄVÄPAPERISSA ON VIRHE.
Muuta tehtävässä kaksi tehtyä komentojonoa niin, että
ensimmäisellä kerralla tehdään 0-tason varmuuskopio seuraavalla
kerralla 1-taso jne. Käytä optiota -g tai --listed-incremental F.
(Toimii vain GNUtarissa.) Katso man tar.
7. Miten määrität kaikille käyttäjille (#>1000) saman quotan tietylle
partitiolle (ks. luentomateriaali)?
Vast: (Linux)
#!/bin/sh # Laitetaan sama quota kaikille kayttajille. # Oletetaan etta yhdelle (p_user) on laitettu # quota, joka "monistetaan" muille kayttajille p_user=mjev; pw_file=passwd IFS=":" while read user pw uid rest do if [ "$uid" -gt 100 -a "$user" != "$p_user" ] then echo "Adding quota to $user..." /usr/sbin/edquota -p $p_user $user fi done < $pw_file