Ubuntu18.04 Linux 入門學習筆記

Ubuntu Linux 入門學習筆記

  • lsb_release -a 查看Ubuntu版本

在這裏插入圖片描述

  • uname -a 查看內核版本

在這裏插入圖片描述

  • sudo passwd root 創建root用戶

在這裏插入圖片描述

  • su 切換到root賬戶

輸入密碼後原本當前終端顯示$的位置顯示#在這裏插入圖片描述

  • su [用戶名] 切換到對應用戶

在這裏插入圖片描述

sehll

工作模式

交互式

  • 一條一條的解釋執行用戶命令

批處理式

  • 一次性執行腳本里的命令

常見的shell解釋器

  • bash:linux默認
  • sh
  • ash
  • csh
  • ksh

常用命令

  • cd
    — cd .
    — cd . ./
  • ls
    — ls -l //列表查看
    — ls -a //查看所有
    — ls -al //列表形式查看所有
  • pwd
    — pwd
  • touch
    — touch name.txt
  • mkdir
    — mkdir name
  • chmod
    — chmod name 777
    gedit
    —gedit filename
  • cp
    — cp sourcefilename newfilename
    //將當前目錄的sourcefile文件複製到當前目錄並改名成newfilename
    — cp sourcefilename ./xx
    //將當前目錄的sourcefile文件複製到./xx
    詳細內容可參考http://c.biancheng.net/view/746.html
  • mv
    — mv sourcefilename newfilename
    //將sourcefilename文件改名爲newfilename
    — mv sourcefilename ./xx
    //將sourcefilename文件移動到 ./xx目錄
    — mv ./xx/sourcefile ./aa/newfilename
    //將./xx目錄下的sourcefile移動到./aa目錄並改名爲newfilename
  • rm
  • cat
    — cat filename
  • more
    — more filename //分屏顯示
  • less
    — filename //瀏覽文件,類似more
    詳細內容可參考https://www.runoob.com/linux/linux-comm-less.html
  • head
    — head -n 行數 filename //查看文件頭n行
  • tail
    — tail -n 行數 filename //查看文件最後n行
  • ln
    – ln sourcefile linkfile
    給sourcefile創建一個硬鏈接(類似windows的快捷方式)並命名爲linkfile
    – ln -s sourcefile softlinkfile
    給sourcefile創建一個軟鏈接並命名爲softlinkfile
  • 軟鏈接相當於文件指針,指向源文件,修改軟鏈接文件內容源文件也會被改變
  • 硬連接相當於拷貝一整個文件但不佔用實際空間,修改硬鏈接文件內容源文件也會被改變
  • 硬連接只允許對存在的文件進行鏈接,軟鏈接可以對目錄或不存在的文件進行鏈接
    詳細內容可參考https://www.runoob.com/linux/linux-comm-ln.html
  • wc
    — wc file //統計文件的行數,單詞數,字符數
    在這裏插入圖片描述
    — wc -l file//統計文件行數
    在這裏插入圖片描述
    — wc -w file//統計文件單詞數
    在這裏插入圖片描述
    — wc -c file//統計文件字符數
    在這裏插入圖片描述
    — whereis 命令 //打印命令的源程序或手冊的位置
    在這裏插入圖片描述
    — whatis 命令 //打印命令簡單說明
    在這裏插入圖片描述
    — which 可執行程序 //打印可執行程序的路徑和它的別名
    在這裏插入圖片描述

