screen的功能大體有三個:
會話恢復: 只滲吵悶要Screen本身沒有終止,在其內部運行的會話都可以恢復。
多窗口:碰衫在Screen環境下, 所有的會話都獨立的運行,並擁有各自的編號、輸入、輸出和窗口緩存。
會話共享:Screen可以讓一個或多個用戶從不同終叢彎端多次登錄一個會話,並共享會話的所有特性。
安裝screen:
# CentOS
yum install screen
# Debian/Ubuntu
apt install screen
Attached :表示當前screen正在作為主終端使用,為活躍狀態。
Detached :表示當前screen正在後台使用,為非激發狀態。
# 查看已存在終端
screen -ls
# 創建一個叫Hello的虛擬終端
screen -S Hello
# 進入虛擬終端32307
screen -r 32307
There is no screen to be resumed matching錯誤解決辦法
1.在使用screen -r ******(id)重新連接程序界面時出現以下問題:
後來發現是因為突然斷網,雖然重新連接,但之前的screen還是處於打開狀態(1個screen無法同時打開2次),所以無法重新打開screen,解決方法如下:
2.首先使用screen -d *****(id),先退出,然後再使用 screen -r *****(id)重新連接
⑵ Linux里的終端用mkdir創建目錄提示許可權不夠怎麼解決求大神啊
深度linux桌面版系統雖然是桌州姿面版,在它文件管理器里是在usr、var等文件夾下是不能直接創建文件夾的,只能使用深度終端首跡罩利用mkdir來創建。
第一步、首先需要啟動深度終端。
⑶ Linux 終端下如何創建用戶和設置許可權
創建用戶:useraddx0dx0a1.作用x0dx0auseradd命令用來建立用戶帳號和創建用戶的起始目錄,使用許可權是終極用戶。x0dx0a2.格式x0dx0auseradd[-dhome][-sshell][-ccomment][-m[-ktemplate]][-finactive][-eexpire][-ppasswd][-r]namex0dx0a3.主要參數x0dx0a-c:加上備注文字,備注文字保存在passwd的備注欄中。x0dx0a-d:指定用戶登入時的啟始目錄。x0dx0a-D:變更預設值。x0dx0a-e:指定賬號的有效期限,預設表示永久有效。x0dx0a-f:指定在密碼過期後多少天即關閉該賬號。x0dx0a-g:指定用戶所屬的群組。x0dx0a-G:指定用戶所屬的附加群組。x0dx0a-m:自動建立用戶的登入目錄。x0dx0a-M:不要自動建立用戶的登入目錄。x0dx0a-n:取消建立以用戶名稱為名的群組。x0dx0a-r:建立系統賬號。x0dx0a-s:指定用戶登入後所使用的shell。x0dx0a-u:指定用戶ID號。x0dx0a4.說明x0dx0auseradd可用來建立用戶賬號,他和adser命令是相同的。賬號建好之後,再用passwd設定賬號的密碼。使用useradd命令所建立的賬號,實際上是保存在/etc/passwd文本文件中。x0dx0a5.應用實例x0dx0a建立一個新用戶賬戶,並設置ID:x0dx0a#useraddcaojh-u544x0dx0a需要說明的是,設定ID值時盡量要大於500,以免沖突。因為Linux安裝後會建立一些特別用戶,一般0到499之間的值留給bin、mail這樣的系統賬號。設置許可權:假設下面是readme.txt文件的初始許可權設置:-rw-rw-r--1windawinda398月1112:04readme.txtx0dx0a如果是這個文件的所有者或者登錄為根用戶身份,則可以改變所有者、組群和其他人的許可權。初始時,從上面的分析可以看出,這個readme.txt文件的所有者和組群可以讀取和寫入文件(rw-),組群之外的任何人只能讀取文件(r--)。x0dx0a文件許可權是一種安全措施。無論何時允許其他人讀取、寫入或執行文件,都在增加文件被篡改或刪除的危險。作為一種基本原則,應該只給那些真正需要這些文件的人以讀寫許可權。x0dx0a在下面的例子中,想給每個人以寫入readme.txt文件的許可權,因此他們可以讀取文件,在其中加註,並保存文件。這意味著必須改變文件許可權中的「其他人」部分。x0dx0a此時需要在shell或終端提示下輸入:chmodo+wreadme.txtx0dx0ao+w命令參數告訴系統想給其他人寫入文件readme.txt的許可權。要查看結果,再次列出文件的細節。此時,這個文件的用戶訪問許可權就如下所示了(在第3列中多了一個w):x0dx0a-rw-rw-rw-1windawinda393月1112:04readme.txtx0dx0a現在,每個人都可以讀取和寫入這個文件了。x0dx0a要從readme.txt中刪除組群和其他人的讀寫許可權,使用chmod命令來取消讀取和寫入這兩個的許可權。x0dx0a命令如下:chmodgo-rwreadme.txtx0dx0a通過輸入go-rw參數告訴系統刪除文件readme.txt中組群和其他人的讀取和寫入許可權。再次通過ls-1命令列出的結果如下:x0dx0a-rw-------1windawinda393月1112:04readme.txtx0dx0a綜上所述,當想用chmod命令來改變許可權時,文件的用戶身份主要有如下幾類:u:擁有文件的用戶(所有者);g:所有者所在的組群;o:其他人(不是所有者或所有者的組群);a:每個人或全部(u、g、和o)。x0dx0a用戶所具有的文件訪問許可權類型如下:r:讀取權;w:寫入權;x:執行權。x0dx0a文件許可權配置行為有如下幾類:+:添加許可權;-:刪除許可權;=:使它成為惟一許可權。x0dx0a從文件readme.txt中刪除所有許可權(包括每個人的許可權)的命令如下:chmoda-rwxreadme.txt
⑷ linux新建終端的時候怎麼進入[root@localhost]#
1、使用命令 vim /etc/hostname修改hostname文件例如將bogon修改為localhost。
⑸ Linux下創建終端命令別名操作有哪些
alias 命令
⑹ linux下建立打開終端的快捷方式方法
可通過設置快捷鍵和通過腳本實現,具體如下:
一、設置快捷鍵
首選項 --> 屏幕快捷鍵,然後添加一個命令,並添加一個你的快捷鍵,如果你用的是gnome桌面建議用
gnome-terminal命令添加快捷鍵,也可以用xterm,還可以用shell腳本,比如我用的是調用下面我貼的一個腳本
命令(腳本見文代碼):
/home/zhangwei/.gnome2/nautilus-scripts/打開終端
二、設置右鍵快捷鍵(打開時為當前目錄)
方法一:
執行命令:
sudoapt-getinstallnautilus-open-terminal
此方法是安裝一個小軟體,但是我安裝後和conky沖突了,所以沒有用。
方法二:
用腳本,把下面的腳本保存成任意名(我的是:打開終端),然後放在主目錄的.gnome2/nautilus-scripts目錄下,當然你可以放一些其他常見的腳本,都可以在右鍵找到。比如發送到郵件/修改文件許可權等等實用的功能。
腳本:
#!/bin/bash
#
# This script opens a gnome-terminal in the directory you select.
#
# Distributed under the terms of GNU GPL version 2 or later
#
# Install in ~/.gnome2/nautilus-scripts or ~/Nautilus/scripts
# You need to be running Nautilus 1.0.3+ to use scripts.
# When a directory is selected, go there. Otherwise go to current
# directory. If more than one directory is selected, show error.
if [ -n "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ]; then
set $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
if [ $# -eq 1 ]; then
destination="$1"
# Go to file's directory if it's a file
if [ ! -d "$destination" ]; then
destination="`dirname "$destination"`"
fi
else
zenity --error --title="Error - Open terminal here"
--text="You can only select one directory."
exit 1
fi
else
destination="`echo "$NAUTILUS_SCRIPT_CURRENT_URI" | sed 's/^file:////'`"
fi
# It's only possible to go to local directories
if [ -n "`echo "$destination" | grep '^[a-zA-Z0-9]+:'`" ]; then
zenity --error --title="Error - Open terminal here"
--text="Only local directories can be used."
exit 1
fi
cd "$destination"
exec x-terminal-emulator
⑺ linux系統的tty,pts等終端概念
ttyS0~ ttyS3 (串列埠終端)指的是電腦的各個物理介面(這些都是串口,不是並口),外部的終端通過這些物理介面與電腦連接 ,從渣乎而實現和電腦進行交互。
例如:dmesg |grep tty可以查看開啟的介面(串口)
目前連接遠程伺服器或者直接在伺服器上面操作等都是通過創建虛擬終端的形式。比如pts/1 和tty1虛擬終端,其中tty表示直接螞鋒登錄機器生成的而pts表示遠程連接生成的。其中遠程連接是通過sshd服務進行創建session會話和bash進程(所以可以看到有sshd進程,同時虛擬終端可以創建多個,這是依賴ptmx功能,sshd通過與ptmx通訊,ptmx在和相對應的pts通訊從而達到多個虛擬終端的效果)。
例如:在centos系統中的圖像界面中打開的terminal就是一個pts但是整個圖形界面是一個tty,centos切換到命令行界面後 輸入tty命令時輸出就是tty1或ttyn了,這時候的命令行界面與圖形界面的運行級別是一樣的,通過命令行創建的所有進程都是屬於tty1終端的。
注意: tty就是ttyS的虛擬版本,只是不需要通過外部線路進行連接了。遠程連接伺服器需要sshd服務,sshd和tty沒有聯系,遠程連接是因為本地有終端模擬器,本機連接就需要內核直接模擬一個模擬器了,所有遠程是pts,本機是tty 。
從上面的流程中可以看出來對用戶空間的程序來說它們沒有區別,都是一樣的;從內核角度來看pts的另一端連接的是ptmx,而tty的另一端連接的如物悉是內核的終端模擬器,ptmx和終端模擬器都只是負責維護會話和轉發數據包;再看看ptmx和內核終端模擬器的另一端,ptmx的另一端連接的是用戶空間的應用程序,如sshd、tmux等,而內核終端模擬器的另一端連接的是具體的硬體,如鍵盤和顯示器。
SSH遠程訪問---重點
這里的Terminal可能是任何地方的程序,比如windows上的putty,所以不討論客戶端的Terminal程序是怎麼和鍵盤、顯示器交互的。由於Terminal要和ssh伺服器打交道,所以肯定要實現ssh的客戶端功能。這里將建立連接和收發數據分兩條線路解釋,為了描述簡潔,這里以sshd代替ssh伺服器程序:
建立連接:
1.Terminal請求和sshd建立連接。
2.如果驗證通過,sshd將創建一個新的session。
3.調用API(posix_openpt())請求ptmx創建一個pts,創建成功後,sshd將得到和ptmx關聯的fd,並將該fd和session關聯起來。
4.同時sshd創建shell進程,將新創建的pts和shell綁定。
收發消息:
1.Terminal收到鍵盤的輸入,Terminal通過ssh協議將數據發往sshd。
2.sshd收到客戶端的數據後,根據它自己管理的session,找到該客戶端對應的關聯到ptmx上的fd。
3.往找到的fd上寫入客戶端發過來的數據。
4.ptmx收到數據後,根據fd找到對應的pts(該對應關系由ptmx自動維護),將數據包轉發給對應的pts。
5.pts收到數據包後,檢查綁定到自己上面的當前前端進程組,將數據包發給該進程組的leader。
6.由於pts上只有shell,所以shell的read函數就收到了該數據包。
7.shell對收到的數據包進行處理,然後輸出處理結果(也可能沒有輸出)。
8.shell通過write函數將結果寫入pts。
9.pts將結果轉發給ptmx。
10.ptmx根據pts找到對應的fd,往該fd寫入結果。
11.sshd收到該fd的結果後,找到對應的session,然後將結果發給對應的客戶端。
SSH + Screen/Tmux
常用Linux的同學應該對screen和tmux不陌生,通過它們啟動的進程,就算網路斷開了,也不會受到影響繼續執行,下次連上去時還能看到進程的所有輸出,還能繼續接著幹活。 這種情況要稍微復雜一點,不過原理都是一樣的,前半部分和普通ssh的方式是一樣的,只是pts/0關聯的前端進程不是shell了,而是變成了tmux客戶端,所以ssh客戶端發過來的數據包都會被tmux客戶端收到,然後由tmux客戶端轉發給tmux伺服器,而tmux伺服器乾的活和ssh的類似,也是維護一堆的session,為每個session創建一個pts,然後將tmux客戶端發過來的數據轉發給相應的pts。由於tmux伺服器只和tmux客戶端打交道,和sshd沒有關系,當終端和sshd的連接斷開時,雖然pts/0會被關閉,和它相關的shell和tmux客戶端也將被kill掉,但不會影響tmux伺服器,當下次再用tmux客戶端連上tmux伺服器時,看到的還是上次的內容。
⑻ 2 Linux終端命令
職場中,大部分都是通過 SSH客戶端 遠程操作,實現磁碟讀取,文件讀取,目錄操作,進程管理等等
打開終端3種方式,收藏夾黑色屏幕圖標點擊,右鍵打開終端,Ctrl+Alt+t組合鍵
command [-options] [parameters]
command即終端命令,options為選項一般前面有橫杠,後面是參數,選項和參數有中括弧表示可選項
man command (man表示手冊縮寫,查看命令幫助文檔)出現文檔,按回車下滾一行,按空格(或f)下翻一頁,按b上翻一頁,輸入橫杠加上對應的option可實現對應部分高亮
command --help也可以實現幫助文檔,頁面和上面不太一樣,部分還出現了中文
pwd 命令 顯示當前路徑
tree [path] 命令(默認沒有,需要安裝,sudo apt install tree)可以將你當前(或指定)路徑下的文件以樹狀遍歷(所有文件,遞歸)顯示出來
ls 命令 以列表顯示當前目錄文件,(不再深層挖掘)ls顯示出來白色是文件,藍色是文件夾,綠色是可執行文件,紅色一般是壓縮包
ls -a 顯示所有的文件包括隱藏文件,顯示結果以. 點開頭的就是隱藏文件
ls -l 用較長方式顯示文件
前面10個字母(分成第一個和後9個,第一個橫杠表示一個文件,d表示一個目錄,l表示是個鏈接(類似快捷方式),後九個,rwx表示跟讀寫等操作有關,後面講),硬鏈接數,文件所屬用戶(第一個demo),文件所屬組(第二個demo),文件大小(B為單位),最後修改時間,文件
ls -h以人性化顯示文件(一般和-l一起),可看出加了-h後,文件顯示的單位方便閱讀
cd 可以跟相對路徑和絕對路徑,路徑大小寫敏感
當前路徑用「.」表示,上級路徑「..」
cd 什麼都不加或者cd ~可以直接回家目錄/home
cd /去根目錄
cd -返回上次的目錄
mkdir創建目錄
mkdir 目錄名 不可以一次創建多級目錄(文件夾不存在情況下如mkdir a/b/c,a,b都不存在情況下,創建不了)
如果我們就是想創建多級目錄呢,使用遞歸創建目錄,會把沒有的目錄創建出來
mkdir a/b/c -p
touch創建文件
touch +文件名(建議加後綴名),可以一次創建多個文件用空格隔開
touch a.txt
touch a.txt b.txt
gedit打開文件
gedit 文件相對路徑或絕對路徑,(如果未成功打開需要加上sudo gedit)
同上個命令可以同時打開多個,打開的編輯器編輯內容點擊保存完成文件編輯
打開文件後終端進入等待狀態
rm刪除文件和文件夾
文件刪除不能恢復
rm -i 文件 這種會出現是否提示,給自己個提醒機會(centos沒有-i就有提示)
rm -f 文件 強制刪除(不提示,和上個相反)
rm -r 目錄 刪除目錄(多級遞歸刪除)
cp拷貝文件和文件夾
cp a.txt b.txt 當前路徑下的a.txt拷貝一個b.txt到當前路徑,如果已經存在b.txt直接覆蓋掉
加上-i模式可以給與提示(不是同名文件不會出現)
-f 強制復制不提示
-v 顯示一行拷貝的過程
如果是復制文件夾要加上 -r 遞歸拷貝
-a 把文件或文件夾(是遞歸拷貝)的許可權也一起復制過去
mv移動文件文件夾,重命名
mv 原路徑 目標路徑
如果存在同名文件,默認會覆蓋,還是加-i提示,如果選擇n,不會移動成功
-f 強制移動不提示
-v 顯示移動過程
移動文件夾不用加-r(刪除和拷貝不一樣)
clear 清除終端顯示內容(類似DOS cls)快捷鍵,Ctrl+L
實際效果只是往下滾動,當前輸入為第一行,拖動滾動條還是能看見之前的內容= =
tab 自動補全(有時多個可能要再按下tab出現候選提示)
which 查看命令位置
游標↑↓ 查看翻查之前調用過的命令
Ctrl+C 終止程序運行
終端字體大小調整Ctrl Shift +(放大)
Ctrl - (縮小,注意無shift)
cal顯示日歷,當日高亮
cal -3顯示當前月及上下月的日歷(沒有-別的數字)
cal -y 顯示一年的日歷
cal -j 日歷顯示是當年第幾天
cal 年份4位數(獲得年份日歷)
date顯示日期
date 加雙引號字元串格式化顯示,注意對應大小寫
%F,%T同樣實現類似效果,分別格式化日期和時間
history 獲得所有的歷史指令
history 數字 顯示最近的數字條指令
如果我看到對應指令,然後根據指令編號,直接輸入
! 指令編號 即可執行對應指令,這些歷史指令都存在於家目錄隱藏文件 .bash_history 中
cat 直接在命令行顯示文件內容,和gedit不一樣
-n 查看文件同時顯示行號
-b 文件空行不編號,但是給空出位置,顯示非空行編號
-s 兩行以上的空行只顯示一行(可以和前面的組合 -sb )
同時打開多個文件效果
more
more 文件路徑
分屏查看,會顯示已經顯示部分的百分比,
按回車滾一行,
按空格 或 Ctrl+F或F向下翻一屏,
Ctrl+B或B回滾一屏
q退出
more +num 表示從第num行開始查看,文件默認第一行為1
-p 選項 清屏 置頂顯示內容
-s 連續2行以上的空行顯示一個空行
more 也可以加多個文件,顯示不同文件有專門的分割,這是與cat的區別
⑼ red hat linux9 新建終端
如果你是圖形界面登錄的,那你打開虛擬終端的時候會以你登錄的用戶來打開。$代表一空洞般用戶。如果你希望提示符是#,在圖形界面登錄的時候就直接用root登錄,那麼再打開虛擬終端的時候就會是#。
如純拿果是文字界面登錄的,用root登錄提示符會是#,一般用戶就是$。
可以用做虧搭su root命令來切換到root,如果你知道root密碼的話。