1.linux组的介绍和管理
2.Linux任务调度
3.Linux磁盘分区、挂载
4.Linux分区介绍
5.Linux如何增加一块硬盘(虚拟机)
6.Linux磁盘管理
7.Linux进程管理
8.Linux服务管理
9.Linux监控网络的状态
10.RPM 与 YUM
在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件
有所有者、所在组、其它组的概念。
查看文件的所有者
一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。
指令:
ls –ahl
修改文件所有者
指令:
chown 用户名 文件名
组的创建
基本指令:
groupadd 组名
修改文件所在的组
基本指令:
chgrp 组名 文件名
改变用户所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组。
指令:
usermod –g 组名 用户名
改变该用户登陆的初始目录
指令:
usermod –d 目录名 用户名
文件权限解读
使用 ls -l 可显示出9位文件的权限,例如: -rwxrw-r–
0-9位说明
1.第0位确定文件类型(d【目录】, -【普通文件】 , l【软链接】 , c【字符设备】 , b【块文件、硬件】)
2.第1-3位确定所有者(该文件的所有者)拥有该文件的权限。—User
3.第4-6位确定所属组(同用户组的)拥有该文件的权限,—Group
4.第7-9位确定其他用户拥有该文件的权限 —Other
rwx作用到文件
1.[ r ]代表可读(read): 可以读取,查看
2.[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是
对该文件所在的目录有写权限,才能删除该文件.
3.[ x ]代表可执行(execute):可以被执行
rwx作用到目录
1.[ r ]代表可读(read): 可以读取,ls查看目录内容
2.[ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
3.[ x ]代表可执行(execute):可以进入该目录
可用数字表示为: r=4,w=2,x=1
修改文件权限
基本说明:
通过chmod指令,可以修改文件或者目录的权限。
第一种方式:+ 、-、= 变更权限
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
示例:
1.chmod u=rwx,g=rx,o=x 文件目录名
2.chmod o+w 文件目录名
3.chmod a-x 文件目录名
第二种方式:通过数字变更权限
r=4 w=2 x=1 rwx=4+2+1=7
chmod u=rwx,g=rx,o=x 文件目录名
相当于 chmod 751 文件目录名
修改文件所有者
基本介绍
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变用户的所有者和所有组
常用选项:
-R 如果是目录 则使其下所有子文件或目录递归生效
修改文件所在组
基本介绍
chgrp newgroup file 改变文件的所有组
crond 任务调度
crontab 进行 定时任务的设置
概述:
任务调度:是指系统在某个时间执行的特定的命令或程序。
任务调度分类:
1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
2.个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。
基本语法
crontab [选项]
常用选项
crond 相关指令:
1.crontab –r:终止任务调度。
2.crontab –l:列出当前有那些任务调度
3.service crond restart : 重启任务调度
crond快速入门
1.执行crontab –e命令:设置个人任务调度
2.接着输入任务到调度文件
如:*/1 * * * * date >> /home/echo/mydate
上述命令的意思是:每分钟将时间信息追加到mydate文件中
5个占位符的说明
特殊符号的说明
特定时间执行任务案例
分区基础知识
分区的方式:
(1)mbr分区:
1.最多支持四个主分区
2.系统只能安装在主分区
3.扩展分区要占一个主分区
4.MBR最大只支持2TB,但拥有最好的兼容性
(2) gtp分区:
1.支持无限多个主分区(但操作系统可能限制,比如 windows下最多128个分区)
2.最大支持18EB的大容量(1EB=1024 PB,1PB=1024 TB )
3.windows7 64位以后支持gtp
1.Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux中每个分区都是用来组成整个文件系统的一部分。
2.Linux采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
硬盘说明
1.Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。
2.对于IDE硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指IDE硬盘了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属
盘)
3.“~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。
4.对于SCSI硬盘则标识为“sdx~”,SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样。
1.虚拟机添加硬盘
在【虚拟机】菜单中,选择【设 置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。然后重启系统(才能识别)!
2.分区
分区命令 fdisk /dev/sdb (sdb为新的硬盘,也可能是别的值)
开始对/sdb分区
命令输入后会出现选项:
说明: 开始分区后输入m(显示提示),再输入n(新增分区),然后选择p(选择分区号) ,分区类型为主分区。然后两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q。
3.格式化
分区命令:mkfs -t ext4 /dev/sdb1
其中ext4是分区类型
4.挂载
挂载: 将一个分区与一个目录联系起来
命令:
mount 设备名称 挂载目录
例如:
mount /dev/sdb1 /newdisk
umount 设备名称 或者 挂载目录
例如: umount /dev/sdb1 或者 umount /newdisk
5.设置可以自动挂载 。
永久挂载: 通过修改/etc/fstab实现挂载 添加完成后 执行mount –a 即刻生效
再/etc/fstab文件中顶部添加如下信息(分区路径、挂载位置、系统类型),后两个直接写default 和0 0
磁盘情况查询
查询系统整体磁盘使用情况
基本语法
df -h
查询指定目录的磁盘占用情况
默认为当前目录
du -h /目录
参数:
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值
示例:
du -ach --max-depth=1 /home/
树状显示目录
命令
tree 目录
测试主机之间网络连通性
基本语法
ping 目的主机
(功能描述:测试当前服务器是否可以连接目的主机)
指定固定的ip
说明
直接修改配置文件来指定IP,并可以连接到外网(程序员推荐),编辑 vi /etc/sysconfig/network-scripts/ifcfg-eth0
ifcfg-eth0文件说明
DEVICE=eth0 #接口名(设备,网卡)
HWADDR=00:0C:2x:6x:0x:xx #MAC地址
TYPE=Ethernet #网络类型(通常是Ethemet)
UUID=926a57ba-92c6-4231-bacb-f27e5e6a9f44 #随机id
#系统启动的时候网络接口是否有效(yes/no)
ONBOOT=yes
# IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)
BOOTPROTO=static
#IP地址
IPADDR=192.168.184.130
#网关
GATEWAY=192.168.184.2
#域名解析器
DNS1=192.168.184.2
示例:将ip地址配置的静态的,ip地址为192.168.184.130
基本介绍
1.在LINUX中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号。
2.每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。
3.每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
4.一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束.
查看瞬时进程
基本语法
ps
功能:ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。 可以不加任何参数
应用实例
要求:以全格式显示当前所有的进程,查看进程的父进程。
基本语法
ps -ef
功能
是以全格式显示当前所有的进程
-e 显示所有进程。
-f 全格式。
列信息说明
UID:用户ID
PID:进程ID
PPID:父进程ID
C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,
执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
STIME:进程启动的时间
TTY:完整的终端名称
TIME:CPU时间
CMD:启动进程所用的命令和参数
终止进程kill和killall
介绍: 若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用kill命令来完成此项任务。
基本语法:
kill [选项] 进程号(功能描述:通过进程号杀死进程)
killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
常用选项:
-9 :表示强迫进程立即停止
查看进程树pstree
基本语法:
pstree [选项] ,可以更加直观的来看进程信息
常用选项:
-p :显示进程的PID
-u :显示进程的所属用户
介绍: 服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。
service管理指令:
service 服务名 [start | stop | restart | reload | status]
在CentOS7.0后 不再使用service ,而是 systemctl
使用案例:
1.查看当前防火墙的状况,关闭防火墙和重启防火墙。
查看:service iptables status
关闭:service iptables stop
开启:service iptables start
查看端口是否在监听和是否可用
基本语法
telnet ip地址 端口号
查看所有服务
所有服务可以在 /etc/init.d/ 目录下找到
服务的运行级别也是0-6个,和上述运行界别一致
服务可以通过运行级别设置是否自启动
设置服务是否自启动
chkconfig指令
介绍
通过chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭
基本语法
1.查看服务在所有状态是否自启动 chkconfig --list
2.chkconfig [服务名] --list
3.chkconfig --level 5 服务名 on/off
进程监控指令
介绍:
top与ps命令很相似。它们都用来显示正在执行的进程。Top与ps最大的不同之处,在于top
在执行一段时间可以更新正在运行的的进程。
基本语法:
top [选项]
交互操作
参数解释
top - 04:55:10 表示当前的时间
up 5:35 表示系统的运行时间
2 users 表示目前后三个用户在线上
load average:0.19,0.13,0.07,表示负载均衡,如果三个的平均值大于0.7,就需要优化。
Tasks: 197 total,1 running, 196 sleeping,0stoped,0 zombie 表示目前任务的数量一共有197个,1一个正在运行,0个停止,0个僵尸进程
Cpu(s):0.2%us,0.0%sy,0.0%ni,99.8%id
表示Cpu的占用率为0.2%,系统占用0.0%,有99.8%可用
Men:total,used,free,buffers
内容总共大小,已使用大小,可用大小,缓存区大小
应用实例:
案例1.监视特定用户
top:输入此命令,按回车键,查看执行的进程。
u:然后输入“u”回车,再输入用户名,即可。
案例2:终止指定的进程。
top:输入此命令,按回车键,查看执行的进程。
k:然后输入“k”回车,再输入要结束的进程ID号。
案例3:指定系统状态更新的时间(每隔10秒自动更新)
top -d 10
查看系统网络情况netstat
基本语法
netstat [选项]
选项说明
-an 按一定顺序排列输出
-p 显示哪个进程在调用
应用案例
请查看服务名为 sshd 的服务的信息。
(netstat -anp | grep sshd)
检测主机连接
基本语法
ping
是一种网络检测检测工具,它主要是用检测远程主机是否正常,或是两部主机间的介质是否为断、网线是否脱落或网卡故障。
rpm包的管理
介绍:
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。
Linux的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。
rpm包的简单查询指令:
查询已安装的rpm列表 ( rpm –qa|grep xx)
rpm包名基本格式:
一个rpm包名: firefox-45.0.1-1.el6.centos.x86_64.rpm
名称:firefox
版本号:45.0.1-1
适用操作系统: el6.centos.x86_64
表示centos6.x的64位系统
如果是i686、i386表示32位系统,noarch表示通用。
rpm包的其它查询指令:
rpm -qa :查询所安装的所有rpm软件包
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox
rpm -q 软件包名 :查询软件包是否安装
rpm -q firefox
rpm -qi 软件包名 :查询软件包信息(版本号)
rpm -qi firefox
rpm -ql 软件包名 :查询软件包中的文件(安装文件)
rpm -ql firefox
rpm -qf 文件全路径名 查询文件所属的软件包(从文件查询软件)
rpm -qf /etc/passwd
rpm -qf /root/install.log
卸载rpm包
基本语法
rpm -e RPM包的名称
应用案例
删除firefox 软件包
细节讨论
1.如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息。
如: $ rpm -e foo
removing these packages would break dependencies:foo is needed by bar-1.0-1
2.如果我们就是要删除 foo这个rpm 包,可以增加参数 --nodeps ,就可以强制删除,但是一般不推荐这样做,因为依赖于该软件包的程序可能无法运行
如:$ rpm -e --nodeps foo
yum包管理
介绍:
Yum 是一个Shell前端软件包管理器。基于RPM包管理,能够从指定 的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并 且一次安装所有依赖的软件包。
yum的基本指令
查询yum服务器是否有需要安装的软件
yum list | grep xx软件
yum install xxx 下载安装