解壓與壓縮命令

  • 不同格式的壓縮和解壓命令不一樣
  • tar
    — tar cvf tarfile sourcefile1 sourcefile2 …sourcefile3
    — //將sourcefile1 sourcefile2 …sourcefile3打包成tarfile
    ![在這裏插入圖片描述](https://img-blog.csdnimg.cn/20190929121234677.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM4MTM5NTMz,size_16,color_FFFFFF,t_70
    — tar xvf file.tar
    — 將file.tar解壓到當前目錄
    — tar xvf file.tar -C ./xx
    — 將file.tar解壓到./xx目錄
    在這裏插入圖片描述
  • gzip
    — gzip file
    //將file文件壓縮成file.gzip並刪除源文件
    在這裏插入圖片描述
    — gzip -d file.gz
    //將file.gz解壓並刪除壓縮文件
    在這裏插入圖片描述
    — gzip -r directory
    //將directory下每個文件壓縮成.gz格式並刪除源文件
    在這裏插入圖片描述
    — gzip -rd directory
    //將directory目錄下的每個.gz壓縮文件解壓並刪除壓縮文件
    在這裏插入圖片描述
  • .tar.gz
    -tar -zcvf file.tar.gz file1 file2…filen
    //將file1 file2…filen壓縮成file.tar.gz
    在這裏插入圖片描述
    -tar -zxvf file.tar.gz
    //將file.tar.gz 解壓
    在這裏插入圖片描述

系統命令

  • time
    //執行命令並計時
    1)實際時間(real time): 從command命令行開始執行到運行終止的消逝時間;
    2)用戶CPU時間(user CPU time): 命令執行完成花費的用戶CPU時間,即命令在用戶態中執行時間總和;
    3)系統CPU時間(system CPU time): 命令執行完成花費的系統CPU時間,即命令在覈心態中執行時間總和。

其中,用戶CPU時間和系統CPU時間之和爲CPU時間,即命令佔用CPU執行的時間總和。實際時間要大於CPU時間,因爲Linux是多任務操作系統,往往在執行一條命令時,系統還要處理其它任務。
另一個需要注意的問題是即使每次執行相同命令,但所花費的時間也是不一樣,其花費時間是與系統運行相關的。
在這裏插入圖片描述

  • date
    //查看當前的時間
    在這裏插入圖片描述
  • uname
    查看內核
    在這裏插入圖片描述
  • du
    //統計文件或目錄所佔磁盤空間
    在這裏插入圖片描述
  • dmesg
    用於顯示開機信息。
    kernel會將開機信息存儲在ring buffer中。若是開機時來不及查看信息,可利用dmesg來查看。開機信息亦保存在/var/log目錄中,名稱爲dmesg的文件裏。
    在這裏插入圖片描述
  • uptime
    //顯示時間,系統運行時間,用戶連接數,負載情況
    在這裏插入圖片描述
  • who
    //查看是哪一個用戶登入,登入的終端,登入時間
    在這裏插入圖片描述
  • w
    比who更詳細的信息
    在這裏插入圖片描述
  • whoami
    //查看當前登入用戶
    在這裏插入圖片描述
  • hostname
    //主機名
    在這裏插入圖片描述
  • cal
    //日曆
    在這裏插入圖片描述
  • bc
    //計算器
    在這裏插入圖片描述
  • top
    //查看CPU利用率
    在這裏插入圖片描述
  • free
    //查看內存使用情況
    在這裏插入圖片描述

網絡相關命令

  • ping
    //檢測本機網絡是否與ip地址通訊
    — ping www.baidu.com
    在這裏插入圖片描述
  • ifconfig
    //查看網絡配置
    在這裏插入圖片描述
  • ifconfig 網卡名 設置的IP地址 netmask 子網掩碼 up/down(打開/關閉)
    在這裏插入圖片描述
  • netstat
    //查看網絡端口情況
    在這裏插入圖片描述

