System administrasjon

Hvordan kan jeg se hvem som bruker en bestemt fil? Og dersom flere bruker filen - hvordan kan jeg se dette?

Tror du kan bruke 'lsof' til dette (list open files). fuser -u

Endre UID

Kjør som root, på FC3-maskinen:

# find / -uid 500 -gid 500 -print0 |xargs -0 chown -h 1000:1000
# groupmod -g 1000 BRUKERNAVN
# usermod -g 1000 -u 1000 BRUKERNAVN
Dette forutsetter følgende: At det ikke finnes noen bruker som har UID 1000 og GID 1000 fra før, og at brukerkontoen har en personlig gruppe med samme navn som brukernavnet. Kan sjekkes med å kjøre kommandoen «id», slik:
vegar$greed [~] id
uid=1000(vegar) gid=1000(vegar) [En haug mindre interessante grupper]

Logge inn uten passord

Du kommer nesten altid inn ved å skrive

  linix init=/bin/sh
i lilo-promptet.

Begynte på en lengre forklaring for deg, men så fant jeg ut at det hele står enkelt forklart på http://linux.about.com/od/linux101/l/blnewbie3_2_3.htm

Prøv å skrive linux single på lilo-promptet. Veldig mange gamle distroer lar deg komme inn uten passord i single user mode. Så setter du passord på root og booter vanlig, så er du i gang. Funker ikke dette kan du kanskje trikse litt med chroot. Boot en live-cd, f. eks. ubuntus live-cd. Mount rotfilsystemet fra harddisken i live-distroen. Kjør så "chroot /mnt/mountpoint-for-harddisk" og kjør passwd root.

Mounte filsystemer

Denne fungerer utmerket her hos meg, der dev/hda1 er ntfs partisjonen, og /mnt/ntfs er monteringspunktet mitt (ps, jeg måtte reboote for at dette skulle virke):

  /dev/hda1 /mnt/ntfs ntfs utf8,umask=0222 1 0
Da har alle brukere, og ikke bare root aksess, og det er vel et stort pluss, eller? : - )

Mounte .iso-fil som disk:

  mount -t iso9660 -o loop image.iso /mnt/image

Mounte /tmp i minnet:

  mount -t tmpfs memory /tmp
tmpfs er et minnebasert filsystem som kan swappe til disk.

Backup

archivelogs.cron

#!/bin/bash

# Archive logs from httpd and ftpd
# 29.05.00 - Created, Arne Hanssen

# Determine week and month number
WEEKNO=`date +%W`
MONTHNO=`date +%m`

# Set target filnames
DIR=/home/arne/logs
WEBLOGFN=$DIR/weblog.m$MONTHNO
FTPLOGFN=$DIR/ftplog.m$MONTHNO

# httpd-log
cp /var/log/httpd/access_log.1 $WEBLOGFN
chown arne.arne $WEBLOGFN

# ftpd-log
cp /var/log/xferlog.1 $FTPLOGFN
chown arne.arne $FTPLOGFN

backup.cron

#/bin/bash
# Backup Linux server, SNN, Finnsnes
# Set filename variables
LOGFN=/root/bin/tapebackup.log
STFN=/root/bin/tapestatus.txt

echo "Starting tape backup at" `date` >$STFN
# Test if tape can be accessed without errors
if mt -f /dev/tape rewind >>$STFN 2>&1
then
  # YES, get some status and run backup
  mt -f /dev/tape status >>$STFN
  mt -f /dev/tape tell >>$STFN
  tar -cvf /dev/tape --exclude $LOGFN /root /home /etc >$LOGFN 2>>$STFN
  mt -f /dev/tape rewind >>$STFN

else
  # NO, skip backup and write error message
  echo "Did not run tape backup, see error message above!" >>$STFN

fi

echo "Tape backup ended at" `date` >>$STFN
# Mail backup information to sysop
/bin/mail -s "Backup status." arne < $STFN

Diverse

Nekte svar på ping-kommandoer:

  echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

Finne åpne filer:

  lsof +L1
finner filer som holdes åpne av prosesser.