「須藤ひう」って何ですか?

「須藤ひう」って何ですか?

Hudson サーバーをインストールするためのチュートリアルに従いました。チュートリアルには次の Linux コマンドがありました (hudsonは Ubuntu のユーザー名です)。

sudo -Hiu hudson

sudo -Hiuの目的ですか? このコマンドを実行すると何が起こりますか?

答え1

-Hiu フラグは、-H、-i、および -u オプションの組み合わせです。「man sudo」から直接引用します。

   -H          The -H (HOME) option sets the HOME environment variable to
               the homedir of the target user (root by default) as
               specified in passwd(5).  The default handling of the HOME
               environment variable depends on sudoers(5) settings.  By
               default, sudo will set HOME if env_reset or always_set_home
               are set, or if set_home is set and the -s option is
               specified on the command line.

   -i [command]
               The -i (simulate initial login) option runs the shell
               specified in the passwd(5) entry of the target user as a
               login shell.  This means that login-specific resource files
               such as .profile or .login will be read by the shell.  If a
               command is specified, it is passed to the shell for
               execution.  Otherwise, an interactive shell is executed.
               sudo attempts to change to that user's home directory
               before running the shell.  It also initializes the
               environment, leaving DISPLAY and TERM unchanged, setting
               HOME, MAIL, SHELL, USER, LOGNAME, and PATH, as well as the
               contents of /etc/environment on Linux and AIX systems.  All
               other environment variables are removed.

   -u user     The -u (user) option causes sudo to run the specified
               command as a user other than root.  To specify a uid
               instead of a user name, use #uid.  When running commands as
               a uid, many shells require that the '#' be escaped with a
               backslash ('\').  Note that if the targetpw Defaults option
               is set (see sudoers(5)) it is not possible to run commands
               with a uid not listed in the password database.

では、これは何を意味するのでしょうか。最初の便利なオプションは -u です。これは、コマンド (この場合はシェル) をユーザー root ではなくユーザー hudson として実行します。-H オプションは、コマンドの実行中、ホーム ディレクトリを hudon のホーム ディレクトリと同じにします。-i オプションは、ユーザー hudson の初期ログイン (ソース ドットファイルなど) をシミュレートします。これらを合わせると、コマンドをユーザー hudson で実行します。この場合のコマンドはシェルなので、これは、ユーザー hudson として直接ログインした場合と同じように、ユーザー hudson としてシェルを開くことを意味します。


補足として、実行しているコマンドがわからない場合は、sudo を使用しないでください。注意しないと、sudo を使用すると、システム構成が台無しになる可能性が高くなります。修正できないというわけではありませんが、5 分かけてマニュアル ページを読むことで、後で問題を修正する時間を節約できます。

答え2

man sudo端末に入力してマニュアルを表示できます。

k/ を押すjと上下にスクロールします。

終了するにはクリックしますq

関連情報