查找命令

  • find
    — find filename
    查找並列出當前目錄和子目錄下的名字和filename相同的文件和目錄
    在這裏插入圖片描述
    — find -name filename
    — find filename
    //查找並列出當前目錄和子目錄下的名字和filename相同的文件和目錄
    在這裏插入圖片描述
    — find xxx -name filename
    // 查找並列出xxx目錄和子目錄下的名字和filename相同的文件和目錄
    在這裏插入圖片描述
    — find xxx -iname filename
    // 以不區分大小的形式查找並列出xxx目錄和子目錄下的名字和filename相同的文件和目錄
    在這裏插入圖片描述
    — find xxx -name *.c
    //查找xxx目錄和子目錄所有的.c後綴的文件
    在這裏插入圖片描述
    更詳細內容參考http://c.biancheng.net/view/779.html
  • grep
    grep “string” -r ./
    //在當前目錄下的所有文件中查找"string"字符串的行
    在這裏插入圖片描述
    — grep “string” -r -c xxx
    //查找xxx目錄下所有的文件中包含"string"字符串的文件,並顯示文件中包含該字符串的數量
    在這裏插入圖片描述
  • cscope -Rk(注意k爲小寫)
    — tab鍵在搜索結果和輸入項中切換
    — ctrl+d退出
    在這裏插入圖片描述
    — 查找文件中包含fun_的字符串
    在這裏插入圖片描述

管道

linux的信息默認打印到stdout終端
使用將信息輸入到管道中,然後在管道中進行查找
在這裏插入圖片描述
在這裏插入圖片描述

重定向

將輸出信息重定向到文件或設備或其他終端
在這裏插入圖片描述

  • — > : 輸出重定向到一個文件或設備
  • — >! :輸出重定向到一個文件或設備,強制覆蓋原來的文件
  • — >>:輸出重定向到一個文件或設備,追加原來的文件
  • — <:輸出重定向到一個程序

其他命令

  • 連續執行命令可以用分號隔開
    — cd …;ls
  • 一般用戶命令行顯示#
  • root用戶命令行顯示$
  • sudo 命令
    — 用root權限去執行該命令

shell腳本

編寫號shell腳本文件然後用bash解釋器來執行腳本文件

  • 一般腳本文件以.sh爲後綴

在這裏插入圖片描述

  • 設置爲默認使用bash解釋器來解釋腳本文件
    — 在腳本文件首行添加#! 解釋器路徑即可,一般默認#! /bin/bash
    — 修改腳本文件權限,然後執行即可

在這裏插入圖片描述

  • 變量
    — $ (命令)[$左右兩端不能有空格]
    — 變量= $ (命令)[=左右兩端不能有空格]
    — 引用變量 ->$變量

在這裏插入圖片描述

  • 註釋 #
    —在行首使用#表示註釋
    在這裏插入圖片描述
  • 循環
    — do和done之間的語句必須用tab鍵(或4空格)
    — 命令和賦值不能寫在同一行
    — 1 2 3 4 5可以寫成{1…5}
    在這裏插入圖片描述
    在這裏插入圖片描述
  • if判斷
    — []中爲判斷條件,[]中變量兩邊需要加空格
  • 數字的比較:
    — -eq 相等(equal)
    — -ne 不等(not equal)
    — -gt 大於(greater than)
    — -lt 小於(less than)
    — -ge 大於等於 (greater than or equal)
    — -le 小於等於 (less than or equal)
  • 字符串的比較:
    — [ $str1 = $str2 ] 等於
    — [ $str1 != $str2 ] 不等於
    — [ -z $str ] 空字符串返回true
    — [ -n $str ] 或者 [ $str ] 非空字符串返回true
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述

vi與vim

  • vim是vi的升級版,兼容vi的所有指令
  • vim支持多級撤銷,vi只能撤銷上次命令
  • vim可以運行在多種os,vi只能運行於類Uinx
  • 語法加亮
  • 可視化操作
  • 可通過vimcr文件配置更加高級功能
  • 輸入
    在命令模式下按 i 可以在當前光標處輸入
    在命令模式下按 o 可以在當前光標的下一行另起一行進行輸入
  • shift+:
    wq保存並退出
    q!不保存直接退出
  • set nu顯示行號
  • 配置文件
  • /ect/vim/vimrc
    在vimrc配置文件的最後一行中添加
set number

下次使用vim時會自動顯示行號

ctrl + b 向後滾動一屏幕
ctrl + f 向前滾動一屏幕
ctrl + u 先上半屏幕
ctrl + d 先下半屏幕

行號+gg跳到該行(行號+shift+g)
gg跳至首行
shift+g跳至最後一行

ctrl + g顯示狀態(當前文件名,總行數,當前行數佔總行數的百分比)(當前光標行數和列數)

H跳至當前屏幕的頂行
L跳至當前屏幕的最後一行
h 光標向前移動一個位置
l 光標向後移動一個位置

home 跳至行首
end 跳至行尾
ctrl + home 跳至首行
ctrl + end 跳至最後一行

命令模式下按 x 剪切光標處的字符
命令模式下按 p 粘貼剪切內容在光標處的後方
命令模式下按 數字 + x 剪切光標處及後方的字符(剪切數量爲輸入的數字)
命令模式下按 d + w 剪切光標處到空格之間的內容(包括空格)
命令模式下按[n] + d + w 剪切光標處到第n個空格之間的內容(包括空格)

命令模式下按 dd剪切當前整行
命令模式下按 p 粘貼剪切內容在光標處的下方
命令模式下按[n] + dd剪切n行
命令模式下 D 剪切當前光標處到行尾的所有內容

命令模式下 yy 複製當前整行
命令模式下 y + ↑/↓複製當前行和上一行或下一行
命令模式下 [n] + yy 複製n行

命令模式下按 u 撤銷
命令模式下按 ctrl + r 恢復撤銷

Makefile

  • make

目標:依賴1 依賴2 … 依賴n
Tab鍵 執行語句

  • make clean

clean:
Tab鍵 執行語句

執行make後會生成executable文件
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

  • -c的意思是編譯成.o的二進制文件,-o的意思是可以給生成的可執行文件重新命名,否則生成默認名稱a.out文件
  • Makefile中的Linux 下 的 cc 和 gcc

https://www.cnblogs.com/zhouyinhui/archive/2010/02/01/1661078.html

在這裏插入圖片描述

環境變量

  • 與shell腳本的變量一樣

定義,輸出變量
在這裏插入圖片描述

  • 系統預定義了許多環境變量,一般以大寫字母命名
  • PATH

PATH用途就是當用戶要求系統運行一個程序而沒有告訴它程序所在的完整路徑時,系統除了在當前目錄下尋找此程序外,還要到PATH變量中指定的路徑去尋找。用戶可以通過設置PATH變量,來更好的運行進程。

  • 常見環境變量

Linux中常見的環境變量有:
1.PATH:指定命令的搜索路徑
2.HOME:指定用戶的主工作目錄(即用戶登陸到Linux系統中時,默認的目錄)
3.HISTSIZE:指保存歷史命令記錄的條數。
4.LOGNAME:指當前用戶的登錄名。
5.HOSTNAME:指主機的名稱,許多應用程序如果要用到主機名的話,通常是從這個環境變量中來取得的。
6.SHELL:指當前用戶用的是哪種Shell。
7.LANG/LANGUGE:和語言相關的環境變量,使用多種語言的用戶可以修改此環境變量。
8.MAIL:指當前用戶的郵件存放目錄。
9.PS1:命令基本提示符,對於root用戶是#,對於普通用戶是$。
10.PS2:附屬提示符,默認是“>”。
備註:可以通過修改此環境變量來修改當前的命令符,比如下列命令會將提示符修改成字符串“Hello,My NewPrompt ”。
#PS1=“Hello,My NewPrompt”
注意:上述變量的名字並不固定,如HOSTNAME在某些Linux系統中可能設置成HOST
當然,所列舉的上述環境變量並非窮盡列出!
Linux也提供了修改和查看環境變量的命令!下面通過幾個實例來說明:
1.echo 顯示某個環境變量值 echo $PATH
2.export 設置一個新的環境變量 export HELLO=“hello” (可以無引號)
3.env 顯示所有環境變量
4.set 顯示本地定義的shell變量
5.unset 清除環境變量 unset HELLO
6.readonly 設置只讀環境變量 readonly HELLO

  • source修改bash.bashrc腳本並重新生效配置
  • /etc/bash.bashrc和/etc/profile聲明的變量對所有用戶都有效
  • /etc/bash.bashrc在用戶切換的時候會執行
  • /etc/profile在系統啓動的時候會執行

