Archive for the 'Solaris' Category

Restaurando backups

April 26th, 2008 | Category: Solaris

Caso necessário, podemos determinando origem de um arquivo de backup.

Archive:

# ufsrestore ta /var/tmp/root.archive ./etc/passwd

Tape:

# ufsrestore tf /dev/rmt/0 ./etc/passwd

Restaurando backup em modo interativo

# cd /var/tmp
# ufsrestore if /dev/rmt/0
ufsrestore> ls
.:
.cpr_config etc/ lost+found/ sbin/ usr/
TT_DB/ export/ mnt/ sccs/ var/
b/ home/ net/ share/ vol/
bin kernel/ opt/ shared/ ws/
dev/ lib platform/ src/ xfn/
devices/ license/ proc/ tmp/
ufsrestore> cd etc
ufsrestore> add passwd shadow
ufsrestore> verbose
verbose mode on
ufsrestore> extract
Extract requested files
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume #: 1
extract file ./etc/shadow
extract file ./etc/passwd
Add links
Set directory mode, owner, and times.
set owner/mode for `.’? [yn] n
ufsrestore> quit
#

Restaurando backup sem modo interativo

# ufsrestore xvf /dev/rmt/0 ./etc/passwd ./etc/shadow
Verify volume and initialize maps
Media block size is 126
Dump date: Wed Dec 12 10:54:45 2001
Dumped from: the epoch
Level 0 dump of / on earth:/dev/dsk/c0t1d0s0
Label: none
Extract directories from tape
Initialize symbol table.
Make node ./etc
Extract requested files
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume #: 1
extract file ./etc/passwd
extract file ./etc/shadow
Add links
Set directory mode, owner, and times.
set owner/mode for `.’? [yn] n

Comments are off for this post

Usando UFS Snapshots

April 26th, 2008 | Category: Solaris

Backup é realizado enquanto o file system está montado, onde criamos um read-only file system (imagem de um file system temporário) destinado para operações de backup.

Criando um USF Snapshot, com limite de 500M para o arquivo backing-store

# fssnap -F ufs -o maxsize=500m,bs=/scratch/usr.back.file /export/home
/dev/fssnap/1

Listanto snapshot currente

# /usr/lib/fs/ufs/fssnap -i
Snapshot number : 0
Block Device : /dev/fssnap/0
Raw Device : /dev/rfssnap/0
Mount point : /export/home
Device state : idle
Backing store path : /var/tmp/bs.file
Backing store size : 0 KB
Maximum backing store size : Unlimited
Snapshot create time : Wed Aug 29 15:22:06 2001
Copy-on-write granularity : 32 KB

Para exibir a informação de um determinado file system, basta

# /usr/lib/fs/ufs/fssnap -i /usr

Excluindo um UFS snapshot

# fssnap -i
0 / 1 /usr
# fssnap -d /usr
Deleted snapshot 1.
# rm /scratch/usr.back.file

Realizando backup de um USF snapshot

Para backup full:

# ufsdump 0ucf /dev/rmt/0 /dev/rfssnap/1

Verificando o backup

# ufsrestore tf /dev/rmt/0

Para backup incremental:

# ufsdump 1ufN /dev/rmt/0 /dev/rdsk/c0t1d0s0 `fssnap -F ufs -o raw,bs=/export/scratch,unlink /dev/rdsk/c0t1d0s0`

Verificando o backup

# ufsrestore ta /dev/rmt/0

Realizando backup com tar

# mount -F ufs -o ro /dev/fssnap/1 /backups
# tar cvf /dev/rmt/0 /backups

Comments are off for this post

How to UFSDUMP

April 26th, 2008 | Category: Solaris

Primeiro verificamos a quantidade de fitas necessárias para o backup.
O valor retornado é em bytes

# ufsdump S /export/home
489472

Para backup pode utilizar uma das opções abaixo.

0 – para backup full
9 – para backup incremental
u – especifica que o /etc/dumpdates , será atualizado com a data do backup
c – para identificar um cartucho
f – para identificar o tape device

Para backup full:

# ufsdump 0ucf /dev/rmt/0 /
DUMP: Writing 63 Kilobyte records
DUMP: Date of this level 0 dump: Wed Sep 05 13:27:20 2001
DUMP: Date of last level 0 dump: the epoch
DUMP: Dumping /dev/rdsk/c0t1d0s0 (earth:/) to /dev/rmt/0.
DUMP: Mapping (Pass I) [regular files]
DUMP: Mapping (Pass II) [directories]
DUMP: Estimated 57150 blocks (27.91MB).
DUMP: Dumping (Pass III) [directories]
DUMP: Dumping (Pass IV) [regular files]
DUMP: Tape rewinding
DUMP: 57076 blocks (27.87MB) on 1 volume at 265 KB/sec
DUMP: DUMP IS DONE
DUMP: Level 0 dump on Wed Sep 05 13:27:20 2001

