Notas sobre el funcionamiento de los archivos de reemplazo en línea en el sistema Linux

  

Si no entiende el archivo de reemplazo de la operación en línea del sistema Linux, es fácil provocar un error en el archivo de texto cuando cp, por lo que dominar el archivo de reemplazo de operación en línea del sistema Linux es muy Importante, echémosle un vistazo con Xiaobian.

Oh Eng ha encontrado recientemente que muchos no saben lo esencial sustituir las operaciones de archivos en línea. Así que el Xiaobian of the System Home ha sido resuelto para que puedas entender.

Al reemplazar un archivo que está ejecutando un proceso en línea (incluidos bibliotecas dinámicas, binarias, archivos de recursos que deben leerse, etc.). Evite el uso de operaciones cp /scp. En su lugar, necesita usar mv /rsync en su lugar.

Causa: cp trunca el archivo de origen y escribe el nuevo contenido. Es decir, el proceso que está abriendo este archivo puede percibir inmediatamente la modificación. Es probable que la modificación del contenido de un archivo cause errores en la lógica del programa o incluso bloqueos. Y mv es la marca y borra el archivo anterior, y luego coloca un archivo nuevo con el mismo nombre en el pasado. Es decir, el archivo antiguo y el nuevo son en realidad dos archivos diferentes (el inodo es diferente), con el mismo nombre. El proceso de apertura de archivos antiguos no se verá afectado. Si el proceso utiliza mmap para abrir un archivo (como cargarlo), si el archivo de destino se sobrescribe con cp y la longitud es menor. Luego, al leer la dirección de la parte de diferencia (que en realidad no existe en el nuevo archivo), causará la señal SIGBUS. Hacer que el proceso se bloquee.

En cuanto al propio ejecutable. No tiene miedo de que cp provoque un crash. . Debido a que cp informará &text; archivo de texto ocupado ". En la raíz de la cp no se puede. En este momento, también debe utilizar la operación de clase mv. Reinicie el proceso después de que se complete el reemplazo. Se ejecuta el nuevo ejecutable.

Lo anterior es la introducción de las notas del archivo de reemplazo en línea del sistema Linux. Si solicita un archivo de texto ocupado en cp, puede ser un error operacional, debe cambiarse a la operación de clase mv.

Copyright © Conocimiento de Windows All Rights Reserved