在這裏插入圖片描述

  • 在~/.bashrc的腳本文件中定義變量僅僅對當前用戶生效,除非聲明爲外部(export)
    在這裏插入圖片描述
    在這裏插入圖片描述
    在這裏插入圖片描述
  • linux中用 : 來分割路徑

PATH環境變量追加路徑

  • 在~/.basrc腳本文件中最後添加
PATH=$PATH:路徑

在這裏插入圖片描述
在這裏插入圖片描述

用戶管理

  • 用戶
    — 管理員root:具有系統所有權限,uid爲0
    — 系統用戶:保障系統運行的用戶,uid爲1-499
    — 普通用戶:部分權限受限,uid範圍500-60000
  • 用戶組
    — 普通用戶組:可以加入多個用戶
    — 系統組:一般加入一些系統用戶
    — 私有組:創建用戶時,若沒指明所屬組,則會定義一個私有用戶組,名稱與用戶名相同,當把其它用戶加入到私有組,私有組就變成了普通用戶組.

用戶常用的配置文件

  • /etc/passwd

格式: account: password:UID:GID:GECOS:diretory:shell
account:用戶名或帳號
password:用戶密碼佔位符
UID:用戶的1D號
GID:用戶所在組的ID號
GECOS:用戶的詳細信息(如姓名,年齡,電話等)
diretony:用戶所的家目錄
shell: 用戶所在的編程環境
在這裏插入圖片描述

  • /etc/shadow(密碼文件)

格式: account: password: 最近更改密碼的日期:密碼不可更改的天數:密碼需要重新更改的天數:密碼更改前的警告期限:密碼過期的寬限時間:帳號失效日期:保留
在這裏插入圖片描述

用戶組配置文件

  • /etc/ group
    一格式: group name: passwoerd:GiiD:user ist
    group name:組名
    passwoerd:組密碼
    GID.組的ID號
    user list: 以group name爲附加組的用戶列表
  • /etc/ gshadow(用戶組密碼文件,與用戶密碼文件格式相同)

用戶操作

– 添加用戶

添加新的用戶賬號使用useradd命令,其語法如下:
useradd 選項 用戶名
參數說明:

  • 選項:
    -c comment 指定一段註釋性描述。
    -d 目錄 指定用戶主目錄
    -m 創建主目錄。
    -g 用戶組 指定用戶所屬的用戶組。
    -G 用戶組,用戶組 指定用戶所屬的附加組。
    -s Shell文件 指定用戶的登錄Shell。
    -u 用戶號 指定用戶的用戶號,如果同時有-o選項,則可以重複使用其他用戶的標識號。
  • 用戶名:
    指定新賬號的登錄名。
  • 新創建用戶時系統會將/etc/skel/目錄下的文件拷貝到新用戶的目錄中
    在這裏插入圖片描述

– 修改用戶

修改用戶賬號就是根據實際情況更改用戶的有關屬性,如用戶號、主目錄、用戶組、登錄Shell等。
修改已有用戶的信息使用usermod命令,其格式如下:
usermod 選項 用戶名
常用的選項包括-c, -d, -m, -g, -G, -s, -u以及-o等,這些選項的意義與useradd命令中的選項一樣,可以爲用戶指定新的資源值。
另外,有些系統可以使用選項:-l 新用戶名
這個選項指定一個新的賬號,即將原來的用戶名改爲新的用戶名。
在這裏插入圖片描述
– 刪除用戶
刪除一個已有的用戶賬號使用userdel命令,其格式如下:
userdel 選項 用戶名
常用的選項是 -r,它的作用是把用戶的主目錄一起刪除。
在這裏插入圖片描述

用戶組操作

– 添加用戶組

增加一個新的用戶組使用groupadd命令。其格式如下:
groupadd 選項 用戶組
可以使用的選項有:
-g GID 指定新用戶組的組標識號(GID)。
-o 一般與-g選項同時使用,表示新用戶組的GID可以與系統已有用戶組的GID相同。在這裏插入圖片描述

