PDF de programación - Tema 3: Actividades administrativas básicas - Administración de Sistemas e Redes

Imágen de pdf Tema 3: Actividades administrativas básicas - Administración de Sistemas e Redes

Tema 3: Actividades administrativas básicas - Administración de Sistemas e Redesgráfica de visualizaciones

Publicado el 26 de Enero del 2019
317 visualizaciones desde el 26 de Enero del 2019
632,9 KB
98 paginas
Creado hace 4a (19/10/2015)
Tema 3: Actividades administrativas

básicas

Administración de Sistemas e Redes

Tomás Fernández Pena

tf.pena@usc.es

Índice

1. Comandos básicos para la gestión de procesos

2
2
1.1. Ver los procesos en ejecución . . . . . . . . . . . . . . . . . . .
8
1.2. Señalización de procesos . . . . . . . . . . . . . . . . . . . . .
1.3. Manejo de la prioridad y recursos de un proceso . . . . . . . . 12
1.4. Análisis básico del rendimiento del sistema . . . . . . . . . . . 14
1.5. Herramientas grácas . . . . . . . . . . . . . . . . . . . . . . . 16
1.6. El directorio /proc . . . . . . . . . . . . . . . . . . . . . . . . 16

2. Gestión del sistema de cheros

18
2.1. Tipos de cheros y atributos . . . . . . . . . . . . . . . . . . . 18
2.2. Enlaces
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3. Localización de cheros . . . . . . . . . . . . . . . . . . . . . . 26
2.4. Particiones y sistemas de cheros
. . . . . . . . . . . . . . . . 32
2.5. Sistemas de cheros con LVM . . . . . . . . . . . . . . . . . . 42
2.6. Manejo de discos cifrados . . . . . . . . . . . . . . . . . . . . . 46

3. Gestión de usuarios

49
3.1. Ficheros de información de los usuarios . . . . . . . . . . . . . 49
3.2. Creación manual de una cuenta . . . . . . . . . . . . . . . . . 52
3.3. Comandos para gestión de cuentas
. . . . . . . . . . . . . . . 54
3.4. Cuotas de disco . . . . . . . . . . . . . . . . . . . . . . . . . . 56

1

4. Instalación y conguración básica de redes de área local

59
4.1. Comandos de conguración de red . . . . . . . . . . . . . . . . 60
4.2. Ficheros de conguración de red . . . . . . . . . . . . . . . . . 69
4.3. Conguración del DHCP . . . . . . . . . . . . . . . . . . . . . 73

5. Automatización de tareas

74
5.1. Tareas periódicas . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2. Automatización de la conguración . . . . . . . . . . . . . . . 79

6. Copias de seguridad

81
6.1. Estrategias para las copias de seguridad . . . . . . . . . . . . . 81
6.2. Comandos básicos . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.3. Otras aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . 92

1. Comandos básicos para la gestión de procesos

En el tema anterior vimos como ejecutar comandos del shell:

otros comandos ajenos al shell se ejecutan igual

En cada momento se están ejecutando un gran número de procesos:

procesos de sistema (kernel, daemons)

procesos de usuarios

En esta sección trataremos la gestión de los procesos que se están ejecutando:

listar procesos en ejecución

detener y matar procesos

controlar la prioridad de ejecución

1.1. Ver los procesos en ejecución

Existen varias herramientas para ver los procesos en ejecución, la más im-
portante es el comando ps

2

ps (process status)

lista los procesos con su PID, datos de usuario, tiempo, identicador del
proceso y linea de comandos usada

$ ps

PID TTY
6368 pts/0
7441 pts/0

TIME CMD
00:00:00 bash
00:00:00 ps

sin opciones, ps sólo muestra los procesos lanzados desde el terminal actual
y con el mismo EUID que el usuario que lo lanzó

Opciones de ps ps tiene un gran número de opciones, que se pueden
especicar de 3 maneras:

1. opciones UNIX: pueden agruparse y se preceden por un guión: ps -ef

2. opciones BSD: pueden agruparse y van sin guión: ps uxa

3. opciones largas GNU: precedidas de dos guiones: ps --user tomas

Algunas opciones:

-e o ax: muestra todos los procesos

-u (o U o --user) usuario: muestra los procesos de un usuario

u: salida en formato usuario

j: salida en formato job (muestra PID, PPID, etc.)

