Linux Notes 7-Gestión del sistema

Proceso y servicio

Comando de gestión de servicios

Red Hat 6 usa comandos como service chkconfig para administrar los servicios del sistema. El comando utilizado por Red Hat 7 es systemctrl. La
comparación de los comandos de inicio, reinicio, detención, recarga y vista de estado del servicio es la siguiente (los dos comandos probados en CentOS7 son compatibles con ambos):
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
La configuración del servicio comienza, no comienza , ver el inicio del servicio en cada nivel Los comandos de estado se comparan de la siguiente manera:
Inserte la descripción de la imagen aquí

Supervisar los recursos y los procesos de gestión.

Hay muchos procesos que se ejecutan en el sistema Linux en todo momento, y una gestión adecuada de ellos ayuda a optimizar el rendimiento del sistema. El proceso del sistema tiene cinco estados:
R en ejecución: en ejecución o esperando en la cola
S interrupción: en reposo, en espera de que se forme o reciba una determinada condición.
D
Ininterrumpible: el proceso no debe activarse ni ejecutarse después de recibir la señal. El proceso debe esperar hasta que se produzca una interrupción. Z Zombie: El proceso ha terminado, pero el descriptor del proceso aún existe hasta que el proceso padre llama a wait4 () y lo libera. .
T Detener: el proceso recibe SIGSTOP Detener la ejecución después de la señal SIGSTP SIGTIN SIGTOU

comando ps

El comando ps se usa para ver el estado del proceso en el sistema, el formato es ps [parámetro]
Ver proceso y estado: ps -aux
ver información específica del proceso: el ps -aux|grep 进程名
parámetro
a muestra todos los procesos (incluidos otros usuarios)
x muestra los procesos que no controlan el terminal
u muestra los usuarios y otros detalles

comando superior

El comando top se utiliza para monitorear la actividad del proceso y la carga del sistema. El
comando top top se puede considerar como una versión mejorada del administrador de tareas de Windows. El efecto de ejecución es el siguiente

Inserte la descripción de la imagen aquí
La información se explica a continuación:
Inserte la descripción de la imagen aquí

comando pidof

Se utiliza para consultar el valor pid de un programa específico, formato:pidof[参数][程序名称]

comando de matar

Se usa para terminar el proceso de un pid específico. El formato es:kill [参数][进程pid]

[root@localhost ~]# ps -ef | grep sshd
root       1118      1  0 20:49 ?        00:00:00 /usr/sbin/sshd -D
root       8360   1118  0 20:49 ?        00:00:00 sshd: root@pts/0
root       9718   9666  0 21:05 pts/0    00:00:00 grep --color=auto sshd
[root@localhost ~]# kill -9 8360   

comando killall

Se utiliza para terminar todos los procesos con un nombre específico, formato:killall [参数][进程名称]

Ctrl + c 和 Ctrl + z

Cuando se ejecuta un comando en la terminal, el proceso de comando se puede terminar con la combinación de teclas ctrl + c.
Se está ejecutando un comando en la terminal y el proceso se puede pausar con la combinación de teclas ctrl + z (montada en segundo plano)

Ejemplo de operación

Ejecute el script [root@localhost ~]# (while true ;do echo -n " working " >> ~/jobs.txt;sleep 1 ;done;)para ver una escritura de datos de un segundo ~ / jobs.txt en cada archivo.

[root@localhost ~]# (while true ;do echo -n " working  " >> ~/jobs.txt;sleep 1 ;done;)   --~/jobs.txt  开始每秒写入一个 working
^Z   --组合按键  Ctrl+z 后 进程被挂起,同时 ~/jobs.txt 内容写入暂停
[1]+  Stopped                 ( while true; do
    echo -n " working  " >> ~/jobs.txt; sleep 1;
done )
[root@localhost ~]# jobs --调用jobs 可以查看被挂起的进程
[1]+  Stopped                 ( while true; do
    echo -n " working  " >> ~/jobs.txt; sleep 1;
done )
[root@localhost ~]# bg  --执行 bg 可以让挂起的进程 在后台执行, 文件中又开始写入数据
[1]+ ( while true; do
    echo -n " working  " >> ~/jobs.txt; sleep 1;
done ) &
[root@localhost ~]# fg  --fg让后台挂起的进程在前台来执行
( while true; do
    echo -n " working  " >> ~/jobs.txt; sleep 1;
done )
^C -- 直接退出进程
[root@localhost ~]# 

Cuando hay varios procesos en segundo plano, puede operar un proceso específico a través del número de tarea en trabajos bg / fg +

[root@localhost ~]# jobs
[1]-  Stopped                 ( while true; do
    echo -n " working  " >> ~/jobs.txt; sleep 1;
done )
[2]+  Stopped                 ( while true; do
    echo -n " working222  " >> ~/jobs.txt; sleep 1;
done )
[root@localhost ~]# bg 1
[1]+ ( while true; do
    echo -n " working  " >> ~/jobs.txt; sleep 1;
done ) &
[root@localhost ~]# fg 2
( while true; do
    echo -n " working222  " >> ~/jobs.txt; sleep 1;
done )

Si la terminal que ejecuta el comando sale, las tareas que se están ejecutando en segundo plano se detendrán.
Si queremos que un determinado comando se ejecute directamente en segundo plano, sin mostrar la salida y esperando en primer plano, podemos agregar directamente el símbolo "&" después del comando.
como sigue:

[root@localhost ~]# (while true ;do echo -n " working  " >> ~/jobs.txt;sleep 1 ;done;)&
[1] 13477

Servicio de control remoto

servicio sshd

SSH (SecureShell) es un protocolo que puede proporcionar una sesión de inicio de sesión remota segura y puede ejecutar comandos de Linux de forma remota.
ssh proporciona dos métodos de verificación
de seguridad: verificación de seguridad basada en contraseña: inicie sesión en el host remoto a través de la contraseña de la cuenta verificación de seguridad de la
clave secreta esperada: después de generar el par de claves secretas localmente, la clave pública se transmite al servidor para comparar la clave pública claves secretas.
La ubicación del archivo de configuración del servicio sshd es / etc / ssh / sshd_config, de la siguiente manera:

[root@localhost ~]# cat /etc/ssh/sshd_config
#       $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
.......

Los elementos de configuración principales se describen a continuación: Después de la
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
modificación de la configuración, el servicio debe reiniciarse para que surta efecto.

systemctl restart sshd.service

comando ssh

Se utiliza para la gestión remota del host Linux, formato:ssh [参数] 主机

-p 指定连接端口 默认 22
-v 显示连接过程详细信息 

Utilice la contraseña para iniciar sesión en el host 192.168.204.12 de la siguiente manera

[root@localhost ~]# ssh 192.168.204.12
The authenticity of host '192.168.204.12 (192.168.204.12)' can't be established.
ECDSA key fingerprint is SHA256:P3koD/MoKyAms7BYfEvHnUb9EhIwHpHF5S2eU6nbpBU.
ECDSA key fingerprint is MD5:2e:fc:c1:98:71:3e:af:d4:d7:75:e8:19:60:50:e4:b4.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.204.12' (ECDSA) to the list of known hosts.
[email protected]'s password: 
Last login: Mon Nov 30 21:54:27 2020 from server03

Verificación de la clave de seguridad SSH

El uso de la autenticación de contraseña corre el peligro de que se rompa y olfatee por fuerza bruta. Puede usar la clave secreta para verificar el
primer paso: el host local genera un par de claves secretas y transmite la clave pública al host remoto

[root@localhost ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:LmSIbB7TgtRkfzwkiiDpYLyJogSF4za1fz9hB2P4Xcs [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|++.o . .         |
|Oo=.o +          |
|B++o.. +.        |
|+@ + ....+   .   |
|* O + o S + o .  |
|.o + + o + o E   |
|  .   o + o      |
|       . o       |
|          .      |
+----[SHA256]-----+
[root@localhost ~]# ssh-copy-id 192.168.10.12
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed

/usr/bin/ssh-copy-id: ERROR: ssh: connect to host 192.168.10.12 port 22: Connection refused

[root@localhost ~]# ssh-copy-id 192.168.204.12
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '192.168.204.12'"
and check to make sure that only the key(s) you wanted were added.

Paso 2: Modifique el host remoto, habilite la configuración del servicio ssh para habilitar la autenticación de clave secreta, deshabilite la autenticación de contraseña y reinicie el servicio

vi  /etc/ssh/sshd_config
PubkeyAuthentication yes
PasswordAuthentication no    不关闭也可以,关闭更安全

Paso 3: el host local ejecuta el comando ssh para conectarse al host de destino, puede conectarse directamente

[root@localhost ~]# ssh  192.168.204.12
Last login: Mon Nov 30 21:55:29 2020 from server01
[root@server03 ~]# 

comando de transmisión remota scp

Si desea transferir archivos a otros hosts de Linux, puede usar este comando.
formato:scp [参数] 本地文件 远程账号@目标ip:远程目录

[root@localhost ~]# scp -r test [email protected]:/root
[root@localhost ~]# ssh 192.168.204.12
Last login: Mon Nov 30 22:23:33 2020 from server01
[root@server03 ~]# ll
total 4
-rw-------. 1 root root 1260 Jun 10 05:26 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 Dec  1 00:42 test

Descripción de parámetros:

-v 显示详细连接进度
-P 指定远程主机的 sshd端口号
-r 传送文件夹时 加此参数
-6 使用ipv6协议

Servicio de conversación ininterrumpida

servicio scren

Hay un problema al usar el terminal para conectarse al servidor para operaciones comerciales. Cuando el terminal está cerrado, las tareas que se ejecutan en el terminal también se interrumpirán. Por ejemplo, si el terminal se cierra durante la transferencia de archivos, la transferencia de archivos se interrumpirá interrumpirse y debe restablecerse la conexión. La pantalla está especialmente diseñada para resolver los problemas anteriores. El usuario puede usar el comando de pantalla para controlar múltiples sesiones de línea de comando al mismo tiempo, con su propia conmutación, y también puede realizar las siguientes operaciones:
Recuperación de sesión: incluso si la red se interrumpe, la sesión se puede reanudar en cualquier momento .
Multi-ventana: Cada sesión se ejecuta de forma independiente y tiene su propia ventana de Número, entrada, salida, y la memoria caché.
sesiones compartidas: varios usuarios pueden utilizar la misma sesión desde diferentes terminales, y también pueden ver la misma salida.

Resuma cuando lo use más tarde, omítalo por ahora

Supongo que te gusta

Origin blog.csdn.net/zhangxm_qz/article/details/110392579
Recomendado
Clasificación