題 是否可以在Linux上為用戶名設置別名?


我不確定它是否有實際的應用程序(除了我很懶的事實。你知道“christopher”有11個字符,我想輸入1),但是可以在Linux上為別名設置別名? (所以我可以,例如, ssh c@my.domain.top 而不是 ssh christopher@my.domain.top。)

我目前使用Ubuntu作為我的主要機器,但如果有可能在任何發行版中,我想知道。


21
2017-12-13 18:23


起源


你只對更短的時間感興趣嗎? ssh 命令,還是你想要更普遍? - Daniel Beck♦


答案:


創建一個名為的文件 ~/.ssh/config 把它放在那裡:

Host h
User christopher
HostName my.domain.top

現在你只需輸入 ssh h 它做同樣的事情!

您還可以使用通配符:

Host *
User christopher

30
2017-12-13 18:39



如果你確實用它來定義它 Host * 它應該在配置文件的末尾完成,因此其他更具體的設置可以優先。 - Zoredache


你可以創建第二個用戶, c,使用相同的UID。從 這裡

UID是操作系統用於識別用戶的實際信息;提供用戶名僅僅是為了方便人類。如果為兩個用戶分配了相同的UID,則UNIX將它們視為同一用戶,即使它們具有不同的用戶名和密碼。具有相同UID的兩個用戶可以自由地讀取和刪除彼此的文件,並且可以殺死彼此的程序。為兩個用戶提供相同的UID幾乎總是一個壞主意;我們將在下一節討論一些例外情況。

第4.1.2章解釋了它何時有用。 這個 雖然不是建議的用例之一!


15
2017-12-13 18:27





對於ssh特定情況:如果兩台計算機上的用戶名相同,則可以完全省略用戶名。


1
2017-12-14 21:31