真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

關(guān)于linux中tty命令的信息

tty是什么意思?

在Linux中,TTY也許是跟終端有關(guān)系的最為混亂的術(shù)語。

銅川網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司2013年開創(chuàng)至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

TTY是TeleTYpe的一個老縮寫。Teletypes,或者teletypewriters,原來指的是電傳打字機,是通過串行線用打印機鍵盤通過閱讀和發(fā)送信息的東西,和古老的電報機區(qū)別并不是很大。

之后,當計算機只能以批處理方式運行時(當時穿孔卡片閱讀器是唯一一種使程序載入運行的方式),電傳打字機成為唯一能夠被使用的“實時”輸入/輸出設(shè)備。

最終,電傳打字機被鍵盤和顯示器終端所取代,但在終端或TTY接插的地方,操作系統(tǒng)仍然需要一個程序來監(jiān)視串行端口。一個getty“Get TTY”的處理過程是:一個程序監(jiān)視物理的TTY/終端接口。

tty相關(guān)延伸:

對一個虛擬網(wǎng)絡(luò)控制臺(VNC)來說,一個偽裝的TTY(Pseudo-TTY,即假冒的TTY,也叫做“PTY”)是等價的終端。當你運行一個xterm(終端仿真程序)或GNOME終端程序時,PTY對虛擬的用戶或者如xterm一樣的偽終端來說,就像是一個TTY在運行。

“Pseudo”的意思是“duplicating in a fake way”(用偽造的方法復(fù)制),它相比“virtual”或“emulated”更能真實的說明問題。而在的計算中,它卻處于被放棄的階段。

tty也是一個Unix命令,用來給出當前終端設(shè)備的名稱。

終端是一種字符型設(shè)備,它有多種類型,通常使用tty來簡稱各種類型的終端設(shè)備。

tty的pid變化怎么辦

你好,每次啟動都會分配一個PID,本次開機到結(jié)束,哪怕是同一個程序的PID都是不會重復(fù)的,這樣可以便以管理。

Linuxtty命令用于顯示終端機連接標準輸入設(shè)備的文件名稱。

在Linux操作系統(tǒng)中,所有外圍設(shè)備都有其名稱與代號,這些名稱代號以特殊文件的類型存放于/dev目錄下。你可以執(zhí)行tty(teletypewriter)指令查詢目前使用的終端機的文件名稱。

語法:tty[-s][--help][--version]。

測試中最基本的linux命令,學(xué)會離大佬就不遠了

學(xué)習軟件測試,最基本的linux命令必須掌握,現(xiàn)為大家整理如下:

一:系統(tǒng)管理相關(guān)命令

ls:可以看到整個目錄

1.su:在不退出登陸的情況下,切換到另一個用戶的身份

如:su root

切換到root這個用戶,將提示輸入密碼,輸完密碼后即可登陸

# 超級用戶提示符

$ 普通用戶提示符

whoami:確認自己身份

history:查看運行命令的 歷史

ifconfig:顯示或設(shè)置網(wǎng)絡(luò)設(shè)備的命令,我們可以用這個命令查看自己虛擬機的IP地址

ping:ping是Windows.Unix,Linux系統(tǒng)下的一個命令.ping命令也屬于一個通信協(xié)議,是TCP/I協(xié)議的一部分。利用“ping"命令可以檢查網(wǎng)絡(luò)是否聯(lián)通

停下來是:Ctrl+C(4)

kill:殺死進程(kill-9 進程號 強制殺死進程)

目錄操作命令

linux的文件系統(tǒng)是采用層級式的樹狀目錄結(jié)構(gòu),在此結(jié)構(gòu)中的最上層是根目錄”/“,下層是各種各樣的子目錄和文件。

/:unix 文件系統(tǒng)的上層根目錄

root:存放root用戶的相關(guān)文件

home:存放普通用戶的相關(guān)文件

bin:存放常用命令的目錄,如vi,su,普通用戶就可以提取的命令

sbin:要具有”一定權(quán)限才可以使用命令“

etc:存放配置的相關(guān)文件

vir:存放經(jīng)常變化的文件。如:網(wǎng)絡(luò)連接的sock文件

boot:啟動目錄,存放引導(dǎo)系統(tǒng)啟動的相關(guān)文件