Para backup incremental:

# ufsdump 9ucf /dev/rmt/0 /
DUMP: Writing 63 Kilobyte records
DUMP: Date of this level 9 dump: Fri Jul 13 10:58:12 2001
DUMP: Date of last level 0 dump: Fri Jul 13 10:46:09 2001
DUMP: Dumping /dev/rdsk/c0t0d0s0 (starbug:/) to /dev/rmt/0.
DUMP: Mapping (Pass I) [regular files]
DUMP: Mapping (Pass II) [directories]
DUMP: Mapping (Pass II) [directories]
DUMP: Mapping (Pass II) [directories]
DUMP: Mapping (Pass II) [directories]
DUMP: Estimated 200 blocks (100KB).
DUMP: Dumping (Pass III) [directories]
DUMP: Dumping (Pass IV) [regular files]
DUMP: Tape rewinding
DUMP: 124 blocks (62KB) on 1 volume at 8 KB/sec
DUMP: DUMP IS DONE
DUMP: Level 9 dump on Fri Jul 13 10:58:12 2001

Para checar se um backup foi concluído com sucesso:

# ufsrestore tf /dev/rmt/0
2 .
3 ./lost+found
5696 ./usr
11392 ./var
17088 ./export
22784 ./export/home
28480 ./opt
5697 ./etc
11393 ./etc/default
11394 ./etc/default/sys-suspend
11429 ./etc/default/cron
11430 ./etc/default/devfsadm
11431 ./etc/default/dhcpagent
11432 ./etc/default/fs
11433 ./etc/default/inetinit
11434 ./etc/default/kbd
11435 ./etc/default/nfslogd
11436 ./etc/default/passwd
11437 ./etc/default/tar
.
.
.
# (Press Control-d to bring system to run level 3)

Comments are off for this post

Restore Bad Superblock

April 26th, 2008 | Category: Solaris

Quando um file system encontra-se danificado é possível restaura-lo, exceto se o file system for o root (/).
Quando isto acontece é necessário realizar um dos passos abaixo:

  • Reinstalar o Sistema Operacional
  • Boot da Rede ou CD-Rom
  • Recriar o file system root (/) com newfs e restaurá-lo de um backup.

Determinando um bad superblock no file system / ou /usr.
De um CD local realizamos os passos abaixo.

ok boot -s cdrom

Através da rede de um install server

ok boot -s net

Após, desmonte o file system danificado se o mesmo não for o / ou /usr.