-f o l: salida en formato largo

f: muestra un árbol con la jerarquía de procesos

k (o --sort) campo: ordena la salida por algún campo (p.e. ps uxak
rss)

-o (o o o --format) formato: permite denir el formato de salida ps
-o ruser,pid,comm=Comando

para más opciones ver la página de manual de ps

Ejemplo:

3

PID %CPU %MEM
1 0.0 0.0
2 0.0 0.0
3 0.0 0.0
4 0.0 0.0

VSZ
1516
0
0
0

RSS TTY
536 ?
0 ?
0 ?
0 ?

STAT START
09:43
S
S
09:43
09:43
SN
S
09:43

TIME COMMAND
0:00 init [2]
0:00 [migration/0]
0:00 [ksoftirqd/0]
0:00 [migration/1]

0.1 4.9 140180 50920 ?
0.2 3.6 116396 37948 ?

Sl
Sl

09:51
10:01

0:18 /usr/lib/mozilla-thunderbird/mozilla-thunderbird-bin
0:25 /usr/lib/mozilla-firefox/firefox-bin -a firefox

$ ps axu
USER
root
root
root
root
.............
tomas
tomas

6475
6528

en este ejemplo:

%CPU y %MEM: porcentajes de uso de CPU y memoria

VSZ: memoria virtual del proceso, en KBytes

RSS: tamaño de la memoria residente (resident set size) en KBytes

STAT: estado del proceso; puede ser:

Código

signicado

D
R
S
T
Z

Uninterruptible sleep (usualmente IO)
Ejecutándose(running) o en cola de ejecución
Interruptible sleep (p.e. esperando un evento)
Detenido
Proceso zombie

cuando se usa formato BSD puede aparecer otro código acompañando
al principal:

Código

signicado

<
N
L
s
l
+

alta prioridad
baja prioridad
páginas bloqueadas (locked) en memoria
líder de sesión
multi-threaded
proceso en foreground

pstree muestra el árbol de procesos (similar a ps f)

init-+-acpid

|-atd
|-bonobo-activati
|-clock-applet

4

|-cron
|-cupsd
|-dbus-daemon-1
|-dcopserver
|-dirmngr
|-2*[esd]
|-events/0-+-aio/0
|
|-ata/0
|-ata/1
|
|-kblockd/0
|
|
|-khelper
|
`-pdflush
|-events/1-+-aio/1
|
|
|
|-exim4
|-famd
|-firefox-bin---wvMime---ggv
...

|-kacpid
|-kblockd/1
`-pdflush

top

ps da una versión estática de los procesos

top nos da una lista actualizada a intervalos

6 users,

top - 17:34:08 up 7:50,
Tasks: 111 total,
Cpu(s): 6.2% us, 2.0% sy, 0.0% ni, 91.0% id,
1026564k total,
Mem:
Swap: 2048248k total,

656504k used,
0k used,

1 running, 110 sleeping,

0 stopped,
0.0% wa,

0 zombie

0.8% hi,

0.0% si

370060k free,
2048248k free,

65748k buffers

336608k cached

load average: 0.12, 0.31, 0.27

PID USER
6130 root
6341 tomas
6349 tomas
6019 tomas
6401 tomas
6427 tomas
7115 tomas
7390 tomas

VIRT RES

PR NI
15
15
16
15
15
15
15
15
16
RT

0 63692 48m 9704 S
0 14692 8852 6968 S 4.3
0 32792 14m 9232 S 1.3
0
7084 3184 1896 D 0.3
0 16756 8280 6856 S 0.3
0 18288 10m 8112 S 0.3
0 26312 13m
0 45016 30m
0
0

SHR S %CPU %MEM
8.7 4.9
0.9
1.5
0.3
0.8
1.0
0.3 1.4
0.3 3.0
0.1
0.0
0 S 0.0 0.0

11m S
18m S
1516 536 472 S

0

0

TIME+

COMMAND
8:03.34 XFree86
1:55.13 metacity
0:41.60 gnome-terminal
0:23.22 famd
0:02.49 geyes_applet2
0:09.04 wnck-applet
0:00.61 kio_uiserver
0:38.69 kile
0:00.61 init
0:00.00 migration/0

1 root
2 root
......................

5

en la cabecera nos muestra un resumen del estado del sistema