usr:安裝一個軟件的默認目錄,相當于Windows下的program files

dev:設(shè)備文件保存目錄

lb :系統(tǒng)庫保存文件

pwd命令:顯示當前路徑

cd命令:切換目錄

用法:cd目錄路徑

cd./切換到上級目錄

cd/切換到根目錄

cd~(或只有cd) 切換到用戶主目錄(home底下以用戶名命名的文件夾)

/root目錄

cd /opt ---cd bin 與cd /opt---cd /bin的區(qū)別

mkdir創(chuàng)建目錄

mkdir 目錄名

rmdir刪除空目錄

用法:rmdir 目錄名

也可用:rm-rf 目錄名

touch a.txt創(chuàng)建一個a.txt文件

二:文件操作命令

在Linux系統(tǒng)中,幾乎所有內(nèi)容包括文檔,命令,設(shè)備和目錄等都組織成文件的形式,用文件來管理,常用文件命令有:

|| 查看文件目錄,以及它們對應(yīng)的屬性信息

cp 復(fù)制命令

用法:cp[選項] 文件名或目錄 目標地址

-R 拷貝目錄及目錄下所有目錄和文件

cp a.txt b.txt 將a文件復(fù)制,且另命名為b文件(目錄名)

mv 移動命令

用法:mv文件名或目錄 目標位置

mv a.txt../ 將a文件移動到上級目錄(將一個文件移動到另一個目錄沒有重命名)

mv a.txt ../b.txt 將a文件移動到上一級并改名為b文件(將一個文件移動到另一個目錄并重命名)

移動目錄的時候,如果出現(xiàn)覆蓋的情況,且被覆蓋的目錄非空,需要加一個'-b'的參數(shù)才能移動成功。被覆蓋的目錄此時會生產(chǎn)一個備份。

rm 刪除文件或目錄(i:操作時進行詢問)

-f 強制刪除

-r 刪除目錄

常用:rm -f文件或目錄

find命令 查找文件

用法:find[路徑][選項]

常用選項有:

find . -name a.txt 在當前目錄查找文件a.txt

find / -name a.txt 從當前目錄查找a.txt文件

grep命令

功能:在指定文件中查找字符(串)并打印該行;過濾,經(jīng)常跟管道符號一起出現(xiàn)

用法:grep 字符串 文件名

grep xyz file 在file文件中尋找band字符串所在的那一行

文件編輯命令

vi:是linux下常用的文本編輯器

調(diào)用方法:vi a.txt(如果a.txt不存在,則創(chuàng)建,保存退出則創(chuàng)建成功)

按鍵盤i進入編輯狀態(tài)(注意:都是英文輸入法下進行輸入)

退出編輯按ESC鍵,退出方法

不保存退出: :q!

保存退出: :wq

輸入/,進入搜索,輸入你需要搜索的文字,按Enter

按鍵盤G,可以直接定位到最末行

按鍵盤g,可以直接定位到首

cat命令:顯示文本文件內(nèi)容

用法: cat文件名 cat 文件名字

head:查看前幾行 用法:head -n 5 文件名

tail:從指定點開始將文件寫到標準輸出,使用tail命令的-f選項可以方便的查閱正在改變的日志文件

tail -n 5文件名 查看后幾行

tail -f error.log 不斷刷新,看到最新內(nèi)容

系統(tǒng)資源查詢命令

ps 查看進程(動態(tài))

-ef 顯示所有運行進程,并顯示啟動進程的命令

Uid:用戶ID,PID;進程id PPID:父進程,C:進程cpu占用率,Stime:進程從啟動到現(xiàn)在所運行的時間

TTY:終端號。CMD:命令名稱和參數(shù)

netstat 查看網(wǎng)絡(luò)狀況

netstat -apn 查看所有端口

管道命令

管道使用”|“符號,并且在命令之間建立管道,將前面命令的輸出作為后面命令的輸入

如:ls|greap abc:管卡道前面的命令顯示當前目錄下的文件,后面從列出的文件名中尋找含有abc字符串的文件或者目錄

正常情況下,殺死服務(wù)進程(比如殺死tomcat進程)

通過進程名找到進程,在殺死進程

