私のデスクトップにはSuse Linuxがあります。だから私はルートであり、「一般的な」ユーザーです。通常、Tomcatを起動したり、sudo
プログラムをインストール/削除したりするなど、スーパーユーザーを使用または切り替える必要があります。ただし、.bashrc
パスなどに.profile
多くのエイリアスが定義されています。
スーパーユーザーの一部の権限を一般ユーザーに割り当てることはできますか?インストーラのように?
答え1
はい、しかしそれはあなたができる最悪のことです。オペレーティングシステムには、異なる権限を持つさまざまなユーザーがいます。これは意図的なものです。ユーザーにroot権限を永久に付与すると、システムのセキュリティが損なわれます。 (Windows 9xとすべてのウイルスを覚えていますか?)
(シェル)をsudo
実行しない限り、コマンドを実行するためにカスタマイズは必要ないようです。/bin/sh
希望の効果を得るには、次のようにします。
コンテンツをシステムの内外に~/.bashrc
移動することができ、別のスクリプトに入れる方が良いです(忘れないでください)。このファイルはログインセッションごとに実行されます。~/.profile
/etc/bash/bashrc
/etc/profile
/etc/profile.d/mystuff.sh
chmod +x /etc/profile.d/mystuff.sh
その後、ルートセッションを開始しsu -
、-に渡された(マイナス)記号はsu
ログインセッションを実行するため、上記のファイルが実行されます。 Linuxディストリビューションによっては、電話をかける必要があるかもしれませんsudo su -
。
ルートセッションが完了したら、root権限を維持するのが最善ですlogout
。
特定のバイナリへのルートアクセスのみが必要な場合は、効果的なUIDという別の方法があります。たとえば、mtr
バイナリには以下を使用できます。
chmod a+s `which mtr`
これにより、mtr
バイナリを実行するときにバイナリを所有しているユーザー(この場合はルート(chown root /path/to/mtr
))の有効な権限があります。 sudoと入力する時間を節約できますが、root権限を与えるバイナリを慎重に選択する必要があります。危険がわからないと危険です。最初のオプションを使用することをお勧めします。
答え2
Tomcatは以下から始める必要があります。初期化スクリプト。ユーザーグループにTomcatを(再)起動する権限を付与するには、次の行を追加します。/etc/sudoers使用visudo
。これは次のようになります。
%tomcatcontrol localhost = NOPASSWD : /etc/init.d/tomcat *
localhost をコンピュータ名に変更します。その後、グループ内の各ユーザートムキャットコントロール以下を発行できます。
sudo /etc/init.d/tomcat restart
(または状態、停止または開始)。
これがsudoの目的です。ルートアカウントでもっと長く作業したい場合は、そうすることができますsu -
。他のユーザーが実際にTomcatコンテンツ(ユーザーTomcatが所有するファイル)を管理できるようにするには、su - tomcat
ユーザーまたはユーザーグループを許可できます。
あなたのエイリアスについて - OpenSuSEにはこの目的のために/etc/profile.localがあると思います。そこにすべてのユーザーに有効なものを置くことができます。