Questions tagged [file-descriptors]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
0
votes
1answer
18 views

Set-UID Capability Leak Attack

I have a C program to demonstrate the capability leak attack regarding set-uid. // cap_leak.c #include <unistd.h> #include <stdio.h> #include <stdlib.h> #include <fcntl.h> ...
14
votes
3answers
2k views

Why should fork() have been designed to return a file descriptor?

On his web page about the self-pipe trick, Dan Bernstein explains a race condition with select() and signals, offers a workaround and concludes that Of course, the Right Thing would be to have fork(...
0
votes
0answers
36 views

How to work with file descriptors stored in variables?

For example, if I assign TWO=2 ...the following fails (with date: invalid date '2'): date >> logfile $TWO>&1 Of course, I can always do eval "date >> logfile $TWO>&1" ...
0
votes
0answers
29 views

File descriptors potential conflict

Context I'm processing data stored into files using a sequence of command line tools. In order to automate this process, I wrote a bash script chaining theses tools, the result of each tool being fed ...
0
votes
0answers
25 views

Understanding anonymous pipe ID

I'm currently debugging a system which has a resource leak. It seems that we have too many pipse open. When I go the my /proc/PROC_ID/fd I see the list of pipes l-wx------ 1 root root 64 Jun 30 12:32 ...
0
votes
0answers
32 views

Separate stdout of an application

I have an application that takes a few command line parameters, then prints some text to the terminal, then starts writing data to a file. It has a parameter I can use to define the file name to write ...
1
vote
2answers
56 views

Flush the pipe/printf buffers externally for already running process with known PID

I am writing a data logging app, all programs are started like: ./program > out.bin The data collector periodically pools the stdout output files and reads the data. The issue is that the IO ...
1
vote
1answer
44 views

How to source inline text

When you are creating tutorials online for people to use in a single terminal sometimes it's nice to source inline code...however none of these worked as I would expect. I would expect foo to be "bar" ...
0
votes
1answer
15 views

Process substitution to script in order to monitor iotop

I am actively trying to get the output of the iotop for monitoring. As you know, the iotop is interactive, meaning that once started, it'll provide live updates on disk usage on the system. I'm ...
-1
votes
1answer
55 views

hive + what is the meaning of nofile and nproc

regarding to hive in hadoop cluster what is the meaning of the following hive - nofile 30000 hive - nproc 18000 the file: more /etc/security/limits.d/hive.conf # Licensed to the Apache ...
0
votes
1answer
61 views

Difference between file descriptor and soft/hard link

If soft link and hard link are pointer to a file. And file descriptor is a file handle pointing to an open file. Then what exact difference is between the two if both of them are a kind of pointer ...
0
votes
0answers
14 views

Locale does not work with “file” command output

I have some JPEG files with Description metadata I added in MAC OS. exiftool (in MAC) displays them in correct locale. I copied those files to a Raspbian OS. From command line or bash script ...
0
votes
2answers
118 views

What happens when redirecting with 3>&1 1>/dev/null?

I'm playing around with file descriptors to better grok them and I'm failing to understand the following. $ grep "..." 3>&1 1>/dev/null 1 12 13 123 321 3 The above does not show in the ...
2
votes
1answer
84 views

Understanding pipes and redirections in dash

Someone asked how to pass the output of two commands as files to another command and they got the answer below. ( cmd1 | ( cmd2 | ( main_command /dev/fd/3 /dev/fd/4 ) 4<&0 ) 3<&0 ) I ...
1
vote
1answer
104 views

Understanding File Streams and File Descriptors

For extra context, I asked this question earlier, and thought I understood things, but not anymore. I know that echo ignores stdin. I know that stdin, stderr and stdout exist and, in this context, I ...
1
vote
2answers
330 views

exec command in bash loop for webscrapping

Here is a simple script which is curling https://unix.stackexchange.com/ and storing the result into an array, which is working fine. #!/usr/local/bin/bash [ -f pgtoscrap ] && { rm pgtoscrap; ...
1
vote
1answer
76 views

File Descriptors and Redirection

Several resources state the file descriptor 0 is connected to the keyboard. I have learned that echo does not receive input from stdin (or 0). This feels contradictory to me. When I run echo foo I'm ...
1
vote
1answer
38 views

Redirection to named file descriptor buggy inside functions

Bash has a feature where it will pick a file descriptor number for you and assign it to a variable. $ exec {fd}>foo.txt $ echo "$fd" 11 $ echo "bar" >&$fd $ cat foo.txt bar This feature ...
1
vote
1answer
77 views

Why do I need 'exec' if 'while read' can open a 'File Descriptor'

I want to read a file line by line using bash, tail and using a diferent file descriptor. all the guides use this method: method 1: echo 1111111 > z.txt exec {newFD}< <(tail -f -c +0 "z.txt"...
0
votes
0answers
24 views

Monitoring data flow to /dev/null for a given process

I have a process which reads out data from a custom PCI-e device using a custom driver. The program takes a file descriptor as an argument and writes the raw data to it. I would like to test the data ...
0
votes
1answer
247 views

Maximum value for /proc/sys/fs/file-max

Today my server crashed with Too many open files in system: but I already have high values, what is a maximum value for this? I feel like there aren't good results on google for this, explaining ...
2
votes
1answer
95 views

concurrent processing in bash using process expansion, and redirection

Apart from possible races that have to be controlled by using proper synchronisation, it's possible in bash to feed a data source concurrently into multiple pipelines and collect all their outputs ...
3
votes
3answers
148 views

tee into different variables

From the bash code command1 | tee >(command2) | command3 I want to capture the output of command2 in var2 and the output of command3 in var3. command1 is I/O-bound and the other commands are ...
0
votes
0answers
34 views

Is a mmaped file considered an open file in linux/unix?

Hi I feel confused about open file and mmapped file. I know that if a file is accessed using system call such as read/write will return a file descriptor, and be considered as an open file? How about ...
0
votes
1answer
87 views

Why is my files “last modified” timestamp only showing the year with the 'ls' command? [duplicate]

I'm building a java service that modifies the "Last Modified" field of some of the files it works with. The service keeps copies of files in a folder, it periodically checks a database for changes, ...
2
votes
1answer
247 views

lsof versus /proc/$PID/fd versus ulimit -n

I am trying to find the reason why my long-running app sometimes busts the maximum open file descriptor limit (ulimit -n). I would like to periodically log how many file descriptors the app has open ...
1
vote
0answers
192 views

Listen in to data read from file descriptor to ttyS

I have a serial device under /dev/ttyS0 and an application that is reading from the serial device (but not writing to it). I wanted to listen in to the data that is coming in on the serial device but ...
4
votes
2answers
152 views

How to periodically check if STDIN is open?

Some programs will exit when their STDIN is closed. Those that do this work nicely with Erlang/Elixir supervision via "ports". For those that don't, the Elixir docs suggest this wrapper script: #!/...
5
votes
2answers
792 views

Safest way to force close a file descriptor

Sometimes you need to unmount a filesystem or detach a loop device but it is busy because of open file descriptors, perhaps because of a smb server process. To force the unmount, you can kill the ...
0
votes
1answer
103 views

Multiple fifos over SSH

Shell script allow multiple file descriptors (up to 9 for POSIX compliance, but even more for bash): $ install -m 755 /dev/stdin /tmp/test <<\EOF #!/bin/sh echo hi1 >&1 echo hi2 >&...
2
votes
1answer
33 views

Why the output of ls is different for the same directory /dev/fd/ based on the method of referencing this directory?

cd /dev/fd/; ls Gives me output that I expect: 0 1 2 255 But: ls /dev/fd/ Gives different output that I don't expect: 0 1 2 3 Why? What happens here? What happened to file descriptor 255? ...
0
votes
0answers
257 views

Cannot pass argument through /proc/<pid>/fd/0

I have written a basic C++ program as such: #include <sstream> #include <unistd.h> #include <cstdio> #include <iostream> int main(void) { int foo; std::cin >> foo; ...
0
votes
2answers
84 views

STDOUT + STDERR output … is there any difference between considering the output to be an empty string vs NULL

I'm writing some application code that is used to execute Linux shell commands, and it then logs the command details into an SQL database. This includes the output of STDOUT + STDERR (separately). ...
4
votes
1answer
348 views

Testing if a file descriptor is valid (for input)

In the question "Testing if a file descriptor is valid", a test is sought for testing whether a file descriptor is opened or not. The answers all focus on testing whether the file descriptor is ...
1
vote
1answer
54 views

A command wants file paths. How can I give it stdin for the “infile” and stdout for the “outfile”?

Consider a command like foo -in /path/to/infile -out /path/to/outfile, that you'd like to pass strings to rather than using temp files. It may be called a lot causing much disk access, or is related ...
10
votes
4answers
2k views

Temporary folder that automatically destroyed after process exit

Can we use temporary folders like temporary files TMP=$(mktemp ... ) exec 3<>$TMP rm $TMP cat <&3 which will be destroyed automatically after this shell exit?
5
votes
2answers
272 views

Why doesn't sed -i work with /proc/PID/fd/FD

I have this file and fd: exec 88<>abc Why $ sed -i "s/cd/II/g" /proc/$$/fd/88 sed: couldn't open temporary file /proc/26194/fd/sedS1D1FT: No such file or directory but this work: $ cat /...
4
votes
2answers
1k views

Difference between ulimit, lsof, cat /proc/sys/fs/file-max

I've been getting java.io.IOException: Too many open files while running a Kafka instance and using one topic with 1000 partitions so I started investigating the file descriptors limits in my ec2 vm. ...
0
votes
1answer
95 views

Number of file descriptors - pidstat

As mentioned here: On RHEL 7.x, below command: pidstat -C syslog-ng -v does not recognise -v option Alternative: There are two process 417880 & 417881 for syslog-ng: # ls /proc/`pidof syslog-...
4
votes
1answer
932 views

How copytruncate actually works? [closed]

we would like to understand copytruncate before rotating the file using logrotate with below configuration: /app/syslog-ng/custom/output/all_devices.log { size 200M copytruncate dateext ...
6
votes
2answers
2k views

In Bash, what is file descriptor 255 for, can I use it?

I understand file descriptor (or file handler) is an file IO technique in Linux systems. I also know that each process has 3 standard streams (namely stdin, stdout and stderr) that are represented ...
0
votes
1answer
113 views

How does the act of closing shared file descriptors with a write-blocked process cause it to unblock?

Given multiple processes, forked from a parent process with shared file descriptors (representing STDOUT/STDERR), if one of the processes writes to STDOUT and exceeds the ~64K buffer it will block (as ...
0
votes
1answer
587 views

display the file descriptors of a process using python [closed]

How can I display the open file descriptors of a process in linux using python script? I tried using readlink /proc/PID/fd/* in python script but I am getting error. /bin/sh: 2: /fd/*: not found ...
2
votes
0answers
39 views

Get the path of song playing in VLC using python script

I am trying to get the path of song playing in VLC using python script. I have already find out the Process ID of vlc using pgrep -x vlc And I can also display the all file descriptors of vlc ...
1
vote
1answer
61 views

Why I can't see port opened by a process in file descriptors?

I have a rabbitmq management process running, which opens a port 15672, tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 5431/beam As you can see the process has a PID ...
0
votes
0answers
271 views

ss command: file descriptor information when using the -p option

In ss command, when using the -p option, this presumably provides info about the process (owner, pid an fd) root@Cassiopeia:~# ss -tap | tail -1 ESTAB 0 0 [2a0i:527:9981:8511:f64e:...
0
votes
2answers
654 views

pass stdout fd to 'read' system call, but it still works fine [duplicate]

I pass 1(stdout)/2(stderr) to read system call but it still works fine. Then I pass 0(stdin) to write system call and find out it works too! int main(int argc, char** argv){ char buf[1024] = "...
-1
votes
2answers
51 views

Shell script to match row number from one file and put it as comments in another file when match

I have two files. The content of both files has dynamic and generated by the system when required. The first file contains the meaning for specific row number as below : head simdb.txt MSISDN ...
0
votes
2answers
319 views

Is a file descriptor ever NOT open?

Of course a file can be open, or not open. However, a file descriptor by definition refers to an open file (right?). (Well, except when it refers to something besides a file, like a pipe or what ...
0
votes
2answers
285 views

How to I tail the STDOUT of a cat command [duplicate]

Let's say that I start a cat process to wait for some input. e.g., $ cat > out.log In another terminal, I can identify its PID and feed data into its File Descriptor 0 (zero = STDIN), like this: ...