1 Linux操作系统基础
1.1 CPU
CPU |
性能 |
适用范围 |
备注 |
Intel |
最强 |
PC、笔记本、服务器等 |
生产CPU最大厂商 |
ARM |
略弱 |
移动端设备、电视盒子等 |
仅设计CPU |
MIPS |
更弱 |
范围低,路由器等 |
1.2 POSIX
POSIX:可移植操作系统端口
特点:多用户、多线程
1.3 UNIX
开发者:贝尔实验室
特点:
l 封闭(内核不公开)
l 商业化(收费)
l 购买后可二次开发
1.4 Linux概述
多用户、多任务、多线程、多CPU
开发者:linus
开发时间:1991年
特点:
l 开放(内核公开)
l 免费
l 支持多种硬件平台
1.4.1 Linux系统结构
一切皆文件
l 应用:安装的各种服务
l 系统调用:应用和内核之间的连接(一般开发者会关心这里)
l Shell:shell命令,人为加的,多条命令被编写在里面。
l 库函数:应用层的函数库,有很多复杂多样的函数,方便开发者调用(开发者常用)
1.4.2 目录结构
1.4.2.1 Bin
存放系统自带命令
1.4.2.2 Sbin
系统命令,非系统自带命令,如:vim
1.4.2.3 Dev
多部外部设备连接后的目录,如U盘
1.4.2.4 Home
用户文件
1.4.2.5 Lib
系统库,存放库函数,不要轻易操作
1.4.2.6 Mnt
存放挂载存储设备的挂载目录 需要用mount命令挂载
注:
l 如需挂载多个,则多建文件夹,分别挂载就好
l Mount命令:
格式:mount [-t vfstype] [-o options] device dir
mount 类型 方式 盘 目录
u -t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
光盘或光盘镜像:iso9660
DOS fat16文件系统:msdos
Windows 9x fat32文件系统:vfat
Windows NT ntfs文件系统:ntfs
Mount Windows文件网络共享:smbfs
UNIX(LINUX) 文件网络共享:nfs .
u -o options 主要用来描述设备或档案的挂接方式。常用的参数有:
loop:用来把一个文件当成硬盘分区挂接上系统
ro:采用只读方式挂接设备
rw:采用读写方式挂接设备
iocharset:指定访问文件系统所用字符集
u device 要挂接(mount)的设备。
u dir设备在系统上的挂接点(mount point)。
如:建立一个目录用来作挂接点(mount point) :#mkdir /mnt/vcdrom
使用/mnt/vcdrom就可以访问盘镜像文件mydisk.iso里的所有文件
#mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
1.4.2.7 Proc
内核直接通信
Uname –a 查看内核信息
1.4.2.8 Usr
应用程序和文件安装后默认存放的目录,如:源码默认安装目录为/usr/local
1.4.2.9 /var/log
存放系统日志
1.4.2.10 /var/lib
存放一些库文件
1.4.2.11 /etc
存放配置文件
1.4.3 命令
1.4.3.1 man
man 命令:该命令所有参数的使用方法
如:man ls
1.4.3.2 grep
筛选查询结果
如:ls | grep ‘log’ 名字中有log的结果
ls | grep -v ‘log’ 名字中除log以外的结果
ps -ef |grep mirror
ls | grep -i ip i代表忽略,无论大小写的ip都能被筛选出来
1.4.3.3 cp
复制:-r 文件夹;无-r 文件
cp -r /home/jll/Desktop/jll/ /home/jll/Desktop/jll2
cp /home/jll/Desktop/X.bin /home/jll/Desktop/X3.bin
1.4.3.4 mv
移动:不需-r
同时可以重命名
mv jll jll4
1.4.3.5 ps
查看瞬间的进程状态:如命令:ps aux
结果:
l user:所属用户,
l STAT:该程序目前的状态,主要的状态有:
R :该程序目前正在运作,或者是可被运作;
S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒。
T :该程序目前正在侦测或者是停止了;
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (僵尸) 程序的状态
l command:执行命令(无命令的话为自动启动)
1.4.3.6 kill
停止进程
Killall 进程名 如killall httpd
Kill -9 进程号
1.4.3.7 file
用于判断接在file命令后的文件的基本数据。
file 文件名:查看文件类型
file –b 文件名:查看文件类型,结果不显示文件名
1.4.3.8 tar
将整个 /etc 目录下的档案全部打包成为 /tmp/etc.tar
tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!
tar -czvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
tar -cjvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
1.4.3.9 cat
查看文件内容
1.4.3.10 chgrp
改变文件所属用户组
chgrp [选项] 组名 文件名
将/usr/meng及其子目录下的所有文件的用户组改为mengxin:
# chgrp -R mengxin /usr/meng
# chgrp –R 用户组 目录
1.4.3.11 chown
将指定文件的拥有者改为指定的用户或组:
chown [选项] 用户或组 文件名
l 选项:- R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。
- v 显示chown命令所做的工作。
l 用户可以是用户名或用户ID。组可以是组名或组ID
1.4.3.12 chmod
chmod 所有者权限 组用户权限 其他用户权限(三位数字表示) 文件名
r 读取权限 4;w 写入权 2;x 执行权 1;
7(r+w+x):读写执行;6(r+w)读写;5(r+x)读执行。
如:
chmod -R 764 ××× 更改文件夹及其子文件夹
所有者为读写执行权限;组用户为读写权限;其他用户为读权限。
chmod +x ××× 该文件可执行
1.4.3.13 ll
ls –l =ll
显示该文件下所有的文件信息,包括隐藏的文件。
l ll -a: 列出目录下的所有文件,包括以 . 开头的隐含文件。
l ll –t:文件以时间倒序显示。
l ll –S:以文件大小排序显示
1.4.3.14 ls
ls -l:(ll)显示出该文件下所有的显式文件
1.4.3.15 tail
tail –f a.txt:默认显示a.txt的倒数10行
tail -25 a.txt:显示a.txt的倒数25行
(head -6 a.txt显示a.txt的前6行)
点击ctrl + c退出
1.4.3.16 wc
wc [选项]文件...
l -c 统计字节数。
l -l 统计行数。
l -m 统计字符数。这个标志不能与 -c 标志一起使用。
l -w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
l -L 打印最长行的长度。
l -help 显示帮助信息
l --version 显示版本信息
如:wc –l a.txt:a.txt的行数
1.4.3.17 time
该命令用于测算一个命令(即程序)的执行时间。
1.4.3.18 date
date 月日时分年.秒
1.4.3.19 Ssh工具
SSH连接工具:
用途:方便windows用户对linux主机的访问与控制。
常见:Xshell、Putty、SmarTTY。
SecureCRT相对linux上SSH命令的优势:
- windows直连,不用借助虚拟机做中间介质。
- 方便windows与linux之间的文件传输。
- 工具能够记住IP和账号信息,不用每次登陆都输入。
- 命令行外观可以方便地根据自己喜好改变风格。