– 修改用戶組

groupmod 選項 用戶組
常用的選項有:
-g GID 爲用戶組指定新的組標識號。
-o 與-g選項同時使用,用戶組的新GID可以與系統已有用戶組的GID相同。
-n新用戶組 將用戶組的名字改爲新名字
在這裏插入圖片描述

– 刪除用戶組

在這裏插入圖片描述

文件權限

文件訪問權限

  • 每個文件都有一個所有者
  • 每個文件或目錄都有一個指派給他們的組
  • linux根據文件的所有者和所屬組來確定誰可以訪問

文件中的權限

  • 讀 r
  • 寫 w
  • 執行 x
  • 所有者 u
  • 所屬組 g
  • 其他用戶 o
  • -一般文件
  • b塊設備
  • c字符設備
  • d目錄
  • l軟鏈接文件
  • 顯示格式

文件類型 所有者權限 所屬組權限 其他用戶權限 所有者 所屬組 修改時間 文件名
其中file_test文件爲一般文件
其所有者擁有讀寫權限
其所屬組擁有讀寫權限
其他用戶只擁有讀權限
所有者snowynight
所屬組snowynight
修改時間…
文件名file_test
在這裏插入圖片描述

修改文件權限chmod

  • chmod [可選項] <file…>

可選項:
-c, --changes like verbose but report only when a change is made (若該檔案權限確實已經更改,才顯示其更改動作)
-f, --silent, --quiet suppress most error messages (若該檔案權限無法被更改也不要顯示錯誤訊息)
-v, --verbose output a diagnostic for every file processed(顯示權限變更的詳細資料)
–no-preserve-root do not treat ‘/’ specially (the default)
–preserve-root fail to operate recursively on ‘/’
–reference=RFILE use RFILE’s mode instead of MODE values
-R, --recursive change files and directories recursively (以遞歸的方式對目前目錄下的所有檔案與子目錄進行相同的權限變更)
–help 顯示此幫助信息
–version 顯示版本信息

mode :權限設定字串,詳細格式如下:
[ugoa…][[±=][rwxX]…][,…],其中
[ugoa…]
u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬於同一個羣體(group)者,o 表示其他以外的人,a 表示所有(包含上面三者)。
[±=]
+表示增加權限,- 表示取消權限,= 表示唯一設定權限。
+[rwxX]
r 表示可讀取,w 表示可寫入,x 表示可執行,X 表示只有當該檔案是個子目錄或者該檔案已經被設定過爲可執行。

file…
文件列表(單個或者多個文件、文件夾)

在這裏插入圖片描述
在這裏插入圖片描述

修改文件所屬關係chown

  • chown [可選項] user[:group] file…

使用權限:root
說明:
[可選項] : 同上文chmod
user : 新的文件擁有者的使用者
group : 新的文件擁有者的使用者羣體(group)
在這裏插入圖片描述

進程

進程的基本概念

  • 進程就是運行起來的程序,使用唯一的PID來標示
    在這裏插入圖片描述
  • 操作系統基本的任務管理單元
  • 進程狀態:運行態、睡眠態、停止態、僵死態
  • 進程的優先級

守護進程

  • 在Linux中,系統服務通常是以後臺運行的進程存在
  • 系統啓動時會自動運行這種後臺守護進程
  • 一旦前臺有指令 或請求,守護進程即可做出相應,提供相關服務

在這裏插入圖片描述
在這裏插入圖片描述

進程管理

  • 查看進程信息
    – ps 查看當前進程
    – ps a 查看與終端相關進程
    – ps x 查看與終端無關的進程
    – ps u 查看進程屬於哪個用戶
    – ps -A 顯示所有進程
  • 使用proc查看進程信息
    – proc文件系統相當於文件的接口
    – 進入目錄查看進程的信息
    在這裏插入圖片描述
    在這裏插入圖片描述
  • 使用top查看CPU使用率
    在這裏插入圖片描述
    – 輸入s進入交互模式,修改爲每1秒刷新一次在這裏插入圖片描述
    – top -d 0.5 以每0.5秒的速度刷新CPU使用率
    – top -d 1 -p 11 -p 14 以每1秒的速度監聽PID爲11,14的進程
    在這裏插入圖片描述
  • 殺死進程
    – kill PID
    在這裏插入圖片描述

