『壹』 怎樣將虛擬機內的文件提取出來
可以通過虛擬機與主機共享文件夾,將虛擬機內的文件提取到主機內。
工具:
電腦
VMware虛擬機
操作步驟如下:
1、打開VMware虛擬機(確保虛擬機內的操作系統已關閉)
『貳』 ubuntu的vim模式輸入什麼命令都沒有反應
1、在命令行執行vim /etc/fstab
2、按i進入編輯模式,用方向鍵移動到你要插入的位置
3、/dev/sda4 /disk4 ext2 defaults 0 0 把這行粘貼進去(不確定你的ctrl+v是否好使,建議你手動輸入吧)
4、按ESC,再按:wq保存退出。
建議你了解一下vim的基礎使用
『叄』 ubuntu基本操作
ls , 即 list, 列出目錄下的所有項示例:
查看當前目錄 ls
查看 /home/shaofa 目錄 ls /home/shaofa
以詳細模式查看 ls -l /home/shaofa 其中,-l 為參數,參數一般以 - 開頭
1 在輸入命令和路徑時,按 TAB 鍵可以自動補全ls /ho ls /home
2 輸入歷史可以翻閱 按 ↑ ↓ 箭頭鍵可以上下翻閱
3 宿主機 與 虛擬機之間可以拷貝粘貼,一般情況下,文本和文件都可以拷貝
pwd , 即 print working directory 顯示當前工作目錄
cd , 即 change directory , 切換目錄
示例:切換到用戶主目錄
cd 切換到某個目錄
cd /home/shaofa/example
幾個特殊的目錄:
~ 代表當前用戶的主目錄
. 代表當前目錄
.. 代表上一級目錄
cd ~ 切換到主目錄
cd ~/example 切換到主目錄下的example目錄
cd ../www 切換到上級目錄、再到www子目錄
mkdir ,即 make directory 創建目錄
mkdir abc
mkdir -p abc/123/test
使用 -p 參數,可以將路徑的層次目錄全部創建
rmdir ,即 remove directory 刪除空目錄
rmdir abc
如果目錄非空,則刪除失敗
tar , 即 tape archive 檔案打包
創建檔案包
tar -cvf example.tar example
其中,
c , 表示 create 創建檔案
v , 表示 verbose 顯示詳情
f , 表示 file
也可以多個目錄打包 tar -cvf xxx.tar file1 file2 file3
還原檔案包
tar -xvf example.tar
tar -xvf example.tar -C outdir
其中,-C 參數指定目標目錄,默認解到當前目錄下
先前的tar格式並沒有壓縮,體積較大
並檔並壓縮
tar -zcvf example.tar.gz example
解壓縮
tar -zxvf example.tar.gz
tar -zxvf example.tar.gz -C outdir
通常我們所見的,都是 *.tar.gz 這種格式
軟鏈接,即 Windows 下的 "快捷方式"
使用 ln 命令 (link) 來創建軟鏈接
ln -s source link
其中,-s 表示 soft 軟鏈接 ( 默認為硬 )比如
ln -s example example2
軟鏈接的特點:
1 刪除軟體接,對原文件沒有影響
2 刪除原文件,則軟鏈接失效
以 ls -l 查看文件詳情時,可以看到目標路徑
比如,ls -l /
可以發現,/bin 實際指向的是 /usr/bin 目錄
比如,添加一個用戶
sudo useradd -m test1
其中,sudo, 表示以管理員身份執行
1 添加用戶
sudo useradd -m test1
其中,-m參數表示在 /home 下添加用戶目錄
2 修改用戶密碼
sudo passwd test1
3 刪除用戶
sudo userdel test1
1 在登錄系統時,默認不允許以 root 用戶登錄
2 只有特殊的用戶,才能執行 sudo
比如,yanjingliang可以執行sudo,但test1不行
Linux下,把能執行sudo命令的用戶叫 sudoer
超級用戶 root
類似於 Windows 下的 Administrator 用戶
切換到 root 用戶,有全部許可權,可以直接 useradd 等命令
1首次使用時,需要給 root 設置密碼
sudo passwd root
2 切換到 root 用戶
su root
其中,su 表示 switch user
3 退出
exit
su root 僅僅對當前會話 (終端) 有效,不影響當前桌面環境,root 權力太大,需要小心使用
Linux 下可以創建多個用戶,可以用組進行管理用戶。
比如:
男生組 boys
ming bo gang qiang
女生組 girls
fang hong yue yuan
創建組 groupadd boys
創建用戶 useradd -m -g boys ming
其中,-g表示在添加用戶,同時將用戶加到boys組
修改現有用戶到新的組 usermod -g boys shaofa
其中,usermod表示修改用戶信息
如何查看用戶和組?
cat /etc/group
每一行表示一個group的信息,名稱 + ID
如何查看用戶列表?
cat /etc/passwd
每一行表示一個用戶的信息
用戶不多時,管理的時候並不使用組的概念
useradd a1
useradd b1
一個root,兩個普通用戶a1, b1 ,夠用了!
默認地,會給a1用戶建立一個同名的組a1 ,也就是說這個組里只有他一個人。
默認地,無法以root登錄 Ubuntu的桌面環境。本文檔介紹如何設置,才能以root來登錄面。一、設置root密碼
首次執行時,需要修改root密碼
sudo passwd root
此時,root已經設置了密碼,但是還不能用root登錄桌面。
二、修改配置
按以下步驟,執行
1:
su root 在終端里 切換到 root用戶
2 :
gedit /etc/pam.d/gdm-autologin
在這一行前面加一個#
#auth required pam_succeed_if.so user != root quiet_success
關閉並保存
3:
gedit /etc/pam.d/gdm-password
在這一行前面加一個#
#auth required pam_succeed_if.so user != root quiet_success
關閉並保存
4:
關閉虛擬機,重啟後生效
三、以root登錄桌面
在登錄界面,點下面的』未列出'
手工輸入用戶名root,登錄
考慮以下幾個方面:
- owner : 文件的屬主 owner
- r : 文件是否可讀 read
- w : 文件是否可寫 write
- x: 文件是否可以執行 excute
使用 ls 命令查看一個文件
ls -l simple.txt
-rw-r--r--. 1 shaofa shaofa 13 4月 21 03:48 simple.txt
其中,rw-r--r-- 表示該文件的訪問許可權
chmod , 即change file mode 修改文件的訪問許可權
比如,一個文件abc.txt ,想讓別人也能修改
chmod o+w simple.txt
其中,o ,表示 other 別人
+w ,表示增寫 write 許可權
chmod a+w abc.txt
所有人 all 添加w許可權
chmod a-w abc.txt
所有人減去w許可權
chmod u+w abc.txt
僅用戶 user 自己的許可權 +w
chmod o-w simple.txt
修改別人 other 的許可權 -w
只有文件的屬主或者root 可以修改文件許可權
省略寫法
chmod +w simple.txt
chmod -w simple.txt
默認是修改自己和本組的許可權
chown , 即change owner 修改文件的屬主
一般來說,每個用戶只操作自己的用戶目錄
所以 chown 命令並不常用
示例:
1 在 /opt 目錄下建立一個文件夾 software
2 將 software 目錄分配給用戶 shaofa
su root
mkdir /opt/software
chown -R shaofa /opt/software
ls -ld /opt/software
只有文件的 owner 和 root 才有權更改屬主
腳本 Script ,一種解釋執行的程序
Linux 下常見的三種腳本程序
- Shell 腳本 *.sh
- Perl 腳本 *.pl
- python 腳本 *.py
腳本程序,本質是一個文本文件
1 它是一個文本文件
2 它具有可執行許可權
腳本程序都是由解釋器來執行的
Shell腳本解釋器: /bin/sh
Perl腳本解釋器: /bin/perl
Python腳本解釋器:/bin/python3
執行一個腳本時,以下兩種方式等效
./hello.py
/bin/python3 hello.py
Shell腳本,按Shell的語法寫出來的腳本
是 Linux 自帶的腳本語言
相當於Windows下的 DOS 批處理腳本
1 編輯一個文本文件,保存為 hello.sh
#!/bin/sh
echo "hello,world"
2 添加可執行許可權
chmod +x hello.sh
3 執行程序
./hello.sh
/bin/sh hello.sh
注意:
1 第一行必須聲明解釋器
#!/bin/sh
2 必須有 x 許可權,才能夠執行
比如,一個程序只有作者執行,別人不能執行
rwxr--r--
3 執行程序時,必須加上路徑
./hello.sh
/home/shaofa/hello.sh
Python腳本,比Shell要強大一些,對於 C / java 工程師,
1 編輯一個文本文件,
#!/bin/python3
print("hello,word")
保存為 hello.py
2 添加可執行許可權 chmod +x hello.py
3 執行程序 ./hello.py
環境變數,就是存在當前環境中的變數
定義環境變數 export OUTDIR=/opt/
顯示環境變數 echo ${OUTDIR}
查看所有環境變數 printenv
環境變數的使用:
可以在當前終端中使用
可以在 SHELL 腳本中調用
在命令行中定義的環境變數,只對當前SHELL終端有效
當關閉終端後,重啟後就消失了
用戶環境變數:定義在 ~/.profile 中
在主目錄下查看隱藏文件 ls -la
其中,a 表示 all ,顯示所有文件
註:在Linux下,以 . 開頭的文件為 隱藏文件
1 用文本編輯器打開 ~/. profile
gedit ~/.profile
2 添加
export JAVA_HOME=/opt/jdk1.8
保存並關閉
3 注銷,重新登錄後生效
echo $JAVA_HOME
原理:當用戶打開終端時,會自動運行 .profile ,將變數注入到當前環境中。
注意:
1 以點號 . 開頭的文件為隱藏文件
ls -a 查看所有文件
2 此配置只對當前用戶有效
因為每個用戶都有自己的配置文件 .profile
3 有的Linux系統上,使用 .bash_profile
系統環境變數:定義在 /etc/profile 中
此中的環境變數對 所有用戶 有效
以 root 身份執行
gedit /etc/profile
但是,一般不直接修改 /etc/profile
而是在 /etc/profile.d/ 創建一個自定義的腳本
1 用 gedit 創建一個腳本
gedit /etc/profile.d/myprofile.sh
2 定義環境變數
export TOMCAT=/opt/tomcat
3 注銷並重新登錄
重新登錄後,環境變數生效
PATH,最常見的一個環境變數
用於描述可執行程序的搜索路徑
查看path中的配置目錄 echo $PATH
多個路徑之間以冒號分隔
usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin
默認地,系統從以下目錄中搜索可執行程序
/usr/bin 比如,/usr/bin/tar
/usr/sbin 比如,/usr/sbin/useradd
/usr/local/bin
/usr/local/sbin
其中, sbin 為超級用戶 root 才能執行的程序
/usr/ 下系統自帶的程序, /usr/local/ 是用戶安裝的程序
演示:修改PATH環境變數。。。
1 編輯 /etc/profile.d/myprofile.sh
設定 PATH 環境變數
export PATH=$PATH:/opt/tomcat/bin
2 注銷,重新登錄後生效
在終端里,以命令行方式來配置網路
常用命令: ifconfig , netstat 等
默認地,Ubuntu 下面不帶 ifconfig 命令
需要使用 apt 軟體包管理器
apt install net-tools 安裝一個軟體包
apt remove net-tools 移除一個軟體包
apt search xxx 搜索
apt list | grep xxx 列表
如果出現:
E: 無法定位軟體包問題」
解決:輸入 sudo apt-get update 更新一些軟體源。
1 查看網路配置
ifconfig
其中,if 表示 interface 網路介面
會列出所有的網路介面,及各個介面的狀態
2 開啟/禁用網路
sudo ifconfig xxx up
sudo ifconfig xxx down
vi / vim , 一個基於控制台的文本編輯器
gedit , 一個基於GUI的文本編輯器
其中,vim 是 vi 的升級版, 演示使用 vim 命令
1 打開文本編輯
vim abc.txt
如果目標文件存在,則打開編輯;如果不存在,會新建一個文件
如果系統上沒有 vim ,就安裝一下:
sudo apt install vim
2 切換模式
編輯模式 Insert Mode: 按 i 鍵
命令模式 Command Mode: 按 ESC 鍵
3 退出編輯
1、按 ESC 鍵,進入命令模式
2、輸入 :wq 保存並退出
3、輸入 :q 退出
4、輸入 :q! 強制退出 ( 放棄保存 )
Linux文本文件的編輯
1 桌面環境:gedit
2 終端環境:
- 少量修改 : vim
- 大量修改 : 在 Windows上編輯,然後上傳到Linux
推薦:在 Windows上編輯,然後上傳到 Linux
使用 notepad ++ 或者其他的專業編輯器
文本文件的換行符
Windows : \r\n
Linux : \n
可以在 Notepad ++ 里觀察到此區別
視圖 | 顯示符號 | 顯示行尾符
換行符的轉換:
編輯 | 文檔格式轉換 | 轉換為 UNIX格式
注意:只有在編輯 SHELL 腳本時,才需要轉換
其他格式的文件一般都不需要轉換,如*.xml, *.java
在 Ubuntu上面運行:
dos2unix xxx.sh
也可以將 xxx.sh轉成 UNIX的換行風格( \n )
如果系統里沒有這個命令,可以安裝一下:
sudo apt install dos2unix
Shell腳本的編輯 。。
1 用 Notepad++打開編輯 mytest.sh
2 轉成 Unix格式 \n
3 上傳至Linux
4 chmod +x mytest.sh
5 運行 ./mytest.sh
程序 Program:指一個程序文件,如 notepad.exe
進程 Process:當一個程序運行起來,在操作系統內創建一條記錄,
用於描述和控制它的運行
比如,打開多個 notepad.exe ,則得到多個進程
查看進程命令:
ps -ef
其中,各個欄位的含義:
UID : 執行者
PID : 進程ID
PPID : 父進程ID
STIME : 啟動時間
CMD : 啟動時調用的命令行