一、基础学习:
1、创建管理员root用户:
- $ sudo passwd
- 根据提示,输入当前用户的密码。
- 输入超级用户的密码。
- 再次输入超级用户的密码。
备注:刚刚安装的ubuntu虚拟机,只有普通用户,需要创建root管理员用户。
2、打开终端:
- 快捷按键 shift + alt + t
- search -> terminal
3、查看内存大小:
- $ free -h
4、查看硬盘分区大小
- $ df -h
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、切换用户:
- $ su 用户名
8、搜索指令
- $ find 路径 -name 名字 (搜索文件)
- $ find 路径 -type d -name 名字 (搜索文件夹)
- $ grep -r 名字 路径 (搜索字符串)
9、安装vmware tools
- VMware workstation 的虚拟机找到安装vmware tools
- 在虚拟机里面找到VMware tools包,解压到用户目录
- shell 界面运行 $ ./vmware-install.pl
10、查看工具所在路径
- $ which gcc
11、创建空文件
- $ touch 文件名
12、查看行数、字数、字符数
- $ wc 文件名
13、查看文件头、文件尾
- $ head 文件
- $ tail 文件
14、分页显示文件内容
- $ more 文件名
- $ less 文件名
- ctrl + f 前进
- ctrl + b 后退
15、 树形结构显示文件
- tree 路径
16、查看文件详细信息
- $ stat 文件名(比ls更详细)
17、显示在线的用户
- $ who
18、显示当前操作用户
- $ whoami
19、显示主机名
- $ hostname
20、显示系统名字
- $ uname
21、显示进程消耗资源情况
- $ top
22、显示进程状态
- $ ps
- $ ps -aux
23、查看目录所占大小
- $ du -h 路径
24、查看网络情况
- $ ifconfig
24、查看指令帮助信息
- $ man
25、清屏
- $ clear
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
- 、以DHCP 方式配置网卡
auto eth0
iface eth0 inet dhcp
用sudo /etc/init.d/networking restart命令使网络设置生效
- 、为网卡配置静态IP地址
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
- #lsusb
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、查看文件属性
- #file xxx
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、查看文件内容
- 字符形式:
- #od -c 文件名
- 二进制形式:
- #od -x 文件名
待解决问题:
为用户添加samba账户?
没网络情况如何跟主机通讯?
学习在于积累,肖申克的救赎,男主角用了20年才越狱成功
KUI 2017/04/13