Запитання з тегом «open-files»

Робота з файлами, які зараз відкриваються в програмі

3
Чому кількість відкритих файлів обмежена в Linux?
Зараз я знаю, як: знайти ліміт відкритих файлів за процес: ulimit -n підраховувати всі відкриті файли за всіма процесами: lsof | wc -l отримати максимально дозволену кількість відкритих файлів: cat /proc/sys/fs/file-max Моє запитання: Чому в Linux існує обмежена кількість відкритих файлів?
136 open-files  limit 

3
Знайдіть і видаліть великі файли, відкриті, але видалені
Як можна знайти великі файли, які були видалені, але все ще відкриті в програмі? Як можна видалити такий файл, навіть якщо процес відкритий? Ситуація полягає в тому, що ми запускаємо процес, який заповнює файл журналу з надзвичайною швидкістю. Я знаю причину, і можу її виправити. До цього часу я хотів …

2
ulimit: різниця між жорсткими та м'якими межами
Яка різниця між твердими і м'якими межами в ulimit? Для кількості відкритих файлів у мене обмежена межа 1024 та жорсткий ліміт 10240. Можна запускати програми, що відкривають більше 1024 файлів. Для чого м'яка межа?


7
У кого інший кінець цієї unix-розвідки?
Я хочу визначити, який процес має інший кінець сокета UNIX. Зокрема, я запитую про те, що було створено socketpair(), хоча проблема однакова для будь-якого сокета UNIX. У мене є програма, parentяка створює a socketpair(AF_UNIX, SOCK_STREAM, 0, fds)і fork()s. Батьківський процес закривається fds[1]і продовжує fds[0]спілкуватися. Дитина робить протилежне, close(fds[0]); s=fds[1]. Тоді …

1
Як я можу відстежувати відкриті файли процесу в режимі реального часу?
Я знаю, що можу переглядати відкриті файли процесу, використовуючи lsof в цей момент час на моїй машині Linux. Однак процес може відкривати, змінювати та закривати файл настільки швидко, що я не зможу його побачити під час моніторингу за допомогою стандартного сценарію оболонки (наприклад watch), як це пояснено у "моніторі відкритих …

2
Чому заміна процесу призводить до файлу під назвою / dev / fd / 63, який є трубкою?
Я намагаюся зрозуміти названі труби в контексті цього конкретного прикладу. Я набираю <(ls -l)свій термінал і отримую вихід як bash: /dev/fd/63: Permission denied. Якщо я набираю cat <(ls -l), я міг би бачити вміст каталогу. Якщо я замінити catз echo, я думаю , що я отримую ім'я терміналу (або це?). …

2
/ proc / PID / fd / X номер посилання
У Linux, у /proc/PID/fd/Xпосиланнях на дескриптори файлів, які є трубами або розетками, є таке число, як: l-wx------ 1 user user 64 Mar 24 00:05 1 -> pipe:[6839] l-wx------ 1 user user 64 Mar 24 00:05 2 -> pipe:[6839] lrwx------ 1 user user 64 Mar 24 00:05 3 -> socket:[3142925] lrwx------ …


3
Як я "кот і слідкую за" файлом?
Послідовно завантажується файл wget. Якщо я розпочну розпаковувати його cat myfile.tar.bz2 | tar -xj, він може розпакуватися правильно або вийти з ладу з "Несподіваним EOF", залежно від того, що швидше. Як "котити і слідкувати" за файлом, тобто виводити вміст файлу в stdout, але не виходити з EOF, замість цього тримати …
31 files  pipe  cat  tail  open-files 

2
Чи безпечно переміщувати файл, до якого додається?
У мене є процес node.js, який використовується fs.appendFileдля додавання рядків до file.log. Додаються лише повні рядки приблизно 40 символів на рядок, наприклад дзвінки схожі fs.appendFile("start-end"), а не 2 дзвінки, як fs.appendFile("start-")і fs.appendFile("end"). Якщо я переміщую цей файл, чи file2.logможу я бути впевненим, що жодні рядки частково не втрачені чи скопійовані?

6
Найкращий спосіб звільнити місце на диску від видалених файлів, які тримаються відкритими
Привіт У мене є багато файлів, які були видалені, але чомусь дисковий простір, пов'язаний із видаленими файлами, не може бути використаний, поки я явно не знищу процес для файлу, який займає місце на диску $ lsof /tmp/ COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME cron 1623 root 5u …

3
Як ми можемо знати, хто на іншому кінці псевдотермінального пристрою?
Якщо я роблю: echo foo > /dev/pts/12 Деякий процес прочитає це foo\nз його дескриптора файлів на стороні головного. Чи є спосіб дізнатися, що це (ті) процеси (є)? Або іншими словами, як я міг дізнатися, який xterm / sshd / script / screen / tmux / очікувати / socat ... знаходиться …

2
Як дізнатися зміщення файлу відкритого файлу?
Моя проблема полягає в тому, що lsof -p pid я можу дізнатися список відкритого файлу процесу, ідентифікатор процесу - pid. Але чи є спосіб дізнатися зміщення файлу кожного файлу, що доступ до нього? Будь ласка, дайте мені кілька пропозицій?
26 linux  open-files 

4
Як однаковий fd у різних процесах може вказувати на один і той же файл?
Скажіть, у мене є процес 1 і процес 2 . Обидва мають дескриптор файлу, відповідний цілому числу 4. Однак у кожному процесі дескриптор файлу 4 вказує на зовсім інший файл у таблиці відкритих файлів ядра: Як це можливо? Чи не повинен дескриптор файлу бути індексом запису в таблиці відкритих файлів?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.