web-dev-qa-db-ja.com

Python pip installが正常に動作しているかハングしているかどうかは、どうすればわかりますか?

python pandasパッケージをpipを使用してvirtualenvにインストールしようとしています。

私の開発マシンでは正しくインストールされましたが、今サーバーに接続しようとしています。

 warnings.warn(LapackSrcNotFoundError.__doc__)
/apps/PYTHON/2.7.3/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'define_macros'
  warnings.warn(msg)
non-existing path in 'numpy/distutils': 'site.cfg'
non-existing path in 'numpy/lib': 'benchmarks'
Could not locate executable gfortran
Could not locate executable f95
Found executable /apps/modules/wrappers/fortran/ifort

上の図は、46%のCPUで実行されているifortを示しています。

これが正しく動作しているかどうか(たとえば、更新中のファイルを確認できますか)、またはループでスタックしているかどうかを確認する方法はありますか?

今まで40分間走っています。

4
wobbily_col

プロセスのpid(pidof processまたはtopまたはpsなど)を取得し、strace -p <pid>を使用します。同じシステムコールを何度もポーリングまたは継続的に呼び出している場合は、おそらく無限ループに陥っています。無限ループに陥っているかどうかを判断するには、straceの時間機能を使用する必要があります(これは単なる仮定です)。

単純な古いstrace -p <pid>を実行すると、実際にはsyscallのみが表示され、それらの間で渡されるデータは表示されません。このデータを表示するには、-sパラメータも指定します。プロセスが自身をフォークした場合、straceにその子は表示されないため、-fを指定して、子が実行しているsyscallを確認してください。

また、syscallの間の所要時間を確認することもできます。これを行うには、-ttおよび-rおよび-Tを使用できます。ポーリングがある場合は、ファイルが作成されるのを待機しているのであれば、それは完全に正常な状態です。

8
user101130