Найдите каталог от относительного пути в PS произвел

Было немного дискуссии о той теме в старом отчете об ошибках на точно что предел:

  • Они раньше находились в различных (меньших) дисках (и может возвратиться). Несколько разделов дают мне больше гибкости для перемещения их вокруг использования маркировок.
  • Я не использовал ext3 прежде, так меньшие разделы, сделанные короче fscks в случае выключений питания.
  • Я слишком ленив для использования квот для ограничения использования диска отдела

Но даже затем короткий ответ был: anyone who needs even 16 partitions is insane, :).

В наше время у нас есть LVM, и те пределы больше не имеют значения.:)

5
19.12.2013, 03:02
3 ответа

Имя файла относительно текущего каталога в то время, когда процесс Java пытался получить доступ к нему. Нет никакого верного способа определить это. Можно посмотреть на текущий каталог процесса:

ls -l /proc/1615/cwd

Если процесс все еще будет иметь открытый файл, то Вы сможете легко узнать, где это.

ls -l /proc/1615/fd

Если Вы не можете найти файл этим путем, потому что программа изменила свой текущий каталог, можно попытаться проверить текущий каталог родительского процесса, если родительский процесс все еще жив. Использовать ps l 1615 для наблюдения PID родительского процесса (PPID) затем посмотрите на родительский процесс cwd.

Если это перестало работать, можно использовать определять местоположение команду для поиска файлов с определенным именем.

locate exhibitor-1.2.3-jar-with-dependencies.jar

Определять местоположение команда ищет индекс, который обновляется каждую ночь (или в переменные времена, если Вы выключаете свой компьютер ночью), поэтому при установке файла недавно Вы не могли бы найти это тем путем.

В отчаянии можно использовать find команда для поиска файла в иерархии каталогов. Например, если Вы подозреваете, что файл находится под Вашим корневым каталогом:

find ~ -name exhibitor-1.2.3-jar-with-dependencies.jar

Смотреть везде в системных каталогах:

find / -xdev -name exhibitor-1.2.3-jar-with-dependencies.jar
4
27.01.2020, 20:38

Можно считать текущий каталог процесса:

readlink /proc/1615/cwd

Это будет только работать, чтобы решить, что относительный путь, если процесс не изменился, он работает каталог, так как он выполнялся. Другая вещь отметить состоит в том, что процессы могут изменить свое название команды (что отображено в PS), таким образом, на это нельзя полагаться.

2
27.01.2020, 20:38

Использовать find

find / -name exhibitor-1.2.3 -type d -print

Это найдет все название каталогов exhibitor-1.2.3 в Вашей системе.

0
27.01.2020, 20:38

Теги

Похожие вопросы