• hora actual, tiempo que el sistema lleva encendido, el número de
usuarios conectados y la carga media del sistema para los últimos
1, 5, y 15 minutos

• número total de tareas y resumen por estado
• estado de ocupación de la CPU y la memoria

por defecto, los procesos se muestran ordenados por porcentaje de uso
de CPU (los más costosos arriba)

pulsando h mientras se ejecuta top, obtenemos una lista de comandos
interactivos

para salir, q

Algunos campos de top

• VIRT: Tamaño total del proceso (código, datos y librerías com-

partidas cargadas), VIRT=SWAP+RES

• SWAP: Memoria que ha sido swapped out o que aún no ha sido

cargada

• RES: Memoria residente (RAM ocupada por el proceso)
• CODE y DATA: Memoria ocupada por el código y datos (datos y

pila, pero no librerías compartidas) del proceso

• SHR: Memoria compartida (memoria que puede ser compartida

con otros procesos)

• P: Última CPU usada (SMP)
• nFLT: Número de fallos de página para el proceso

strace

Muestra las llamadas al sistema realizadas por un proceso en ejecución

Ejemplo de un strace sobre un top en ejecución

$ strace top
gettimeofday({1195811866, 763977}, {4294967236, 0}) = 0
open("/proc/meminfo", O_RDONLY)
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f55000

= 3

6

= 0
= 0

2066348 kB\nMemFre"..., 1024) = 728

read(3, "MemTotal:
close(3)
munmap(0xb7f55000, 4096)
open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)
getdents(3, /* 52 entries */, 1024)
getdents(3, /* 64 entries */, 1024)
stat64("/proc/1", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc/1/stat", O_RDONLY)
read(4, "1 (init) S 0 1 1 0 -1 4194560 44"..., 1023) = 185
close(4)
......

= 0
= 1020
= 1024

= 4

Ejecución en segundo plano

Por defecto, los comandos corren en primer plano (foreground): el shell espera
a que termine el comando antes de aceptar uno nuevo

para ejecutar un comando en segundo plano (background) hacerlo con
&

$ sleep 10
$ sleep 10 &

para terminar un proceso en foreground Ctrl-C

para pausar un comando en foreground usar Ctrl-Z

• bg pasa el proceso a background
• fg lo devuelve a foreground

Ejemplo:

$ sleep 20
Ctrl-Z
[3]+ Stopped
$ bg
[3]+ sleep 20 &
$ fg
sleep 20

sleep 20

El comando jobs permite ver la lista de comandos (jobs) en background
lanzados desde el shell, así como su estado (fg y bg pueden referirse a
uno de los jobs)

7

gedit nada.txt &
sleep 100 &

$ gedit nada.txt &; sleep 100 &
$ jobs
[2]- Running
[3]+ Running
$ fg 3
sleep 100
Ctrl-Z
[3]+ Stopped
$ jobs
[2]- Running
[3]+ Stopped
$ bg 3
[3]+ sleep 100 &
$ jobs
[2]- Running
[3]+ Running

sleep 100

gedit nada.txt &
sleep 100

gedit nada.txt &
sleep 100 &

1.2. Señalización de procesos

El comando básico para enviar señales a un proceso es kill

Ctrl-C y Ctrl-Z son atajos para enviar señales SIGINT (2) y SIGTSTP
(20)

kill -l lista el conjunto de señales

$ kill -l

1) SIGHUP
5) SIGTRAP
9) SIGKILL
13) SIGPIPE
18) SIGCONT
22) SIGTTOU
26) SIGVTALRM
30) SIGPWR

2) SIGINT
6) SIGABRT
10) SIGUSR1
14) SIGALRM
19) SIGSTOP
23) SIGURG
27) SIGPROF
31) SIGSYS

3) SIGQUIT
7) SIGBUS

11) SIGSEGV
15) SIGTERM
20) SIGTSTP
24) SIGXCPU
28) SIGWINCH
....

4) SIGILL
8) SIGFPE

12) SIGUSR2
17) SIGCHLD
21) SIGTTIN
25) SIGXFSZ
29) SIGIO

para ver su signicado, ver man 7 signal

Sintaxis de kill

kill [señal] PID

seña
  • Links de descarga
http://lwp-l.com/pdf14996

Comentarios de: Tema 3: Actividades administrativas básicas - Administración de Sistemas e Redes (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad