Espada se refiere al comando de depósito de datos-Shell cinco

1. La última revisión del curso

Dos, comandos básicos de Linux cinco

3. Tarea

1. La última revisión del curso

  • Ruoze big data github blog: https://ruozedata.github.io/archives/ hexo
    Los beneficios de construir un blog github usted mismo: puede modificar el tiempo usted mismo, para encontrar un trabajo en el futuro jejeje; usando csdn estos tiempos son fijos muertos .
  • Linux Shell Command 4: https://blog.csdn.net/SparkOnYarn/article/details/104830312

Dos, comandos básicos de Linux cinco

2.1, el uso de big data crontab

1. Herramienta de programación para big data:

  • flujo de aire, azkaban, ozzie, rundeck (Beep Beep, Big Data)
  • La herramienta crontab que viene con Linux:

2. Pruebe el uso de scripts de shell:

1、打印shell脚本的时间:
[hadoop@hadoop001 test]$ cat test.sh
#!/bin/bash
date
[hadoop@hadoop001 test]$ ll
total 8
-rw-rw-r-- 1 hadoop hadoop 172 Mar 14 13:03 1.zip
-rw-rw-r-- 1 hadoop hadoop   0 Mar 13 16:14 rz.log
-rw-rw-r-- 1 hadoop hadoop  17 Mar 14 23:05 test.sh
[hadoop@hadoop001 test]$ ll
total 8
-rw-rw-r-- 1 hadoop hadoop 172 Mar 14 13:03 1.zip
-rw-rw-r-- 1 hadoop hadoop   0 Mar 13 16:14 rz.log
-rw-rw-r-- 1 hadoop hadoop  17 Mar 14 23:05 test.sh
[hadoop@hadoop001 test]$ ./test.sh
-bash: ./test.sh: Permission denied
[hadoop@hadoop001 test]$ chmod 744 test.sh 
[hadoop@hadoop001 test]$ ./test.sh 
Sat Mar 14 23:13:26 CST 2020

2、正常的xxx.sh的shell脚本:
#!/bin/bash
shell脚本执行需要rwx中的x执行权限
./xxx.sh
或者sh ./xxx.sh

后缀.sh	第一行#!/bin/bash 的解释器没有的话,直接使用sh ./test来执行也是可以的。

3. Uso de crontab:

1、crontab --help查询如何使用:
[hadoop@hadoop001 test]$ crontab --help
crontab: invalid option -- '-'
crontab: usage error: unrecognized option
Usage:
 crontab [options] file
 crontab [options]
 crontab -n [hostname]

Options:
 -u <user>  define user
 -e         edit user's crontab
 -l         list user's crontab
 -r         delete user's crontab
 -i         prompt before deleting
 -n <host>  set host in cluster to run users' crontabs
 -c         get host in cluster to run users' crontabs
 -s         selinux context
 -x <mask>  enable debugging

Default operation is replace, per 1003.2

2、crontab -e来编辑使用脚本:
* * * * * /home/hadoop/test/test.sh >> /home/hadoop/test.log

//这5个*分别代表分、小时、日、月、周

3、保存退出提示如下:这个目录是临时的保存完了就没有了:
"/tmp/crontab.Dn9VxW" 2L, 62C written
crontab: installing new crontab

Pregunta de la entrevista: ¿Cómo se pueden ejecutar los scripts de shell programados por crontab cada 10 segundos?

1、编辑test.sh shell脚本
vi /home/hadoop/test/test.sh
[hadoop@hadoop001 test]$ cat test.sh 
#!/bin/bash

for ((i=1;i<=6;i++))

do
        date
        sleep 10s
done

exit

2、赋予x执行权限:
chmod 744 /home/hadoop/test/test.sh

3、编写调度脚本:crontab -e
* * * * * /home/hadoop/test/test.sh >> /home/hadoop/test1.log

4、tail -F /home/hadoop/test1.log

2.2, cómo ejecutar crontab en segundo plano

1、后台执行:
./test.sh &		
nohup ./test.sh &	工作中这种比较常用
nohup ./test.sh >> /home/hadoop/test.log 2>&1 &		生产上使用这种

2、生产上的后台执行:
[hadoop@hadoop001 test]$ nohup ./test.sh &
[1] 1521
[hadoop@hadoop001 test]$ nohup: ignoring input and appending output to 鈥榥ohup.out鈥
^C
[hadoop@hadoop001 test]$ nohup ./test.sh > /home/hadoop/test2.log 2>&1 &
[2] 1553
[1]   Done                    nohup ./test.sh

3、打印
[hadoop@hadoop001 test]$ cat nohup.out
Sat Mar 14 23:54:14 CST 2020
Sat Mar 14 23:54:24 CST 2020
Sat Mar 14 23:54:34 CST 2020
Sat Mar 14 23:54:44 CST 2020
Sat Mar 14 23:54:54 CST 2020
Sat Mar 14 23:55:04 CST 2020
[2]+  Done                    nohup ./test.sh > /home/hadoop/test2.log 2>&1

2.3, conexión suave

  • Propósito para la actualización de software

  • Escenario: Por ejemplo, hay dos versiones de mysql en producción, mysql5.6 y mysql5.7;

1、语法:ln -s mysql-5.7.11-linux-glibc2.5-x86_64 mysql
lrwxrwxrwx   1 mysqladmin dba    35 Mar  5 16:14 mysql -> mysql-5.7.11-linux-glibc2.5-x86_64/
drwxr-xr-x  13 mysqladmin dba  4096 Mar  9 12:36 mysql-5.7.11-linux-glibc2.5-x86_64
  • Después de hacer el enlace suave, puede directamente / usr / localmysql al configurar las variables de entorno en el futuro, y el enlace suave es equivalente a un acceso directo.

  • Sintaxis: ln -s ruta original ruta de destino

La situación encontrada en la producción:

Después de la actualización de CDH, se pierde el archivo original y no se puede encontrar la ruta actual del archivo;

1、创建mysql-5.7.11-linux文件夹:
[root@hadoop001 hadoop]# mkdir mysql-5.7.11-linux

2、做一个软连接:
[root@hadoop001 hadoop]# ln -s mysql-5.7.11-linux mysql
[root@hadoop001 hadoop]# pwd
/home/hadoop

3、测试把mysql-5.7.11-linux mysql这个目录删除,会发现光标软连接的光标跳动:
[root@hadoop001 hadoop]# rm -rf mysql-5.7.11-linux/
[root@hadoop001 hadoop]# ll
total 16
drwxrwxr-x 2 hadoop hadoop 4096 Mar  5 15:58 app
drwxrwxr-x 2 hadoop hadoop 4096 Mar  5 15:59 data
drwxrwxr-x 2 hadoop hadoop 4096 Mar  5 15:58 lib
lrwxrwxrwx 1 root   root     19 Mar 15 00:07 mysql -> mysql-5.7.11-linux/
drwxrwxr-x 2 hadoop hadoop 4096 Mar 11 14:32 software
-rw-r--r-- 1 hadoop hadoop    0 Mar 15 00:06 test1.log

4、删除快捷方式:
rm -rf mysql

Resolver:

1. Busque la carpeta del archivo original:
2. Elimine los archivos y carpetas de las teclas de acceso directo-> Vuelva a hacer la conexión de software y elimine el acceso directo en negrita: rm -rf mysql

El archivo con el número de versión no debe configurarse en el archivo, no te
caves : bJ personalmente recomienda usar una ruta absoluta (no hagas halo, no es fácil de mantener, la ruta completa es intuitiva y clara)

Problemas de producción:

Por ejemplo, el disco del sistema es 50G, el disco de datos data01 tiene 1T, y los
archivos de registro de CDH están en /var/log/hbase/xxx.log 1G. Este archivo guarda 10 copias, pero esta máquina no puede organizar un solo servicio, el disco del sistema El archivo de registro de datos de 50G definitivamente no es suficiente para 10G.

Solución:

mkdir / data01 / log /
mv / var / log / hbase / data01 / log
ln -s / data01 / log / hbase / var / log / hbase

Ignorar un problema: cuando el disco actual va a estallar, puede haber cambios en los permisos cuando se migra el archivo de registro; observe los permisos de otra máquina (cuáles son los permisos chown y chmod), no solo para conexiones suaves Realice cambios y también realice cambios en las carpetas.

3. Tarea para este curso

Publicado 23 artículos originales · elogiado 0 · visitas 755

Supongo que te gusta

Origin blog.csdn.net/SparkOnYarn/article/details/104867893
Recomendado
Clasificación