我們有時可能需要在遠程機器上運行一些命令。如果只是偶爾進行的操作,要實現(xiàn)這個目的,可以登錄到遠程系統(tǒng)上直接執(zhí)行命令。但是每次都這么做的話,就有點煩人了。既然如此,有沒有擺脫這種麻煩操作的更佳方案?
是的,你可以從你本地系統(tǒng)上執(zhí)行這些操作,而不用登錄到遠程系統(tǒng)上。這有什么好處嗎?毫無疑問。這會為你節(jié)省很多好時光。
這是怎么實現(xiàn)的?SSH 允許你無需登錄到遠程計算機就可以在它上面運行命令。
通用語法如下所示:
$ ssh [用戶名]@[遠程主機名或 IP] [命令或腳本]
1) 如何通過 SSH 在遠程 Linux 系統(tǒng)上運行命令
下面的例子允許用戶通過 ssh 在遠程 Linux 機器上運行 df 命令。
$ ssh daygeek@CentOS7.2daygeek.com df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 27G 4.4G 23G 17% / devtmpfs 903M 0 903M 0% /dev tmpfs 920M 0 920M 0% /dev/shm tmpfs 920M 9.3M 910M 2% /run tmpfs 920M 0 920M 0% /sys/fs/cgroup /dev/sda1 1014M 179M 836M 18% /boot tmpfs 184M 8.0K 184M 1% /run/user/42 tmpfs 184M 0 184M 0% /run/user/1000
2) 如何通過 SSH 在遠程 Linux 系統(tǒng)上運行多條命令
下面的例子允許用戶通過 ssh 在遠程 Linux 機器上一次運行多條命令。
同時在遠程 Linux 系統(tǒng)上運行 uptime 命令和 free 命令。
$ ssh daygeek@CentOS7.2daygeek.com "uptime && free -m" 23:05:10 up 10 min, 0 users, load average: 0.00, 0.03, 0.03 total used free shared buffers cached Mem: 1878 432 1445 1 100 134 -/+ buffers/cache: 197 1680 Swap: 3071 0 3071
3) 如何通過 SSH 在遠程 Linux 系統(tǒng)上運行帶 sudo 權限的命令
下面的例子允許用戶通過 ssh 在遠程 Linux 機器上運行帶有 sudo 權限 的 fdisk 命令。
普通用戶不允許執(zhí)行系統(tǒng)二進制(/usr/sbin/)目錄下提供的命令。用戶需要 root 權限來運行它。
所以你需要 root 權限,好在 Linux 系統(tǒng)上運行 fdisk 命令。which 命令返回給定命令的完整可執(zhí)行路徑。
$ which fdisk /usr/sbin/fdisk$ ssh -t daygeek@CentOS7.2daygeek.com "sudo fdisk -l" [sudo] password for daygeek: Disk /dev/sda: 32.2 GB, 32212254720 bytes, 62914560 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000bf685 Device Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 62914559 30407680 8e Linux LVM Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos-root: 29.0 GB, 28982640640 bytes, 56606720 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Connection to centos7.2daygeek.com closed.
新聞熱點
疑難解答
圖片精選