軟件的編譯-安裝-卸載

  • Automake和Autoconf
  • Automake和Autoconf工具可以生產符合GUN標準的Makefile
  • 可以使用./configure,make,make install進行安裝
  • -默認安裝目錄
    — /usr/local/bin
  • 可以自行設定安裝目錄,但是要修改PATH環境變量

安裝步驟

  • 下載源代碼包
  • 生成腳本文件 : AUTOCONF
  • 配置
    – ./configure
  • 編譯
    – make
  • 安裝
    – make install
  • 添加環境變量
    – PATH=$PATH:
  • 清理臨時文件
    – make clean
  • 卸載
    – make uninstall

使用dpkg安裝軟件包

DEB格式軟件包

  • 二進制文件、庫文件、配置文檔、幫助頁面等打包
  • 用戶使用工具可直接獲取、安裝、卸載、查詢…

RPM軟件包

  • RedHat在Debian基礎上推出自己的包管理機制:RPM

使用dpkg管理deb軟件包

  • 安裝: dpkg -i xxx.deb
  • 安裝某目錄下多個deb包: dpkg -R /usr/xxx-src
  • 卸載: dpkg-r xxx

製作deb軟件包

  • 安裝工具: apt install checkinstall
  • 安裝工具: apt install dh-make
  • ./configure --prefix=/home/tools
  • make
  • checkinstall
  • 安裝: dpkg -ixxx.deb

APT命令

  • 檢查依賴性: apt check
  • 安裝: apt instal |
  • 更新本地數據庫: apt update
  • 軟件升級: apt upgr ade
  • 卸載: apt remove/ autor emove
  • 清除本地已經下載並安裝的包: apt clean
  • 查看有哪些包可以更新: apt list --upgradable

源配置文件

  • /etc/apt/sources.list
  • 在這裏可以添加或修改源在這裏插入圖片描述
  • ubuntu常用安裝源

https://www.cnblogs.com/ccdc/p/4428555.html

使用wine安裝windows軟件

  • sudo apt install wine64

NFS服務器安裝及配置

  • 安裝
    – apt-get install nfs kernel-server
  • 設置共享目錄
    – vim /etc/exports
    – /nfs *(rw,sync,no_ subtree check,no_ root squash)
    – /nfs *(rw,sync,no root squash)
    在這裏插入圖片描述
    在這裏插入圖片描述
  • 啓動NFS服務器
    – service portmap restart(/etc/init.d/portmap restart)
    – service nfs- kernel-server restart
    – 兩條命令都等價
    在這裏插入圖片描述

客戶端掛載

  • 掛載
    – mount -t nfs 192.168.3.17:/home/snowynight/Desktop/nfs_test ./nfs_dir
  • 開發板掛載
    – mount -t nfs 192.168.3.17:/home/snowynight/Desktop/nfs_test ./nfs_dir -o nolock
  • 顯示本機共享出來的目錄
    – showmount -e
  • 查看掛載情況
    – df
  • 卸載
    – umount /nfs_dir
    在這裏插入圖片描述