# umount /opt
# newfs -N /dev/rdsk/c0t3d0s7
/dev/rdsk/c0t3d0s7: 163944 sectors in 506 cylinders of 9 tracks, 36 sectors
83.9MB in 32 cyl groups (16 c/g, 2.65MB/g, 1216 i/g)
super-block backups (for fsck -b #) at:
32, 5264, 10496, 15728, 20960, 26192, 31424, 36656, 41888,
47120, 52352, 57584, 62816, 68048, 73280, 78512, 82976, 88208,
93440, 98672, 103904, 109136, 114368, 119600, 124832, 130064, 135296,
140528, 145760, 150992, 156224, 161456,
# fsck -F ufs -o b=5264 /dev/rdsk/c0t3d0s7
Alternate superblock location: 5264.
** /dev/rdsk/c0t3d0s7
** Last Mounted on
** Phase 1 – Check Blocks and Sizes
** Phase 2 – Check Pathnames
** Phase 3 – Check Connectivity
** Phase 4 – Check Reference Counts
** Phase 5 – Check Cyl groups
36 files, 867 used, 75712 free (16 frags, 9462 blocks, 0.0% fragmentation)
/dev/rdsk/c0t3d0s7 FILE SYSTEM STATE SET TO OKAY

***** FILE SYSTEM WAS MODIFIED *****
#

OBS.: Outras opções para o fsck:

fsck -m

    verifica se um file system pode ser montado

fsck -y

    assume como “yes” para todos os reparos

fsck -n

    assume como “no” para todos os reparos

fsck -o p

    preens file system, repara todas inconsistências esperadas, mas retorna ao prompt se um sério problema for encontrado.
Comments are off for this post

Check/Repair File System UFS interativamente

April 26th, 2008 | Category: Solaris

Utizamos esta opção quando um file system não pode ser montado ou quando desenvolve inconsistências durante a utilização.
Para ver se um sistema de arquivos precisa ser checado. Utilizarei como exemplo /opt.

# umount /opt
# fsck -m /dev/rdsk/c0t0d0s6
** /dev/rdsk/c0t0d0s6
ufs fsck: sanity check: /dev/rdsk/c0t0d0s6 needs checking

Veremos a mensagem: “needs checking”, então utilizamos o comando abaixo.

# fsck /dev/rdsk/c0t0d0s6
checkfilesys: /dev/rdsk/c0t0d0s6
** Phase 1 – Check Block and Sizes
INCORRECT BLOCK COUNT I=2529 (6 should be 2)
CORRECT? y

** Phase 2 – Check Pathnames
** Phase 3 – Check Connectivity
** Phase 4 – Check Reference Counts
** Phase 5 – Cylinder Groups
929 files, 8928 used, 2851 free (75 frags, 347 blocks, 0.6%
fragmentation)
/dev/rdsk/c0t0d0s6 FILE SYSTEM STATE SET TO OKAY

***** FILE SYSTEM WAS MODIFIED *****

OBS.: Para desmontar todos os file system exceto / e /usr utilizamos:

# umountall -l

Comments are off for this post

Preening UFS File System

April 26th, 2008 | Category: Solaris

Este comando é utilizado para corrigir automaticamente problemas resultantes de um shutdown inexperado do Sistema Operacional. Este comando também realiza um “exit” automático se necessário intervenção do administrador.
Pode ser utilizado em paralelo com outros file systems.
Uma particularidade é que podemos utilizar o comando tanto no mount-point como no device-name.

Por exemplo, preening no file system /usr através do mount-point

# fsck -o p /usr

ou através do device-name, mas neste é necessário desmontar o file system.

# umount /mount-point
# fsck -o p /dev/rdsk/device-name

Comments are off for this post

Criando novo File System

October 12th, 2007 | Category: Solaris

Para criar um novo sistema de arquivos em uma partição

newfs /dev/rdsk/c0t1d0s6

Pressione y para confirmar

Este comando criar as estruturas necessárias para o novo sistema de arquivos na partição do disco, incluindo o diretório lost+found.

Assim que criado o file system para montar o mesmo devemos editar o arquivo vfstab, e adionar o novo file system

vi /etc/vfstab
/dev/dsk/c0t1d0s6 /dev/rdsk/c0t1d0s6 /dados ufs 2 yes -

Para montagem do novo file system

mkdir /dados
mount /dados

Para visualizar o novo file system

df -k

OBS.: O Solaris permite somente 8 partições por disco, númeradas de 0 a 7.

Comments are off for this post

Trabalhando com discos no Solaris

October 12th, 2007 | Category: Solaris

Para realizamos o perações com discos como formação e criação de partições, até exibir informações sobre os discos já configurados no sistema podemas utilizar o format.

O nome é bem peculiar, mas o format em primeiro instante ele apanas trabalha com os discos (assim como fdisk e cfdisk no Linux).

Vejamos um primeiro exemplo prático.

format

Teremos uma saída parecida com esta:

Searching for disks...done
AVAILABLE DISK SELECTIONS: 	0. c0t3d0 <SUN0207 cyl 1214 alt 2 hd 9 sec 36>
		/sbus@1,f8000000/esp@0,8000000/sd@3,0
	1. c0t0d0 <SUN0207 cyl 1214 alt 2 hd 9 sec 36>
		/sbus@1,f8000000/esp@0,8000000/sd@0,0
	2. c1t1d0 <SUN0207 cyl 1214 alt 2 hd 9 sec 36>
		/sbus@1,f8000000/esp@0,8000000/sd@1,0
	3. c1t2d0 <SUN0207 cyl 1214 alt 2 hd 9 sec 36>
		/sbus@1,f8000000/esp@0,8000000/sd@2,0
Specify disk (enter its number):

Pedindo para que se escolha um disco

Para exemplo digamos que vamos escolher o disco 2, onde a partir deste ponto poderemos fazer as seguintes operações.

1. Se o disco não estiver formatado o format irá exibir uma mensagem informando que o disco não é formatado.

* para formatar o disco

format>format

2. Caso o disco já esteja configurado, podemos realizar outras operações como apenas exibir informações sobre informações do disco.

* para exibir configuração do disco

format>partition
format>print

Caso deseja obter informações mais completas sobre cada disco (fabricante, blocos, erros e etc)

iostat -E

OBS.: Para exibir os discos em acessar o prompt do format

format < /dev/null

Comments are off for this post

Listando dispositivos no Solaris

October 12th, 2007 | Category: Solaris

Temos 2 comando importantes

Primeiro deles é o prtconf, que irá exibir todas as informações completas sobre o sistema. Informações como tamanho de memória, processadores dispositivos e periféricos anexados ao sistema.

prtconf | more

Para exibir apenas memória principal

prtconf | grep Memory

Dispositivos anexados ao sistema aparecerão em forma de árvore, e dispositivos não anexados ao sistema serão exibidos com o seguinte paramêtro na frene da linha de descrição do device “(drive not attached)”, indicando que não existe um dispositivo correspondente.

prtconf | grep “not attached”

Imprimindo a versão do OBF

prtconf -V

Exibindo lista de dispositivos e drivers anexados aos dispositivos

prtconf -D

Para informações detalhadas sobre o processador (tipo, RPM)

psrinfo -v

Comments are off for this post

« Previous Page