查看積分策略說明發表回覆
Discuz! 代碼
提示插入
直接插入
說明訊息

插入粗體文本 插入斜體文本 插入下劃線 置中對齊 插入超級連結 插入信件位址 插入圖像 插入 flash 插入代碼 插入引言 插入列表
刪除線 直線分隔線 虛線分隔線
    
添加文字底框
內容 [字數檢查]:

表情符號

更多 Smilies
字型大小 |||
溫馨提示:本區開放遊客瀏覽。


文章關鍵字 : [功能說明]
(關鍵字可加強搜索準確性, 如關鍵字多於一組, 請以 , 作分隔, e.g. : 阿笨,shiuh,第一笨)

 關閉 URL 識別 | html 禁用
 關閉 表情符號 | 表情符號 可用
 關閉 Discuz! 代碼 | Discuz! 代碼 可用
使用個人簽名
接收新回覆信件通知
推薦放檔網絡空間

檔案(Torent, zip等)
  1. freedl
  2. multiupload
  3. btghost
  4. 便當狗
  5. mediafire
  6. pillowangel
圖片(JPG, GIF等)
  1. hotimg
  2. tinypic
  3. mousems2
  4. imageshack
  5. imm.io
>>>歡迎推薦好用空間


最新10篇文章回顧
x13

 發表於 2013-3-10 05:18 AM


引用:
innova寫到:
那 sudo su -
跟 sudo -i

有什麼不同?


結果是一樣的但是過程不一樣XD
這問題很像i++跟++i
假設user x13是sudoer或wheel群組 可以執行sudo

su -i
這個密碼是root的密碼

sudo su -i
這個密碼是sudo要求的,所以鍵入的是x13的密碼,sudo代表的是root權限去執行一件事,而root執行su是不用密碼的
這是真正切換成root身分

sudo -i
這個密碼是x13的密碼
sudo -i的意義是「模擬」root登入的執行環境,並不是真正切換身分,所以一舉一動都被sudo log起來

大概是這樣不要再考我了XD


innova

 發表於 2013-3-9 03:53 PM

那 sudo su -
跟 sudo -i

有什麼不同?


x13

 發表於 2013-3-9 11:13 AM

su   是 shell
su - 是 login shell

sudo su 還是shell
sudo -i 是 login shell

login shell 跟 shell 的差別 以bash為例 簡單說大概像底下這樣

login shell:
登入時
如果有 /etc/profile 就source它
如果有 ~/.bash_profile 就source它
    不然如果有~/.bash_login 就source它
    再不然如果有 ~/.profile 就source它

登出時
如果有 .bash_logout 就source它

shell:
如果有 ~/.bashrc 就source它


所以哪些東西要放.bash_profile哪些東西要放.bashrc是有學問的




還有用sudo vi/vim 是個很糟的習慣
應該用sudoedit

猜猜原因是什麼?

[x13 在  2013-3-9 12:47 PM 作了最後編輯]


innova

 發表於 2012-12-19 03:24 PM

啊~
這...
縮針的
這還真的不清楚哩...
(看起來似乎是一樣的東西?)

不過 這輩子沒用過 sudo -i
因為... su - 明顯少打很多字!  XD


pcca

 發表於 2012-12-3 10:33 AM

但是,若你不知道 root password (root不想告訴你密碼)
你用 su 當然不可能變成 root (因為密碼不正確)
但是 你用 `sudo su` 只需要輸入自己密碼 即可變成 root

那 sudo su 和 sudo -i 有何


innova

 發表於 2012-12-1 11:32 PM

你用一般user login (遠端連線 也只准許用非root login)
然後
你知道 另一個 user password
你可以 用`su user` 變成那個人,只需要輸入他的密碼即可
同樣的
你知道 root 密碼
你 su 變成 root
只需輸入正確 root password即可

但是,若你不知道 root password (root不想告訴你密碼)
你用 su 當然不可能變成 root (因為密碼不正確)
但是 你用 `sudo su` 只需要輸入自己密碼 即可變成 root

這是 純`su` 跟 `sudo su`的不同
---

su 跟 su -
你現在 不是 root
你有自己的工作環境(env)
你想繼續用現有一般user環境 去執行某些需要 root權限工作的事情
請直接用 su

你想用純root權限去做事情
請用 `su -`

最簡單的解釋 就是 PATH設定
一般 user自己安裝了某工具在自己目錄下,並已在 $PATH環境變數中添加該工具執行路徑與環境
但是有些工作需要較高權限,請直接用 `su`
若是為了避免一般user誤入歧途,預設PATH中並未參考到 /sbin/之類的路徑
root執行環境必定會參考該路徑
為了避免執行命令時的問題,請使用 `su -`
否則,請使用完整路徑 /sbin/reboot


pcca

 發表於 2012-11-8 09:17 AM

照 Wikipedia 的說法:
sudo is a program for Unix-like computer operating systems that allows users to run programs with the security privileges of another user (normally the superuser, or root).

所以 sudo 應該是指讓使用者用自己的身份可以去執行一些需要安全權限的指令。
不過我比較在意的是 su -, sudo -i, sudo -s, sudo su - 這幾個指令在實際使用上究竟有什麼差別, 例如 shell 和使用者的環境轉換之間
的差異。

* sudo可以設定成不用輸入自己密碼就可以直接執行指令的。


Ralse

 發表於 2012-11-7 11:45 PM


引用:
這個嘛寫到:
鳥哥的網站寫的

以『 su - 』直接將身份變成 root 即可,但是這個指令卻需要 root 的密碼,也就是說,如果你要以 su 變成 root 的話,你的一般使用者就必須要有 root 的密碼才行;

以『 sudo 指令 』執行 root 的指令串,由於 sudo 需要事先設定妥當,且 sudo 需要輸入使用者自己的密碼, 因此多人共管同一部主機時, sudo 要比 su 來的好喔!至少 root 密碼不會流出去!


sudo需要事先編輯一個allow list (或稱為white list),只有在該list內的使用者可以使用sudo這個指令
且sudo指令可以取代su成root,使用時要輸入目前登入帳號的密碼,且執行的命令會被紀錄下來
一般來說只有進行系統設定或安裝軟體時才會遇到root權限,但是為了安全考量,最好養成使用sudo的習慣
免得不小心就把系統搞掛了


這個嘛

 發表於 2012-11-7 08:35 PM

鳥哥的網站寫的

以『 su - 』直接將身份變成 root 即可,但是這個指令卻需要 root 的密碼,也就是說,如果你要以 su 變成 root 的話,你的一般使用者就必須要有 root 的密碼才行;

以『 sudo 指令 』執行 root 的指令串,由於 sudo 需要事先設定妥當,且 sudo 需要輸入使用者自己的密碼, 因此多人共管同一部主機時, sudo 要比 su 來的好喔!至少 root 密碼不會流出去!


pcca

 發表於 2012-11-7 08:51 AM

Linux從一般使用者轉換成root的方法有很多, 說實在的我也有點混亂, 有沒有人可以解說一下?
1. su -
2. sudo -i
3. sudo -s
4. sudo su -





所在時區為 GMT+8, 現在時間是 2024-3-28 11:36 PM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.019045 second(s), 7 queries , Qzip disabled