GNU/Linux >> Tutoriales Linux >  >> Linux

¿La tubería tiene que escribir un archivo temporal?

  1. Las tuberías no almacenan datos en el disco. /bin/echo foo | grep bar no crea ningún archivo. prueba strace -f sh -c '/bin/echo foo | grep bar' para ver todas las llamadas al sistema realizadas por un shell cuando se ejecuta una canalización. echo es un shell integrado, así que sugerí /bin/echo para hacer que el shell ejecute un ejecutable.

  2. /tmp no tiene que estar en el disco. Se puede montar en tmpfs (es decir, respaldado por memoria virtual). Tenga en cuenta que un reinicio vaciará /tmp en ese caso, usa /var/tmp para cualquier cosa que quieras dejar.

Si lo que está haciendo es poner datos en un archivo, entonces no está usando una canalización. Si el archivo es un fifo, no un archivo normal, entonces es solo una cita con nombre y no contiene datos. Usa ls -l para averiguarlo.

Y tenga en cuenta que si espera evitar que los usuarios vean lo que está pasando por las canalizaciones en los procesos que poseen, es bastante SOL, porque strace puede inspeccionar todo lo que hace un proceso que interactúa con cualquier cosa fuera del proceso, excepto la lectura/escritura de la memoria compartida asignada. ltrace es aún más invasivo. Si su programa se ejecutará en sistemas donde el usuario local tiene root, no puede detenerlos en absoluto. En Unix, root puede hacer cualquier cosa y tiene poderosas herramientas para ese propósito.


Linux
  1. ¿El Propósito De Usar Un Fifo Vs Un Archivo Temporal O Una Tubería?

  2. ¿Pseudoarchivos para datos temporales?

  3. ¿Python tiene un argumento argc?

  4. ¿Escribir en un archivo .txt?

  5. Shell:escribe contenido variable en un archivo

Bash:escribir en archivo

Cómo escribir datos en un archivo en Linux

¿Ocultar datos en los sistemas de archivos?

¿Cómo escribo stderr en un archivo mientras uso tee con una tubería?

¿Cómo puedo hacer que tcpdump escriba en el archivo y genere de forma estándar los datos apropiados?

¿Algún sistema de archivos implementa el mecanismo de copia en escritura para CP?