Linux は、Deepin がルートユーザーとして Google Chrome ブラウザを起動できない問題を解決します

Linux は、Deepin がルートユーザーとして Google Chrome ブラウザを起動できない問題を解決します

Deepin がルートユーザーとして Google Chrome ブラウザを起動できない問題を解決するには、以下の手順に従ってください。

1. Chromeのパスを見つける

which google-chrome

パスが/usr/bin/google-chromeの場合

2. google-chromeファイルを編集する

google-chrome を開き、ファイルの末尾にあるコマンドを変更します。

vim /usr/bin/google-chrome

exec -a "$0" "$HERE/chrome" "$@"の最後に--user-data-dir --no-sandboxを追加します。

Esc、:wq を押して終了し、保存すると、Chrome ブラウザを開くことができます。

ps: 非ルートユーザーでApache|Nginxを起動する方法を見てみましょう

ご存知のとおり、Apache のポート 80 はシステム予約ポートです。他の非 root ユーザーによって起動されると、次のエラーが報告されます。

(13)権限が拒否されました: make_sock: アドレス [::]:80 にバインドできませんでした
(13) 権限が拒否されました: make_sock: アドレス 0.0.0.0:80 にバインドできませんでした
利用可能なリスニングソケットがありません。シャットダウンします
ログを開けません

一般ユーザーは 1024 以上のポートしか使用できないため、1024 以内のポートは root ユーザーのみが使用できます。

ただし、コンピュータを起動するたびにルート ユーザーを経由する必要がないようにするには、UID を設定することでこの問題を解決できます。

以下の操作を一度に実行することで完了できます。

ルートユーザー環境で次の操作を実行します
cd ……/apache/bin
chown ルート httpd
chmod u+s httpd
もう一度su - ユーザー名
通常ユーザーで.../apache/bin/apachectl startを使用します

chmod u+s apachectl をなぜ実行しないのですか?
UID 設定方法はバイナリ ファイルに対してのみ有効であり、apachectl を tail すると次のことが見つかりました。
apachectlはスクリプトファイルです。慎重に検討した結果、次の文を見つけました。

HTTPD='/home/……/apache/bin/httpd'

結論: apachectl スクリプトは、httpd ファイルを起動することによって httpd サービス全体を開始します。
もう一度 cat httpd を実行すると、判読できない文字化けした文字がいろいろ表示されます。出力を終了するには ctrl+c を押します。すると、httpd がバイナリ ファイルであることがわかります。
最後に、chmod u+s httpd を実行します。もちろん、httpd の所有者が root ユーザーであることを確認する必要があります。そうでない場合は、次を実行します。
chown root httpd を実行するだけです。

同様に、nginxの起動も同じです。ルートユーザーを使用して、nginx/sbinと入力します。

次にchown root nginxを実行します

chmod u+s nginx

その後、通常のユーザーで起動できます。

tomcat の場合も同様です。

もちろん、デフォルトのポートを 1024 より大きい値に変更することも可能です。

要約する

上記は、Deepin がルート ユーザーとして Google Chrome ブラウザーを起動できない問題を解決するために Linux について紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。

以下もご興味があるかもしれません:
  • Deepin Linuxでカーネルを手動でアップグレードする方法
  • deepin 2014 システムに MySQL データベースをインストールする方法
  • deepin 15.3 X64 システムに mongodb をインストールする方法
  • Ubuntu/Deepin のクイック起動アイコンを作成する方法
  • Deepin Windows XP Lite V5.8 完全合理化公式バージョンのダウンロードアドレス
  • deepin xp 簡易版 (220M) ダウンロード
  • Windows SP2 アクティベーション不要のインストールバージョン - DeepinXP PLUS V2 ベータ版のダウンロード
  • Deepin 15.11 に QGIS 3.4 をインストールする

<<:  GolangでMySQLデータベースのバックアップを実装する方法

>>:  JS でモバイルのインタラクティブ エクスペリエンスを向上させる方法

推薦する

React ルーティング リンク構成の詳細

1. 属性へのリンク(1)ルーティングパスを配置する(2)指定された形式でオブジェクトを配置する{パ...

登録ページを実装するためのJS、CSS、HTML

HTML と CSS で実装された登録ページ テンプレート。早速、コードを見てみましょう。更新: ...

Nginx で Angular プロジェクトを展開する際の落とし穴

コンパイル後にAngularプロジェクトをNginxにデプロイする方法をオンラインで検索すると、ほと...

Deepin で virtualenv をインストールして使用するチュートリアル

virtualenv は、分離された Python 仮想環境を作成するためのツールです。独立したディ...

MySQL トランザクションと分離レベルの基本原理の簡単な分析

目次序文1. 取引の基本原則の簡単な分析原子性:持続性分離:一貫性: 2. 分離レベルの基本原理の分...

Rails APIを使用してReactアプリケーションを構築するための詳細な手順

目次バックエンド: Rails API部分フロントエンド: React部分Reactコンポーネントa...

CSS スタイルの導入方法とその長所と短所の紹介

CSSを導入する3つの方法1. インラインスタイル利点: 書きやすく、重みがある 欠点: 構造とスタ...

Spring jdbc のデータベース操作オブジェクト モデルの詳細な例

Spring jdbc のデータベース操作オブジェクト モデルの詳細な例Spring Jdbc デー...

WebプロジェクトをIdeaにインポートし、Tomcatに公開する問題を解決します

Idea は既存の Web プロジェクトをインポートして Tomcat に公開しますが、Tomcat...

jsはカスタムドロップダウンボックスを実装します

この記事の例では、カスタムドロップダウンボックスを実装するためのjsの具体的なコードを参考までに共有...

Linux での MySQL データベースのアンインストール

Linux で MySQL データベースをアンインストールするにはどうすればいいですか? 以下では、...

Dockerコンテナにvimコマンドがない問題を解決する方法

問題を見つける今日、Docker コンテナ内のファイルを変更しようとしたところ、コンテナ内に vim...

JavaScript の重要なブレークポイント デバッグ手法の概要 (推奨)

目次デバッガーを使用する理由は何ですか? Chromeデバッガーの基本的な使い方VS Code によ...

Vue3 Vue イベント処理ガイド

目次1. 基本的なイベント処理2. 親コンポーネントにカスタムイベントを送信するマウス修飾子4. キ...

データ構造 - ツリー (III): 多方向検索ツリー B ツリー、B+ ツリー

多方向探索ツリー完全二分木の高さ: O(log2N)、ここで2は対数完全なM方向探索木の高さ: O(...