通過命令查找tomcat進程:ps -ef|grep tomcat(ps -ef是查找所有運行的進程,通過管道符找到所有進程中包含了”tomcat"字符串的進程,即為tomcat進程),假如5541

殺掉此進程,kill -9進程id(kill -9 5541)

通過端口來找到進程,再殺死進程

通過命令查找到占用此端口的進程編號:netstat -apn|grep 8080 根據(jù)8080查進程,假如 5541

殺掉進程:kill -9 pid(kill -9 5541)

三:權(quán)限賦予命令:chmod

linux系統(tǒng)是一種典型的多用戶系統(tǒng),不同的用戶處于不同的地位,擁有不同的權(quán)限。為了保護系統(tǒng)的安全性,linux系統(tǒng)對不同的用戶訪問同一文件(包括目錄文件)的權(quán)限做了不同的規(guī)定。在linux中可以使用||或ls -|命令來顯示一個文件的屬性以及文件所屬的用戶和組。

chmod語法:chmod[-R] xyz文件或目錄

讀(r): 4 寫(w): 2 執(zhí)行(x): 1

chmod 532 test.txt

壓縮,解壓命令

例如:將test文件壓縮成test.tar.gz

安裝軟件命令

yum 自動下載安裝(前提:能訪問外網(wǎng))

yum[操作][package]

例如:yum install mysql-server(安裝mysql服務(wù)器)

rpm 安裝

rpm -ivh 軟件包名(ivh 安裝顯示安裝進度)

linux系統(tǒng)的tty,pts等終端概念

ttyS0~ ttyS3 (串行端口終端)指的是電腦的各個物理接口(這些都是串口,不是并口),外部的終端通過這些物理接口與電腦連接 ,從而實現(xiàn)和電腦進行交互。

?例如:dmesg |grep tty可以查看開啟的接口(串口)

? ? ?目前連接遠程服務(wù)器或者直接在服務(wù)器上面操作等都是通過創(chuàng)建虛擬終端的形式。比如pts/1 和tty1虛擬終端,其中tty表示直接登錄機器生成的而pts表示遠程連接生成的。其中遠程連接是通過sshd服務(wù)進行創(chuàng)建session會話和bash進程(所以可以看到有sshd進程,同時虛擬終端可以創(chuàng)建多個,這是依賴ptmx功能,sshd通過與ptmx通訊,ptmx在和相對應(yīng)的pts通訊從而達到多個虛擬終端的效果)。

? ? 例如:在centos系統(tǒng)中的圖像界面中打開的terminal就是一個pts但是整個圖形界面是一個tty,centos切換到命令行界面后 輸入tty命令時輸出就是tty1或ttyn了,這時候的命令行界面與圖形界面的運行級別是一樣的,通過命令行創(chuàng)建的所有進程都是屬于tty1終端的。

? ? 注意: tty就是ttyS的虛擬版本,只是不需要通過外部線路進行連接了。遠程連接服務(wù)器需要sshd服務(wù),sshd和tty沒有聯(lián)系,遠程連接是因為本地有終端模擬器,本機連接就需要內(nèi)核直接模擬一個模擬器了,所有遠程是pts,本機是tty 。

?從上面的流程中可以看出來對用戶空間的程序來說它們沒有區(qū)別,都是一樣的;從內(nèi)核角度來看pts的另一端連接的是ptmx,而tty的另一端連接的是內(nèi)核的終端模擬器,ptmx和終端模擬器都只是負責維護會話和轉(zhuǎn)發(fā)數(shù)據(jù)包;再看看ptmx和內(nèi)核終端模擬器的另一端,ptmx的另一端連接的是用戶空間的應(yīng)用程序,如sshd、tmux等,而內(nèi)核終端模擬器的另一端連接的是具體的硬件,如鍵盤和顯示器。

SSH遠程訪問---重點

這里的Terminal可能是任何地方的程序,比如windows上的putty,所以不討論客戶端的Terminal程序是怎么和鍵盤、顯示器交互的。由于Terminal要和ssh服務(wù)器打交道,所以肯定要實現(xiàn)ssh的客戶端功能。這里將建立連接和收發(fā)數(shù)據(jù)分兩條線路解釋,為了描述簡潔,這里以sshd代替ssh服務(wù)器程序:

建立連接:

1.Terminal請求和sshd建立連接。

2.如果驗證通過,sshd將創(chuàng)建一個新的session。

3.調(diào)用API(posix_openpt())請求ptmx創(chuàng)建一個pts,創(chuàng)建成功后,sshd將得到和ptmx關(guān)聯(lián)的fd,并將該fd和session關(guān)聯(lián)起來。

4.同時sshd創(chuàng)建shell進程,將新創(chuàng)建的pts和shell綁定。

收發(fā)消息:

1.Terminal收到鍵盤的輸入,Terminal通過ssh協(xié)議將數(shù)據(jù)發(fā)往sshd。

2.sshd收到客戶端的數(shù)據(jù)后,根據(jù)它自己管理的session,找到該客戶端對應(yīng)的關(guān)聯(lián)到ptmx上的fd。

3.往找到的fd上寫入客戶端發(fā)過來的數(shù)據(jù)。

4.ptmx收到數(shù)據(jù)后,根據(jù)fd找到對應(yīng)的pts(該對應(yīng)關(guān)系由ptmx自動維護),將數(shù)據(jù)包轉(zhuǎn)發(fā)給對應(yīng)的pts。

5.pts收到數(shù)據(jù)包后,檢查綁定到自己上面的當前前端進程組,將數(shù)據(jù)包發(fā)給該進程組的leader。

6.由于pts上只有shell,所以shell的read函數(shù)就收到了該數(shù)據(jù)包。

7.shell對收到的數(shù)據(jù)包進行處理,然后輸出處理結(jié)果(也可能沒有輸出)。

8.shell通過write函數(shù)將結(jié)果寫入pts。

9.pts將結(jié)果轉(zhuǎn)發(fā)給ptmx。

10.ptmx根據(jù)pts找到對應(yīng)的fd,往該fd寫入結(jié)果。

11.sshd收到該fd的結(jié)果后,找到對應(yīng)的session,然后將結(jié)果發(fā)給對應(yīng)的客戶端。

SSH + Screen/Tmux

? 常用Linux的同學(xué)應(yīng)該對screen和tmux不陌生,通過它們啟動的進程,就算網(wǎng)絡(luò)斷開了,也不會受到影響繼續(xù)執(zhí)行,下次連上去時還能看到進程的所有輸出,還能繼續(xù)接著干活。? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?這種情況要稍微復(fù)雜一點,不過原理都是一樣的,前半部分和普通ssh的方式是一樣的,只是pts/0關(guān)聯(lián)的前端進程不是shell了,而是變成了tmux客戶端,所以ssh客戶端發(fā)過來的數(shù)據(jù)包都會被tmux客戶端收到,然后由tmux客戶端轉(zhuǎn)發(fā)給tmux服務(wù)器,而tmux服務(wù)器干的活和ssh的類似,也是維護一堆的session,為每個session創(chuàng)建一個pts,然后將tmux客戶端發(fā)過來的數(shù)據(jù)轉(zhuǎn)發(fā)給相應(yīng)的pts。由于tmux服務(wù)器只和tmux客戶端打交道,和sshd沒有關(guān)系,當終端和sshd的連接斷開時,雖然pts/0會被關(guān)閉,和它相關(guān)的shell和tmux客戶端也將被kill掉,但不會影響tmux服務(wù)器,當下次再用tmux客戶端連上tmux服務(wù)器時,看到的還是上次的內(nèi)容。

linux的tty下可以做哪些很酷的事

Linux tty命令用于顯示終端機連接標準輸入設(shè)備的文件名稱。

在Linux操作系統(tǒng)中,所有外圍設(shè)備都有其名稱與代號,這些名稱代號以特殊文件的類型存放于/dev目錄下。你可以執(zhí)行tty(teletypewriter)指令查詢目前使用的終端機的文件名稱。

語法

tty [-s][--help][--version]

參數(shù)說明:

-s或--silent或--quiet 不顯示任何信息,只回傳狀態(tài)代碼。

--help 在線幫助。

--version 顯示版本信息。

實例

顯示當前終端

# tty

/dev/pts/4


網(wǎng)頁名稱:關(guān)于linux中tty命令的信息
URL地址:http://weahome.cn/article/hihjes.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部