su / sudo / 環境変数

Linuxコマンド

3行で要約

 状態:-  閲覧数:887  投稿日:2014-03-26  更新日:2018-01-18
suコマンドではなくsudoコマンド使用
sudoコマンドは実行ユーザのPATHを引き継がない
プライベート開発なので、引き継ぐよう設定変更しておく

1

 閲覧数:105 投稿日:2018-01-18 更新日:2018-01-18 
su
・util-linux パッケージに含まれている
・切替先ユーザー(root)のパスワードが要求される
・環境変数はそのまま

sudo
・sudo パッケージに含まれている
・「一般ユーザー」にコマンド毎に「root権限」を付与できる
・元の(一般)ユーザーのパスワードが要求される
・環境変数がリセットされる(設定次第)
・セキュリティ上PATHを引き継がない
・/etc/sudoersで権限を細かく設定できる

sudoがPATHを引き継がない理由
・セキュリティ



「sudo」と「sudo -s」の違い

suとsudoの違い
sudo -s って何?



linux - sudoで$PATHを引き継ぎつつsbinなどをPATHに加えるには? - スタック・オーバーフロー
suやsudoにおけるPATH - てきとうなメモ
sudo「コマンドが見つかりません」PATHが初期化されているときの対処法 – シングスブログ



CentOS で sudo 時に実行ユーザーのPATHを引き継ぐ - Qiita
sudo時にPATHを引き継ぐ方法 - Qiita
sudo時に環境変数PATHが引き継がれない時の対策
sudoで環境変数を引き継ぎたい|ざる魂





sudoユーザのPATHを引き継がない場合、どういう不具合が発生する可能性があるのでしょうか?

 閲覧数:136 投稿日:2018-01-19 更新日:2018-01-19 
$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/★★/.local/bin:/home/★★/bin


$ sudo su root
[sudo] password for ★★: 

# echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin

# exit

$ sudo su
                                                                                                                
# echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin

# exit

$ sudo -s 
# echo $PATH
/sbin:/bin:/usr/sbin:/usr/bin

# exit

$ su 
Password: 

# echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/★★/.local/bin:/home/★★/bin




$ sudo su root



シンボリックリンク

コマンドヒエラルキー



週間人気ページランキング / 9-14 → 9-20
順位 ページタイトル抜粋 アクセス数
1 PHPのmb_send_mail関数でメール送信できない | メール処理システム 29
2 Nginx設定。エラーログレベル | Nginx(Webサーバ) 21
3 Python 3.5 アンインストール / yum remove | Python(プログラミング言語) 11
4 FFmpeg 2.8.15 を yum インストール | ソフトウェアスイート 10
5 PHP実行ユーザ設定 / CentOS6 / Apache | PHP(プログラミング言語) 9
6 PHP Version 7.1.2 php-mecabエクステンション対応 / PHP 7.0.14 からのアップグレード  | MeCab(形態素解析) 8
6 ソースからビルドしたPython 2.7.3 アンインストール失敗 | Python(プログラミング言語) 8
7 touch コマンド / viコマンド。新規ファイル作成時の違い | Linuxコマンド 7
7 さくらVPS0 7
8 9回目-13.MySQL5.7.21設定 | CentOS 7 2週間無料のお試し期間 9回目(さくらVPS) 6
8 「設定ファイルに、暗号化 (blowfish_secret) 用の非公開パスフレーズの設定を必要とするようになりました。」対応 6
9 PHPファイルでchmodエラー | PHP(プログラミング言語) 5
9 設定 2019/1/22 / 一般ユーザがmailコマンドでメール送信 / 管理者がmailコマンドでメール送信 5
10 Postfix | メール処理システム 4
10 CentOSでcpコマンド動作確認するためには、Control + T ではなく、 -v オプションを使用 | cp(Linuxコマンド) 4
10 499 (Request has been forbidden by antivirus) | HTTP(通信プロトコル) 4
10 tar | Linuxコマンド 4
10 Python 3.6 インストール / make altinstall | Python(プログラミング言語) 4
10 「CentOS6」から「CentOS7」への移行 | CentOS 7 (CentOS) 4
10 echo と cat の違い 4
2021/9/21 1:01 更新