掛載參數說明

  • ro/rw 只讀訪問/讀寫訪問
  • sync 所有效據在請求時寫入共享
  • async NFS在寫入數據前可以相應請求
  • secure NFS通過1024以下的安全TCP/IP端口發送
  • insecure NFS通過1024以上的端口發送
  • wdelay 如果多個用戶要寫入NFS目錄,則歸組寫入(默認)
  • nowdelay 如果多個用戶要寫入NFS目錄,則立即寫入,當使用asyne時, 無需此設置。
  • hide 在NFS共享目錄中不共享其子目錄
  • no hide 共享NFS目錄的子目錄
  • subtree check 如果共享/usr/bin之類的子目錄時,強制NFS檢查父目錄的權限(默認)
  • no subtree check 和上面相對,不檢查父目錄權限
  • all squash共享文件的UID和GID映射匿名用戶anonymous,適合公用目錄。
  • no all souash 保留共享文件的UID和GID (默認)
  • root souash root用戶的所有請求映射成如anonymous用戶一樣的權限(默認)
  • no root squash root用戶具有根目錄的完全管理訪問權限
  • anonuid=xxx指定NFS服務器/etc/passwd文件中匿名用戶的UID
  • anongid=xxx指定NFS服務器/etc/passwd文件中匿名用戶的GID

samba服務器配置及使用

安裝samba服務

  • 安裝
    – apt install samba
    – apt install smbfs

  • 創建共享目錄
    – mkdir /home/snowynight/Desktop/samba_test
    – chmod 777 ./samba_test

  • 修改samba配置文件
    – vim /etc/samba/smb.conf

  • 創建samba賬戶
    – touch /etc/samba/smbpasswd
    – smbpasswd -a snowynight
    – 輸入密碼

使用samba服務

  • 重啓samba服務器
    – sudo service smbd restart
  • 從windows訪問並設置網絡映射

https://www.linuxidc.com/Linux/2018-11/155466.htm

  • 從Linux訪問掛載
    – sudo mount -t cifs -o username=snowynight,password=122333, -l //192.168.3.17/samba_test /mnt/samba_dir/
    在這裏插入圖片描述
    在這裏插入圖片描述

https://blog.csdn.net/sdfshfh/article/details/83869021

SSH

SSH協議

  • 什麼是SSH
    – Secure Shell的縮寫
    – 建立在應用層和傳輸層基礎正的安全協議
    – 防止網絡傳輸過程中的信息泄露
  • 爲什麼它能做到?
    – 傳輸數據進行加密
    – 登錄採用兩種級別的安全驗證
    ----- 基於口令的安全驗證
    ----- 基於密匙的安全驗證

SSH服務配置使用

  • 安裝
    – apt install openssh-server
  • 開啓
    – service ssh restart
  • 登入
    – ssh serverIP

在這裏插入圖片描述

FTP配置及應用

FTP協議

  • File Transfer Protocol
    兩臺計算機傳送文件的協議
  • 客戶端可以通過FTP命令從服務器下載、上傳文件、修改目錄

FTP服務器安裝及配置

  • 安裝
    – apt install vsftpd
  • 配置
    – 創建賬戶和密碼
    ---- sudo useradd -d /home/snowynight/Desktop/ftp_test -s /bin/bash -m user_ftp_test

在這裏插入圖片描述
— sudo passwd user_ftp_test
在這裏插入圖片描述
— sudo vim /etc/vsftpd.conf//用戶配置文件
— sudo vim /etc/allowed_users//配置白名單
— sudo vim /etc/ftpusers //配置黑名單
– 權限配置
— 運行上傳local_enable=YES
— 運行登入write_enable=YES
在這裏插入圖片描述

  • 開啓FTP服務
    – sudo /etc/init.d/vsftpd restart
    – sudo service vsftpd restart
    在這裏插入圖片描述
  • 在windows登入
    在這裏插入圖片描述
    -在linux下登入

ftp進入ftp模式運行
open IP地址
輸入服務器名字
輸入服務器密碼

常用FTP命令

  • open: 連接遠程服務器
  • close: 斷開遠程服務器連接
  • Is:列出服務器當前目錄
  • cd: 在服務器上改變工作目錄
  • Icd: 在本地改變工作目錄
  • get: 從服務器傳送指定文件到本地
  • put:從本地上傳指定文件到服務器
  • ?:顯示本地幫助信息
  • !:轉到shell中
  • open
    在這裏插入圖片描述
  • get
    在這裏插入圖片描述
  • put
    在這裏插入圖片描述
  • close
  • exit
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章