一、linux基础知识
1.linux概念
- Unix克隆或Unix风格的操作系统
- 支持多用户、多任务的稳定高效的操作系统
- 可以在众多电脑平台上运行,如:i386、Sparc、Alpha、Mips、PPC 等,目前是得到支持厂商最多的操作系统平台
- 正是由于GPL,让Linux能被人们广泛用在路由器、嵌入芯片、服务器、个人电脑等
2.Linux内核主要功能
与计算机硬件进行交互,实现对硬件对编程控制和接口操作,调度对硬件资源对访问,并为计算机上的用户程序提供一个高级的执行环境和对硬件对虚拟接口
按功能模块分为:
- 进程调度--多任务。
- 内存管理 --内存
- 文件管理--硬盘
- 进程间通信 -- 任务之间的通讯
- 网络接口 -- 网口的管理socket。
3.Shell程序功能概述
介于使用者和 UNIX/Linux 操作系统之核心程序(kernel)间的一个接口
Shell功能如下:
- 读取输入和语法分析命令列
- 处理万用字符解释
- 重定向和管道
- 搜索和运行程序
- 后台作业 shell编程等
4.系统结构及目录简介
bin:linux常用的命令。如:cp、mv。
boot:系统启动时要用到的程序。 C盘
dev:所有linux系统中使用的外部设备映射文件。和我们常用的windows, dos操作系统不一样。它实际上是一个访问这些外部设备的端口。(虚拟光驱、usb)
etc:系统管理的各种配置文件和子目录。如网络配置文件,文件系统,x系统配置文件,设备被指信息,设置用户信息(passwd、group)
home:每个用户的主目录存放在这个目录下以用户名命名的子目录中。例如:如果我们建立一个用户,用户名是“tom”,那么在 /home目录下就有一个对应的/home/tom路径。
ib:存放系统动态连接共享库。几乎所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行什么操作,一旦发生问题,系统就不能工作了。
lost+found:这个目录在大多数情况下都是空的。但是如果你正在工作突然停电,或是没有用正常方式关机,在你重新启动机器的时候,有些文件就会找不到应该存放的地方,对于这些文件,系统将他们放在这个目录下,就象为无家可归的人提供一个临时住所。
mnt:分区的挂载点,这个目录在一般情况下也是空的。可以临时将别的文件系统挂在这个目录下。(cdrom、hgfs、usb)
proc:虚拟目录,系统内存的映射,可以在这个目录下获取系统信息。这些信息是在内存中,由系统自己产生的。
root:系统管理员的主目录,其它用户无法访问。
sbin:这个目录是用来存放系统管理员的系统管理程序。
tmp:用来存放不同程序执行时产生的临时文件。放一些无用的数据
usr:这是linux系统中占用硬盘空间最大的目录。用户的很多应用程序和库都存放在这个目录下,有很多子目录。 (/usr/bin/vmware-config-tools.pl)
Var:存放一些系统运行过程中的临时文件,如系统日志。有用的日志
注:在各目录中以颜色区分不同的文件类型
- 蓝:目录;
- 绿:可执行文件;
- 红:压缩文件;
- 浅蓝:链接文件;
- 灰:其他文件;
- 红底白字:错误的链接文件
二、常用操作指令
命令名称 | 用途 | 命令举例 |
ls | 文件查看 | ls –l |
cd | 改表文件目录 | cd |
cp | 文件拷贝 | cp file1 \tmp |
rm | 删除文件 | rm –rf \dir1 |
mkdir/rmdir | 创建目录或删除目录 | mkdir dirname |
mv | 移动文件 | mv file1 \tmp\. |
rename | 文件重命名 | |
find | 文件查找 | find / -name ‘*.log’ |
1.find的常用方式
命令 | 含义 |
| 操作表达式,将当前的文件名送到标准输出设备显示,返回值常为真。 |
-name pattern | 条件表达式,检查文件名是否和模式pattern相同。必要时使用引号。当文件名与pattern一致时.返回真值.否则为假。 |
-exec cmd | 操作表达式,用来执行cmd命令。如果要将当前的文件名传送给命令,应该加{}标记,分号用来表示cmd的结束,并和后面可能出现的表达式分开。如果成功地执行了cmd命令,返回真值,否则为假。 |
-type t | 条件表达式,检查当前文件的类型是否是t。对目录讲,t值可以是d。对普通文件讲,t值可以是f,对连接讲,t值可以是l等等。如果当前的文件的类型是t,返回真值,否则为假。 |
-user usr | 条件表达式,检查当前的文件的所有者或UID是否是usr。如果两者一致,返回真值,否则为假。 |
-group grp | 条件表达式,检查当前的文件是否具有与grp相同的GID或组名。如果两者一致,返回真值,否则返回假值。 |
2.文件查看指令
- cat用来查看文件内容
- more分屏显示文件内容
- less命令类似于more命令,但是比more命令提供更多功能
- tail用来查看文件的末尾几行
- wc统计文件的行数、字数、字符数 行数为、单词数、字节数
3.进程操作指令
ps | 进程查看命令 |
kill | 送信号给进程 |
pstree | 树形方式显示进程 |
- 查看磁盘空间df 例如:df -TH
- 查看文件占用空间du 例如:du -k
- 装载文件系统mount 格式:mount 设备名 挂载点 例如:mount /dev/cdrom /mnt/cdrom
4.cpu查看
命令名称 | 用途 |
top | 常用的性能分析工 具 |
free | 内存使用情况 |
/proc/cpuinfo | CPU信息 |
/proc/meminfo | 内存信息 |
5.其他指令
命令名称 | 用途 |
date | 显示日期 |
cal | 显示日历 |
who | 查看谁在使用系统 |
who am i | 查看我是谁 |
clear | 清除屏幕 |
bc | 计算器 |
tail | 查看文件最后的内容 |
which | 查看程序所在的位置 |
6.文件备份
功能说明 | 用来创建归档(档案)文件,备份文件及恢复文件,另外tar命令也有压缩与解压缩的功能 | |
用法示例 | tar [option] [file] | |
选项 | -c | 创建一个新的归档 |
-z | 利用gzip(压缩算法)把文件压缩 | |
-u | 备份新的及修改过的文件(备份更新) | |
-x | 将文件从归档中恢复到磁盘上 | |
-t | 显示归档中文件的文件名 | |
-v | 显示执行过程中的文件清单 | |
-f | 用来指定创建的文件名 |
7.grep
grep是通用正则表达式分析程序(General Regular Expression Parser)的缩写,一种强大的文本搜索工具
grep命令可以在它的输入中搜索指定的字符串模式(Pattern)。grep命令的输出是包含输入中指定的字符串模式的行。
grep命令的一般格式: grep [option] pattern file
开关 | 描述 |
-E | 用扩充正则表达式进行模式匹配 |
-i | 不区分大小写 |
-n | 在每一输出行前显示文件内的行号 |
-q | 与其他命令一起使用时,抑止输出显示 |
-s | 抑止文件的出错信息 |
-num | 在每—匹配行前后各显示num行 |
-v | 反向匹配 |
-l | 返回匹配到的文件名称 |
基本特殊字符集
^ | 在每行的开始进行匹配 |
$ | 在每行的末尾进行匹配 |
\< | 在字的开始进行匹配 |
\> | 在字的末尾进行匹配 |
. | 对任何单个字符进行匹配 |
[str] | 对str中的任何单个字符进行匹配 |
[^str] | 对任何不在str中的单个字符进行匹配 |
[a-b] | 对a到b之间的任何字符进行匹配 |
\ | 抑止后面的一个字符的特殊含义 |
* | 对前一项(item)进行0次或多次重复匹配 |
三、文件权限
1.Linux用户类别
- root:这是系统特权用户类,他们都有访问root登录帐号的权限
- owner:这是实际拥有文件的用户。
- group:这是共享文件的组访问权的用户类的用户组名称
- world:这是不属于上面3类的所有其他用户。
/etc/passwd文件:该文件是存放linux所有用户信息文件
格式:
- 帐号名称:登陆的用户名
- 密码:MD5加密的密码
- UID:用户ID号.0是管理员帐号,1~499保留系统使用.500~65535给一般使用者
- GID:用户所属组ID号
- 使用者信息说明栏
- 家目录:用户默认所在home目录
- Shell名称
/etc/shadow文件:存放linux所有用户的密码文件
格式:
- 帐号名称:由于密码也需要和帐号相匹配
- 密码:这才是真正密码,是以MD5加密(如果密码是以*或者是!开头表示密码对应用户不是登陆用户) 最近更动密码日期
- 密码不可被更改得天数
- 密码需重新变更天数
- 密码变更期限前警告期限
- 密码过去恕限时间
- 帐号失效日期
- 保留
/etc/group文件:
- groupname:password:gid:user_list groupname:
- 组名称 password:组密码
- gid:组识别号
- user_list:该组用户清单
2.Linux文件权限位
文件权限位的表示:-rwxrwxrwx
第一位表示文件的类型,-表示普通文件,d表示目录文件,l表示符号链接文件;
接下来三位表示owner用户的读,写,执行权限
紧接着三位表示group用户的读,写,执行权限
最后三位表示world用户的读,写,执行权限
- drwxrwxrwx 九个文件权限
- 第一组权限限制:文件拥有者
- 第二组权限限制:与当前系统登录账户属于同组的其他用户
- 第三组权限限制:与当前系统登录账户不属于同组的其他用户
- r:代表read 可读(查看) 4代替
- w:代表 write 可写(改动) 2代替
- x:代表是否可以执行(程序可执行文件) 1代替
- 如果一个文件可读可写可执行 4+2+1 = 7
3.chmod文件权限修改命令
chmod命令格式为: chmod [option] mode files...
- 给text文件赋予rwxr-xr-x权限: chmod 755 text
- 给text及其子目录底下所有文件赋予rwxr-xr-x权限: chmod -R 755 text
- 为文件abc的组拥有者增加rw权限 chmod g+rw abc
- 为abc文件的用户拥有者去除x权限 chmod u-x abc
- 指定文件abc的其他用户权限为rw- chmod o=rw-
- 为文件abc及其子目录底下的所有文件的全体用户增加x权限 chmod -R a+x abc
4.组的创建与用户的创建
ubuntu (为例)Centos是反过来的
- 创建组 groupadd groupname
- 创建用户并设置默认组 useradd –g/G groupname username useradd username
- 向组添加删除用户 gpasswd -a username groupname
- 给用户设置密码 passwd username
- 删除组 groupdel groupname
- 删除用户 userdel –r username
- 向组删除用户 gpasswd -d username groupname