2

Tomcat と Linux Ubuntu で Liferay ポータル サーバーを使用しています。

Liferay は非常に長いファイルを生成しています。Windows でこれらのファイルとその動作を見てきました。しかし、ubuntuで実行しようとすると、ファイルが作成されず、サーバーでエラーが発生します。また、非常に長いファイル名のファイルを作成しようとしましたが、実際には許可されません。

Linux Ubuntuでこれを許可する方法はありますか?

4

4 に答える 4

4

これを修正...

私の問題の原因は、私のubuntuOSの暗号化されたホームです。作成されたファイルのファイル名も暗号化されているため、長いファイル名がさらに長くなっているようです。

Ubuntuを新しくインストールしたとき、家を暗号化する必要がなくなり、正常に動作するようになりました。ありがとうございました...

于 2009-07-31T03:05:42.640 に答える
1

機能しない理由はたくさんありますが、おそらくその中で最も少ないのは長いファイル名です (255 文字を超えるファイル名について話している場合を除きます。これはハードリミットであると私は信じています)。

また、本当に巨大なファイルがない限り、ファイルの長さは大きな問題にはなりません (Linux ファイルシステムの上限は 2GB ですが、それを超えた場合の動作はわかりません。すべてが含まれていない 2 GB のファイルを参照してください)。

私のひざまずいた反応は、サーバーを実行しているユーザー (たとえば、「www」または「www-data」など) がフォルダーに書き込む権限を持っていないという権限の問題があると言うでしょう。それもしようとしています。

于 2009-07-30T06:49:01.707 に答える
1

例として指定したファイル名は問題ありません。

kevin@latte:~/miscdev/j$ touch 'everything.jsp_Q_browserId=firefox&themeId=controlpanel&colorSchemeId=01&minifierType=js&minifierBundleId=javascript.everything.files&t=1249034302000'
kevin@latte:~/miscdev/j$ ls -l
total 0
-rw-r--r-- 1 kevin kevin 0 2009-07-30 17:07 everything.jsp_Q_browserId=firefox&themeId=controlpanel&colorSchemeId=01&minifierType=js&minifierBundleId=javascript.everything.files&t=1249034302000

問題は、そのファイル名をエスケープせずにシェルに渡し、 & 文字を解釈していることだと思います。私の例のように、ファイル名を一重引用符で囲みます。

于 2009-07-30T07:08:10.810 に答える
1

Ubuntu 9.10 マシンでも同じ問題が発生しましたが、これは本当にホーム ディレクトリの暗号化が原因だったと思います。これらの「長すぎる」ファイル名は、私の家の外では問題なく機能します。

于 2010-01-12T09:08:33.570 に答える