私は4つの異なるワークステーションでChromeを使用しており、すべてのワークステーションで拡張機能を同期させています
私が抱えている問題は、拡張機能の一つ(Gestures for Chrome)が、実際のマウスを持っている場合は素晴らしい働きをしますが、Ubuntu上のトラックパッドでは、それが邪魔になるだけです
Ubuntuマシン上で無効にすると、内部同期機構のため、すべてのChromeインストールで無効になります
Q: 1台のマシンだけで拡張機能を選択的に無効にすることはできますか?
144 growse 2013-01-04
セキュリティ上の懸念から、ChromeはNPAPIプラグインを含む拡張機能を同期しません
NPAPIプラグインとは?
NPAPI プラグインで実行されているコードは、現在のユーザーの完全な権限を持っており、Google Chrome によって悪意のある入力がサンドボックス化されたり、シールドされたりすることはありません。コンテンツスクリプトや XMLHttpRequest を扱う場合など、信頼できないソースからの入力を処理する場合は特に注意が必要です
Theory
NPAPIを使ってChromeが認識するように拡張機能を修正すれば問題ないはずです
How to
まず、Screen Capture (by Google)のようなNPAPI拡張機能のダミーの.dllが必要です。この拡張機能は、GoogleがNPAPIサポートを停止することを決定したため、その間にGoogle Playストアから削除されましたしかし、これは私たちのシナリオには関係ありません。幸いなことに、公式スクリーンキャプチャwikiにはまだソースコードが残っています。完全な拡張子は必要なく、NPAPI .dll
screen_capture.dll
だけです。直接ダウンロードしてください次に、同期してはいけない拡張機能フォルダに移動します。あなたの場合はGestures for Chromeです。
..\profile\Default\Extensions\jpkfjicglakibpenojifdiepckckakgk\1.12.1_0
manifest.json ファイルを修正し、Stackoverflow で説明されているように NPAPI プラグインを追加するか、developer.chrome.com で説明されているように、NPAPI プラグインを追加してください
{ "name": "My extension", ... "plugins": [ { "path": "screen_capture.dll" } ], ... }
同期したくない拡張子のbackground.htmlファイルを修正してください
<embed type="application/x-my-extension" id="pluginId"> <script> var plugin = document.getElementById("pluginId"); var result = plugin.myPluginMethod(); // call a method in your plugin console.log("my plugin returned: " + result); </script>
将来、でNPAPIサポートを再有効化する必要があるかもしれません
ここからは自己責任で。私は拡張子コーディングのことをよく知りません。 だからこその理論です。)
28 nixda 2013-01-09
お探しのものではないかもしれませんが、これを試してみてください。Chromeの設定メニューの右隅にある三本線/レンチのアイコンをクリックして開きます。ここで、詳細な同期設定を開きます
ここで、何を同期するかを選択するオプションを選択してから、拡張機能オプションのマークを外します。これで、あなたの拡張機能は他のPCと同期されなくなります
84 avirk 2013-01-09
お目当ての拡張機能をローカルの拡張機能としてインストールしてみてはいかがでしょうか
開発者モードを有効にした状態で
chrome://extensions
から欲しい拡張機能のIDを探しますGoogle のインストールディレクトリに移動します。
Windows: %localappdata%\Google\Chrome\User Data\Default\Extensions\
{Extension_ID}\
{Version_Number}どこかに保存して…ユーザーディレクトリとか?
開発者モードを有効にした状態で
chrome://extensions
に戻り、Load unpacked extension
を押します。そして、拡張機能の新しいコピーに移動します拡張機能が2回あるのが分かるはずだ…本物を無効にしてください
このアプローチには悪い面があり、それはあなたが自動更新を失うことであり、あなたはそれが更新されるたびに、上記の手順を繰り返し行う必要がありますので、私は無効にすると言います
どちらが本物でどちらが新しいコピーなのかわからない場合は、{Path_To_Your_Copy}のIDタグの下にあるLoaded from: {Path_To_Your_Copy}を見てください
60 WORMSS 2013-09-14
私が見つけたもう一つの解決策は、Chromeに含まれているポリシー機構を使用することです。Googleはグループポリシーを使って拡張機能を管理することができます。不要な拡張機能をブラックリストに載せることで、このPCの同期を効果的に削除することができました。これらのオプションを手動で設定することで、この知識を活用することができます
ここでは、Windowsパソコン用の簡単な説明をします
- レジストリエディタ(regedit)を開きます
- HKEY_LOCAL_MACHINE_MACHINE\SOFTWAREPolicies\Google\Chromeに移動しなさい-存在しなければそれを作成しなさい
- ExtensionInstallBlacklist “という名前の新しいキーを作成します
- 新しい値(REG_SZ)を追加し、それを “1 “と名付ける – 既に存在する場合は “2 “などと名付ける
- この値のデータを削除したい拡張子のIDに設定します
Linux OSの場合
- ファイルが存在しない場合は
/etc/opt/chrome/policies/managed/policies.json
を作成します - ファイル
/etc/opt/chrome/policies/managed/policies.json
をお好みのテキストエディタで開いてください - 以下の内容を追加します。
{"ExtensionSettings": { "PUT EXTENSION ID HERE": { "installation_mode": "blocked" } }
- 保存してファイルを閉じます
これを行うことで、次回Chromeを起動したときに拡張機能が削除されます。これは自分が使っているPCにしか影響しません。Chrome をクリーンインストールして確認してみました。ログイン後、すべての拡張機能が読み込まれました
このポリシー設定のドキュメントはここにあり、異なるオペレーティングシステムの設定も表示されます
編集1:Linux用の説明を追加しました(コメントでsherbangに感謝)
編集2:マットスカリーによって示されたようにドキュメントへのURLを更新しました。https://cloud.google.com/docs/chrome-enterprise/policies/?policy=ExtensionInstallBlacklist
12 Harry_Pootha 2018-05-28
私の場合は、Chromeタスクマネージャを使ってChromeを起動するたびにプラグインのプロセスを手動で終了させることが有効です。これは次のように行います
- (Macの場合) メニュー] > [その他のツール] > [タスクマネージャー] を選択します
- (PCの場合) メニューバーの右クリック>タスクマネージャまたはShift + Escをクリックします
その後、実行したくない拡張機能をクリックして、”プロセスの終了 “をクリックしてください
職場には2台のパソコンがあり、両方にgoogleハングアウトが出てくるのが嫌なんです。唯一の悪い点は、クロームを起動するたびにこれをしなければならないことです
7 wd4ever 2015-09-28
これは毅然とした回答ではなく、別の観点から問題を検討することになります
Chrome の同期システムでは、単一のマシンでレーティングをカスタマイズすることはできません。また、拡張機能に disable/enable
のフラグを持つ拡張機能を追加したソリューションは失敗します
同じユーザーアカウントを同時に使用している別のマシンでは、変更が反映されるため
情報のこの交換を避けるための方法は、どのように彼が提案した@avirkは、拡張機能の同期を無効にしていますが、このソリューションは、あなたの環境のために適切ではないようです
その上で、必要な結果を得るために採用できるアイデアをさらに2つ提案します
- 2 つ目のアカウントを作成すると、独自の拡張機能グループをカスタマイズすることができます (このソリューションは、私が個人的に使用しているもので、異なるマシン上で ScriptSafe の異なるプロファイルを使用しています)
もう一つの提案は、少しありきたりではなく、下手くそと思われるかもしれませんが、選択肢が広がるように、あらゆる方法で記述していきたいと思います
- 問題のプラグインのフォルダに移動します。
.config/google-chrome/Default/Extensions/jpkfjicglakibpenojifdiepckckakgk/versionfolder
に移動し、”background_page.html “というファイルに内容をクリアします。”この例はプラグインにのみ適用できます。Gestures for Chrome (TM)”
これは、ページを読み込む際に例外を発生させ、拡張機能のイベントコードを正しく実行できないようにします。そのため、この拡張機能をローカルで無効にすることになります
拡張機能の新しいアップデートを受け取るときはいつでも、新しいバージョンのフォルダでこの操作をやり直さなければならないことを覚えておいてください
5 RTOSkit 2013-01-13
これはかなり古い質問ですが、まだ私を悩ませていることがあります。だから、ここでは私自身の2つのセントです
別の拡張機能を使えばできるかもしれません。私自身はこの2つのプラグインを使い分けています。”拡張機能マネージャー(別名スイッチャー)“
便利な拡張機能、アプリケーション、テーママネージャー。ライトポップアップマネージャーを有効にしたり、無効にしたり、拡張機能やアプリケーションを素早く簡単にアンインストールしたりすることができます
または “SimpleExtManager“
拡張機能の有効化、無効化、オプションへのアクセスを行うシンプルなメニュー。シンプル」シリーズのもう一つの追加です。今回は拡張機能マネージャーです
Features include:
- ポップアップで拡張機能の有効化/無効化、オプションへのアクセス、アンインストールを行う基本機能
- ポップアップをカスタマイズする
- 拡張グループを作成する機能
- ポップアップと右クリックメニューで拡張グループを有効/無効にします
- イベントページが有効
どちらの拡張機能も好きなのですが、どちらが一番好きかというところまでは至っていません。どちらも開発が進んでいて、頻繁に更新されています
4 Squazz 2015-07-18
ここに簡単な解決策があります(拡張機能を19個持っていて、1つか2つしか問題がないことを考えると):各個別のコンピュータに最初にインストールした後
- Google Chromeが初期同期を実行できるようにします
- インストール後、設定に進み、拡張子の同期を無効にします
- 希望する拡張子を削除します
これは基本的にすべての拡張機能をユーザーに保持し、個々のコンピュータごとに手動で編集することができます
前の回答の方が面白かったのは認めざるを得ませんが、これであなたの問題は解決しました
Cheers!
4 TVDN 2018-04-27
Harry_Poothaさんのとても参考になった素晴らしい回答にコメントしようと思っていたのですが、私はここではあまり活動的ではありません。)
そこで、レジストリを Regedit でナビゲートすることに頼らない別のアプローチがあります
https://support.google.com/chrome/a/answer/187202?hl=enでは、ブラックリストポリシーを含む管理者ポリシーの大規模な範囲をChromeに適用する方法について、ステップバイステップのガイドを提供しています
Chrome ポリシーの全リストを見るには、policy templates の zip ファイル内の common/ フォルダを参照してください(すべてのサポートされている言語で利用できます)
Windowsの場合、最も重要な2つのステップ
Step1:Chromeのポリシーテンプレートをダウンロードします
Windowsのテンプレートと、すべてのオペレーティングシステムに共通のポリシー文書は、ここで見つけることができます
Google Chrome のテンプレートとドキュメントの圧縮ファイル
ステップ2:ダウンロードしたADMまたはADMXテンプレートを開きます
- スタート > 実行: gpedit.msc を選択します。(またはターミナルでgpedit.mscを実行)
- ローカルコンピュータポリシー] > [コンピュータ構成] > [管理テンプレート]に移動します
- 管理テンプレートを右クリックし、テンプレートの追加と削除を選択します
- ダイアログからchrome.admテンプレートを追加します
- 完了すると、まだ管理テンプレートの下にGoogle / Google Chromeフォルダが表示されていない場合は、Google / Google Chromeフォルダが表示されます。Windows 7または10でADMテンプレートを追加した場合は、クラシック管理テンプレート/Google / Google / Google Chromeの下に表示されます
LinuxやMacの場合は、Googleのページにリンクされている追加のガイドがあるので、そちらでフォローしていくのがベストです
最後のステップは、実際にポリシーを有効にして、その内容を指定することです。私が見つけた最良の方法は、新しいタブのchrome://policy/
に移動して、”値が設定されていないポリシーを表示 “にチェックを入れることです
GPエディタでは、探しているポリシーは、ドキュメントに記載されている長い名前を使用していることに注意してください。したがって、”Configure extension installation blacklist” を Enabled に設定し、ポリシー設定 GUI の Show をクリックして、必要な ID を追加します
chrome://extensions/
で右上の「開発者モード」にチェックを入れると、簡単に拡張子のIDを見つけることができます
Harry_Poothaさんには、これを全部見つけて使ってくれた回答をありがとうございました
2 tiby 2019-09-16
おそらく、インストールされている拡張機能を一覧表示する便利な拡張機能 (https://github.com/rbrahul/chrome-extension-manager) と、無効にしたい拡張機能を選択して、その一覧をブラウザのストレージに保存しておくことができるようにするとうまくいくでしょう。はい、それはグローバルに無効化されますが、別の場所では同じ拡張機能は異なるリストを使用するので、異なる拡張機能を有効にします
別のマシンで同時にクロームを使用している場合(デスクの上では、Mac、ラップトップ、デスクトップ、仮想マシンなど)、混乱する可能性があります
多分、プロセスを殺すことを無効にする代わりに、私はそれがプログラム上で行うことができるかどうかさえも確信していません
0 emaV 2018-03-20