web-dev-qa-db-ja.com

udiskを14.04から削除し、12.04のディスクユーティリティの機能に置き換えることはできますか?

現在、私は14.04をテストしていますが、それについて気に入っている点はたくさんありますが、udisksのバグが動揺しています。これらの問題のため、現在すべてのプロダクションシステムで12.04を実行しています。これらの問題は、12.10から始めて、それ以降間違っていなかった場合に発生します。

disksのマウントされていないパーティションでsda内からベンチマークを使用しようとすると、次のエラーが表示されます。

Error seeking to offset 2560872448 (g-io-error-quark, 13)

サポートデータ(ここに含めるには長すぎます):

http://Pastebin.com/7YmaEmtJ

5
Elder Geek

古い3.0.2のソースは、14.04でもほとんどの依存関係が利用可能であるため、14.04までは実行可能です。ただし、現在のgnome-disk-utilityパッケージへのアップグレードとして信頼できるように再構築してパッケージ化する方がよいので、そのためにppaを終了します。

https://launchpad.net/~mc3man/+archive/trusty-tests

注:Ubuntuの最新の3.0.2ソース(正確には3.0.2-2ubuntu7)を使用します(パッケージ名は実際には関係なく、最後に8になりました。

実際の変更点は、nautilus拡張機能とランチパッドの統合を削除することで、これは機能しなくなったり使用されなくなったりしたため、ftbfsが発生することになりました。

デフォルトのオープニングウィンドウサイズは少し小さく、開いた後にサイズ変更または最大化する必要があります。ソースを調整する方法につまずくと、そうなります。 (パッチを歓迎します。

適切でない場合は、ppa-purgeを使用するか、単にppaを削除し、gnome-disk-utilityを削除し、ソースを更新して、現在のgnome-disk-utilityを再インストールします。

生意気のために以前のビルドをPPAにコピーしました(生意気はほぼEOLです

Usb creatorに関する限り、14.04バージョンは問題ありません。最初にフラッシュドライブをfat32にフォーマットしてから、usb creatorを開くと、should正常に動作します。

4
doug

Gitリポジトリからgnome-disk-utilityのソースを確認しましたが、問題は32ビットアーキテクチャでは32ビットlseek()関数を使用して署名付きオフセットを探すことです。したがって、最初の数回のシークは成功しますが、2 ^ 31バイトを超えると失敗します(2560872448はこの境界を超えています)。

Lseek64のマニュアルに基づく修正は、すべてのヘッダーの前に1行だけ追加することです。

#define _FILE_OFFSET_BITS 64

または、lseek64プロトタイプに切り替えます。

2
MariusM