パッケージを参照できないため、ルートではないことを知っています。最初に、 this ページを知っていますが、それは私のために機能していません。それらの指示に従った後、UnityからSublimeを開くとプロンプトが表示されますが、まだパッケージを参照できません。ターミナルでgksu subl
を使用して崇高を開くと、何も起こりません。 Sudo subl
を実行すると開き、パッケージを閲覧できます。 gksuの代わりに毎回Sudoとして崇高なものを開いても大丈夫ですか?
編集:実際、Unityから崇高なものを開くと、パスワードの入力を求められた後、まったく開きません。
編集:gksudo subl
はgksuと同じ効果があります。 SublimeをWebサイトからインストールしました(Ubuntu 64リンクをクリックしてダウンロードし、ダウンロードをクリックして、Software Centerに移動しました)。 「which subl」は/usr/bin/subl
を返します。 gksuがインストールされます。グルタニメート、はい、それは私が意味するものです。それでは何が起こっているのでしょうか? Sudoを使用する場合にのみ参照できます。
/usr/share/applications/sublime-text.desktop
:
[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=gksu /opt/sublime_text/sublime_text %F
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;
[Desktop Action Window]
Name=New Window
Exec=/opt/sublime_text/sublime_text -n
OnlyShowIn=Unity;
[Desktop Action Document]
Name=New File
Exec=/opt/sublime_text/sublime_text --command new_file
OnlyShowIn=Unity;
gksu
/gksudo
が機能しない、または利用できない場合は、代わりにSudo -H
を使用できます。Sudo
/gksu
の代わりにgksudo
を使用してグラフィカルプログラムを実行する場合、Sudo -H ...
の代わりにSudo -i ...
(またはSudo ...
)を使用する必要があります。 。
Sudo -H subl
Sudo -i subl
(プレーンSudo ...
もそれらの方法も、通常はUnityダッシュからは機能しません。パスワードを入力する端末が必要なためです。ただし、ターミナルから実行できます。)
悪いと考えられる が通常のSudo
でグラフィカルプログラムを実行する主な理由は、HOME
環境変数を非ルート呼び出し元のホームディレクトリ(/home/username
)ルートのホームディレクトリ(/root
)ではなく。多くの場合、 通常のユーザーに属している必要があり、代わりにrootに属している構成ファイルが発生します (およびアクセス不可)。
-H
フラグを指定してSudo
を実行すると、代わりにルートのホームディレクトリが使用されるようになり、これを防ぐことができます。
Sudo -i
はこれを実行します。シミュレートされたルートログインセッションでプログラムを実行します。グラフィカルプログラムをルートとして問題なく実行することだけが目的である場合、Sudo -H
とSudo -i
のいずれかを優先する理由はありません。