一、基礎學習:
1、創建管理員root用戶:
-
$ sudo passwd
-
根據提示,輸入當前用戶的密碼。
-
輸入超級用戶的密碼。
-
再次輸入超級用戶的密碼。
備註:剛剛安裝的ubuntu虛擬機,只有普通用戶,需要創建root管理員用戶。
2、打開終端:
-
快捷按鍵 shift + alt + t
-
search -> terminal
3、查看內存大小:
4、查看硬盤分區大小
5、釋放內存
-
$sync同步數據
-
$ echo 1/2/3 > /proc/sys/vm/drop_caches
6、換更新源
-
$ /#vi /etc/apt/sources.list
-
:%s/us.archive/cn.archive/g (命令模式下,將美國源替換爲中國源)
-
$ apt-get update (讀取軟件列表到本地)
-
$ apt-get upgrade(升級軟件)
7、切換用戶:
8、搜索指令
-
$ find 路徑 -name 名字 (搜索文件)
-
$ find 路徑 -type d -name 名字 (搜索文件夾)
-
$ grep -r 名字 路徑 (搜索字符串)
9、安裝vmware tools
-
VMware workstation 的虛擬機找到安裝vmware tools
-
在虛擬機裏面找到VMware tools包,解壓到用戶目錄
-
shell 界面運行 $ ./vmware-install.pl
10、查看工具所在路徑
11、創建空文件
12、查看行數、字數、字符數
13、查看文件頭、文件尾
14、分頁顯示文件內容
-
$ more 文件名
-
$ less 文件名
-
ctrl + f 前進
-
ctrl + b 後退
15、 樹形結構顯示文件
16、查看文件詳細信息
17、顯示在線的用戶
18、顯示當前操作用戶
19、顯示主機名
20、顯示系統名字
21、顯示進程消耗資源情況
22、顯示進程狀態
23、查看目錄所佔大小
24、查看網絡情況
24、查看指令幫助信息
25、清屏
26、對命令重命名
-
$alias ii = "ls -l"
-
$unalias ii (解除)
27、程序後臺運行
28、殺死進程
-
$ kill 進程pid號 (ps / top查看進程號)
29、打包壓縮解壓
-
$tar -cvf /home/abc.tar /home/abc 只打包,不壓縮
-
$tar -zcvf /home/abc.tar.gz /home/abc 打包,並用gzip壓縮
-
$tar -jcvf /home/abc.tar.bz2 /home/abc 打包,並用bzip2壓縮
-
-
$tar -xvf abc.tar -C 路徑 解壓
-
$tar -zxvf abc.tar.gz -C 路徑 gzip解壓
-
$tar -jxvf abc.tar.bz2 bzip2解壓
30、關機、重啓
-
$ reboot (重啓)
-
$ shutdown -r now (關機並重啓)
-
$ shutdown -h now (關機)
-
$ halt -p (關機)
31、安裝、卸載軟件
-
$ apt-get install 軟件名 (在線)
-
$ apt-get remove 軟件名 (在線)
-
-
$ dpkg -i tree.deb 離線安裝軟件
-
$ dpkg -r tree 卸載軟件
-
-
備註:若離線包爲.rpm格式(redhat公司),則需要對其進行轉化
-
$ alien abc.rpm
32、linux發行版比較
-
ubuntu:
-
優點:漂亮用戶界面,完善包管理,軟件源管理,對硬件兼容性好。
-
缺點:所需資源大(內存,顯卡)
-
sentos:
-
優點:簡約:繼承redhat,去除與服務器無關功能,指令人性化,大量的文檔支持。
-
確定:體積大了一些
-
debian:
-
優點:穩定(比Ubuntu穩定),需要資源小
-
缺點:文檔少
備註:
-
redhalt:商業版代表
-
debian:開源社區代表
33、查看ubuntu系統是幾位的
-
$ uname -a
-
$ arch
-
getconf LONG_BIT
34、網卡地址配置
Ubuntu的網絡配置文件是:/etc/network/interfaces
auto eth0
iface eth0 inet dhcp
用sudo /etc/init.d/networking restart命令使網絡設置生效
sudo vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
也可以在後面加上dns地址
dns-nameservers 202.96.134.133 210.21.196.6
sudo /etc/init.d/networking restart
35、查看usb設備信息:
-
# mount -t usbfs usbfs /proc/bus/usb/
#cat /proc/bus/usb/devices
36、環境變量
環境變量的設置
一般來說,配置交叉編譯工具鏈的時候需要指定編譯工具的路徑,此時就需要設置環境變量。例如我的mips-linux-gcc編譯器在“/opt /au1200_rm/build_tools/bin”目錄下,build_tools就是我的編譯工具,
三種方法來設置環境變量:
1、直接用export命令:
#export PATH=/opt/au1200_rm/build_tools/bin:$PATH
作用域:命令
“PATH=$PATH:路徑”可以把這個路徑加入環境變量,但是退出這個命令行就失效了。
2、修改profile文件:
#vi /etc/profile
在裏面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"
讓環境變量立即生效需要執行如下命令:
#source /etc/profile
作用域:永久生效,且/etc/profile”對系統裏所有用戶都有效,
3. 修改.bashrc文件:
# vi /root/.bashrc
在文件頭裏面加入:
#export PATH=/opt/au1200_rm/build_tools/bin:$PATH
#source .bashrc
後兩種方法一般需要重新註銷系統才能生效,最後可以通過echo命令測試一下:
# echo $PATH
看看輸出裏面是不是已經有了/my_new_path這個路徑了。
作用域:用戶主目錄下
的“.bash_profile”只對這個用戶有效。
查看是否設置成功:
1、#export
2、#printenv
3、#cat $PATH
4、#env
問題:怎麼知道編譯時用的是/usr/local/mipsel-4.1.2-nopic/bin,還是其他的???
PATH=/usr/local/jdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/apache-maven/bin:/usr/local/arm-gcc/bin:/usr/local/mipseltools/bin:/usr/local/mips-4.3-mxu/bin:/usr/local/arm-marvell-linux-gnueabi/bin:/usr/local/mipsel-4.1.2-nopic/bin
#which mipsel-linux-gcc
導出工具鏈:
#export PATH=/opt/au1200_rm/build_tools/bin:$PATH
(寶橙有效)
查看編譯器位置:
#which mipsel-linux-gcc
37、導出動態庫
#export LD_LIBARARY_PATH="xxxx動態庫路徑:"
創建用戶?
38、#adduser -r xxx -r 參數建立系統用戶
#passwd xxx 添加用戶密碼
#userdel -r xxx 刪除用戶
39、指定用戶發送消息
-
#w或who命令查看當前登錄的用戶信息
-
write 登陸用戶名 ttyname(例如write root pts/1)
-
ENTER
-
輸入信息(所要發送的消息,中文可能會亂碼)。
-
CTRL+D結束
40、tftp傳輸
tftp簡單文件傳輸協議,是tcp/ip協議族中一個用來在客戶機與服務器之間進行簡單文件的傳輸協議。
端口號:69
基於:udp文件傳輸協議
netstat -a | grep tftp查看tftp是否啓動
疑問:自己安裝的服務器爲啥沒有顯示?
PC-服務器(ubuntu)之間通訊:
-
打開pc端tftp32軟件
-
#tftp 192.168.1.2 //pc端地址
tftp>binary //文件類型
tftp>get <download file> //獲取pc文件
tftp>put <upload file> //發送文件到pc
tftp>q //退出
PC-機器之間通訊:
#tftp -g -r 文件名 主機ip
舉例:
#tftp -r libusbdemo -g 192.168.1.123
#chmod u+x libusbdemo
#./busbdemo
是什麼,幹什麼(有什麼用),怎麼做
vi是編輯文件的工具,能夠實現對文件增刪改查。它有三種模式,分別是。。。
41、vi編輯器:編輯文檔的工具,有三種操作模式
-
命令模式:默認模式
-
G(shift+g) 跳轉文件尾
-
行數G 跳轉到具體某行
-
2yy 複製光標開始以後的兩行
-
2dd 刪除光標開始以後的兩行
-
dw delete word刪除光標所在的單詞
-
x 刪除光標所在字符
-
r字符 把光標所在的字符替換爲字符
-
yw 複製單詞
-
J 把下一行內容追加到本行尾,以一個空格隔開
-
D 在行中刪除光標後面的內容
-
~ 光標所在的字符大小寫切換
-
u 恢復上一個動作,可以一直恢復
-
p 粘貼到光標所在的後一行
-
P 粘貼到光標所在的上一行
-
底行模式:按冒號:進入底行模式
-
:set nu 顯示行號:
-
:set nonu 不顯示行號
-
:/字符串 向下搜索字符串;再按 n搜索下一個,N搜索上一個
-
:?字符串 向上搜索字符串;再按 n搜索上一個,N搜索下一個
-
:s/舊字符/新字符 替換掉本行中的第一個舊字符
-
:s/舊字符/新字符/g 替換掉本行中全部舊字符
-
:%s/舊字符/新字符/g 替換掉整個文件全部的舊字符
-
:w 保存
-
:q 退出不保存
-
:wq 保存後退出
-
:q! 強制退出不保存
-
:w 名字 另存爲名字
-
:tabnew 文件名 新建文件
-
:vsplit 文件名 打開多個窗口
-
:ctl + w 切換窗口
-
插入模式:按i,a,A,o,O進入插入模式
-
i 插入到光標前
-
I 插入到行首
-
a 插入到光標後面
-
A 插入到行尾
-
o 在光標下面新建一行
-
O 光標前面新建一行
-
s 刪除光標所在的字符,並進入插入模式,等效於:i再右箭頭再backspace或者a再backspace
-
S或者cc 刪除光標所在行,並進入插入模式,等效於:dd再O
-
cw 刪除光標所在的單詞,並進入插入模式
-
R replace覆蓋本行內容
-
42、查看文件屬性
43、APT(Advanced Packaging Tool)高級軟件工具
-
sudo apt-get update 更新軟件
-
sudo apt-get upgrade 更新系統
-
sudo apt-get install tree 安裝tree
-
sudo apt-get remove tree 卸載tree
44、搜索服務器的安裝包
-
#apt-cache search libudev
45、編譯第三方庫
安裝libusb庫
-
#autogen.sh //生成configure文件
-
#./configure --prefix=$(pwd)/bin --host=mipsel-linux CC=mipsel-linux-gcc
-
#make
-
#make install
安裝zlib庫
export CC=arm-linux-gcc(確保環境變量)
1、./configure --shared --prefix=/home/user/release/usr/
(配置安裝路徑)
2、make
正常情況
arm-linux-gcc -O3 -DUSE_MMAP -c -o example.o example.c
arm-linux-gcc -O3 -DUSE_MMAP -c -o adler32.o adler32.c
arm-linux-gcc -O3 -DUSE_MMAP -c -o compress.o compress.c
3、make install
生成:/home/user/release/usr/{lib,include}
lib(libz.so,libz.so.1,libz.so.1.2.2)
include(zconf.h, zlib.h)
46、查看文件內容
待解決問題:
爲用戶添加samba賬戶?
沒網絡情況如何跟主機通訊?
學習在於積累,肖申克的救贖,男主角用了20年才越獄成功
KUI 2017/04/13