黑马程序员WEB20Linux笔记.docx
《黑马程序员WEB20Linux笔记.docx》由会员分享,可在线阅读,更多相关《黑马程序员WEB20Linux笔记.docx(18页珍藏版)》请在冰豆网上搜索。
黑马程序员WEB20Linux笔记
·
第23章WEB23-Linux篇
1.1Linux的概述:
1.1.1什么是Linux:
1.1.1.1学习Linux之前先了解Unix
Unix是一个强大的多用户、多任务操作系统。
于1969年在AT&T的贝尔实验室开发。
UNIX的商标权由国际开放标准组织(TheOpenGroup)所拥有。
UNIX操作系统是商业版,需要收费,价格比MicrosoftWindows正版要贵一些。
1.1.1.2Linux的概述:
Linux是基于Unix的
Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。
Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机
>
诞生于1991年10月5日。
是由芬兰赫尔辛基大学学生LinusTorvalds和后来加入的众多爱好者共同开发完成
1.1.1.3Linux的历史:
Linux最初是由芬兰赫尔辛基大学学生LinusTorvalds由于自己不满意教学中使用的MINIX操作系统,所以在1990年底由于个人爱好设计出了LINUX系统核心。
后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操作系统.
1.1.1.4Linux系统的应用:
服务器系统
Web应用服务器、数据库服务器、接口服务器、DNS、FTP等等;
\
嵌入式系统
路由器、防火墙、手机、PDA、IP分享器、交换器、家电用品的微电脑控制器等等,
高性能运算、计算密集型应用
Linux有强大的运算能力。
桌面应用系统
移动手持系统
1.1.1.5Linux的版本
Linux的版本分为两种:
内核版本和发行版本;
内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号;
发行版本是一些组织和公司根据自己发行版的不同而自定的;
1.1.1.6Linux的主流版本
1.2-
1.3Linux的安装:
1.3.1虚拟机安装:
1.3.1.1什么是虚拟机
虚拟机:
一台虚拟的电脑.
虚拟机软件:
*VmWare:
收费的.
*VirtualBox:
免费的.
1.3.1.2安装VmWare
~
参考《虚拟软件vmware安装.doc》
1.3.2CentOS的安装
参考《CentOS6详细安装文档.doc》
1.3.3Linux的目录结构:
root管理员的home目录root
其他用户的home目录home目录中
1.4【
1.5Linux的常用命令
1.5.1切换目录命令cd:
使用
cdapp切换到app目录
cd..切换到上一层目录
cd/切换到系统根目录
cd~切换到用户主目录
cd-切换到上一个所在目录
1.5.2列出文件列表:
lslldir(*****)
ls(list)是一个非常有用的命令,用来显示当前目录下的内容。
配合参数的使用,能以不同的方式显示目录内容。
格式:
ls[参数][路径或文件名]
常用:
`
在linux中以.开头的文件都是隐藏的文件
*ls
*ls-a显示所有文件或目录(包含隐藏的文件)
*ls-l缩写成ll
1.5.3创建目录和移除目录:
mkdirrmdir
mkdir(makedirectory)命令可用来创建子目录。
mkdirapp在当前目录下创建app目录
mkdir–papp2/test级联创建aap2以及test目
$
rmdir(removedirectory)命令可用来删除“空”的子目录:
rmdirapp删除app目录
1.5.4浏览文件
【cat、more、less】
cat
用于显示文件的内容。
格式:
cat[参数]<文件名>
*cat
more
一般用于要显示的内容会超过一个画面长度的情况。
按空格键显示下一个画面。
回车显示下一行内容。
`
按q键退出查看。
*more
*空格显示下一页数据回车显示下一行的数据
less
用法和more类似,不同的是less可以通过PgUp、PgDn键来控制。
*less
*PgUp和PgDn进行上下翻页.
【tail】
…
tail命令是在实际使用过程中使用非常多的一个命令,它的功能是:
用于显示文件后几行的内容。
用法:
tail-10/etc/passwd查看后10行数据
tail-f动态查看日志(*****)
ctrl+c结束查看
1.5.5文件操作:
—
【rm】
rm删除文件
用法:
rm[选项]...文件...
rm删除文件
删除需要用户确认,y/n
rm删除不询问
rm-f不询问,直接删除
rm删除目录
rm-ra递归删除
不询问递归删除(慎用)
rm-rfa不询问递归删除
~
rm-rf*删除所有文件
rm-rf/*自杀
【cp、mv】
cp(copy)命令可以将文件从一处复制到另一处。
一般在使用cp命令时将一个文件复制成另一个文件或复制到某目录时,需要指定源文件名与目标文件名或目录。
cp将复制为文件
cp../将文件复制到上一层目录中
mv移动或者重命名
*
mv../将文件移动到上一层目录中
mv将文件重命名为
【tar】命令:
(*****打包或解压)
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。
一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成或称为的文件。
常用参数:
-c:
创建一个新tar文件
-v:
显示运行过程的信息
-f:
指定文件名
-z:
调用gzip压缩命令进行压缩
-t:
查看压缩文件的内容
-x:
解开tar文件
:
打包:
tar–cvf./*
打包并且压缩:
tar–zcvf./*
解压
tar–xvf
tar-xvf-C/usr/aaa
]
【grep】命令
查找符合条件的字符串。
用法:
grep[选项]...PATTERN[FILE]...
示例:
greplang在文件中查找lang
greplang–color高亮显示
,
1.5.6其他常用命令
【pwd】
显示当前所在目录
【touch】
^
创建一个空文件
*touch
【ll-h】
友好显示文件大小
【wget】
下载资料
1.6*wgetdownload/和Vim编辑器
1.6.1Vim编辑器:
]
在Linux下一般使用vi编辑器来编辑文件。
vi既可以查看文件也可以编辑文件。
三种模式:
命令行、插入、底行模式。
切换到命令行模式:
按Esc键;
切换到插入模式:
按i、o、a键;
i在当前位置生前插入
I在当前行首插入
a在当前位置后插入
A在当前行尾插入
o在当前行之后插入一行
$
O在当前行之前插入一行
切换到底行模式:
按:
(冒号);
更多详细用法,查询文档《Vim命令合集.docx》和《vi使用方法详细介绍.docx》
打开文件:
vimfile
退出:
esc:
q
修改文件:
输入i进入插入模式
}
保存并退出:
esc:
wq
不保存退出:
esc:
q!
3中进入插入模式:
i:
在当前的光标所在处插入
o:
在当前光标所在的行的下一行插入
a:
在光标所在的下一个字符插入
~
快捷键:
dd–快速删除一行
R–替换
1.6.2重定向输出>和>>
>重定向输出,覆盖原有内容;
>>重定向输出,又追加功能;
示例:
cat/etc/passwd>将输出定向到中
cat/etc/passwd>>输出并且追加
^
ifconfig>
1.6.3管道|
管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。
示例
ls--help|more分页查询帮助信息
ps–ef|grepjava查询名称中包含java的进程
ifconfig|more
|
cat|more
ps–ef|grepaio
1.6.4&&命令执行控制:
命令之间使用&&连接,实现逻辑与的功能。
只有在&&左边的命令返回真(命令返回值$==0),&&右边的命令才会被执行。
只要有一个命令返回假(命令返回值$==1),后面的命令就不会被执行。
mkdirtest&&cdtest
1.6.5《
1.6.6网络通讯命令
ifconfig显示或设置网络设备。
ifconfig显示网络设备
ifconfigeth0up启用eth0网卡
ifconfigeth0down停用eth0网卡
ping探测网络是否通畅。
ping
netstat查看网络端口。
netstat-an|grep3306查询3306端口占用情况
1.6.7系统管理命令
《
date显示或设置系统时间
date显示当前系统时间
date-s“2014-01-0110:
10:
10“设置系统时间
df显示磁盘信息
df–h友好显示大小
free显示内存状态
free–m以mb单位显示内存组昂头
top显示,管理执行中的程序
clear清屏幕
ps正在运行的某个进程的状态
#
ps–ef查看所有进程
ps–ef|grepssh查找某一进程
kill杀掉某一进程
kill2868杀掉2868编号的进程
kill-92868强制杀死进程
du显示目录或文件的大小。
du–h显示当前目录的大小
who显示目前登入系统的用户信息。
(
hostname查看当前主机名
修改:
vi/etc/sysconfig/network
uname显示系统信息。
uname-a显示本机详细信息。
依次为:
内核名称(类别),主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称
1.7Linux的用户和组
1.7.1用户的管理
useradd添加一个用户
useraddtest添加test用户
<
useraddtest-d/home/t1指定用户home目录
passwd设置、修改密码
passwdtest为test用户设置密码
切换登录:
ssh-ltest-p22
su–用户名
…
userdel删除一个用户
userdeltest删除test用户(不会删除home目录)
userdel–rtest删除用户以及home目录
1.7.2组管理:
当在创建一个新用户user时,若没有指定他所属于的组,就建立一个和该用户同名的私有组
创建用户时也可以指定所在组
groupadd创建组
groupaddpublic创建一个名为public的组
)
useraddu1–gpublic创建用户指定组
groupdel删除组,如果该组有用户成员,必须先删除用户才能删除组。
groupdelpublic
1.7.3id,su命令
【id命令】
功能:
查看一个用户的UID和GID
用法:
id[选项]...[用户名]
$
直接使用id
直接使用id用户名
【su命令】
功能:
切换用户。
用法:
su[选项]...[-][用户[参数]...]
示例:
suu1切换到u1用户
su-u1切换到u1用户,并且将环境也切换到u1用户的环境(推荐使用)
【账户文件】
`
/etc/passwd用户文件
/etc/shadow密码文件
/etc/group组信息文件
【用户文件】
root:
x:
0:
0:
root:
/root:
/bin/bash
账号名称:
在系统中是唯一的
用户密码:
此字段存放加密口令
用户标识码(UserID):
系统内部用它来标示用户
组标识码(GroupID):
系统内部用它来标识用户属性
用户相关信息:
例如用户全名等
用户目录:
用户登录系统后所进入的目录
用户环境:
用户工作的环境
【密码文件】
shadow文件中每条记录用冒号间隔的9个字段组成.
用户名:
用户登录到系统时使用的名字,而且是惟一的
口令:
存放加密的口令
最后一次修改时间:
标识从某一时刻起到用户最后一次修改时间
最大时间间隔:
口令保持有效的最大天数,即多少天后必须修改口令
最小时间间隔:
再次修改口令之间的最小天数
警告时间:
从系统开始警告到口令正式失效的天数
不活动时间:
口令过期少天后,该账号被禁用
失效时间:
指示口令失效的绝对天数(从1970年1月1日开始计算)
标志:
未使用
【组文件】
root:
x:
0:
组名:
用户所属组
组口令:
一般不用
GID:
组ID
用户列表:
属于该组的所有用户
1.8Linux的权限命令
1.8.1(
1.8.2文件权限
属组(group)
其他用户
r
w
x
r
w
x
r
w
x
4
2
1
4
2
1
4
2
1
1.8.3Linux三种文件类型:
普通文件:
包括文本文件、数据文件、可执行的二进制程序文件等。
目录文件:
Linux系统把目录看成是一种特殊的文件,利用它构成文件系统的树型结构。
设备文件:
Linux系统把每一个设备都看成是一个文件
1.8.4文件类型标识
普通文件(-)
目录(d)
符号链接(l)
*进入etc可以查看,相当于快捷方式
字符设备文件(c)
块设备文件(s)
套接字(s)
命名管道(p)
1.8.5文件权限管理:
chmod变更文件或目录的权限。
chmod755
chmodu=rwx,g=rx,o=rx
chmod000/chmod777
chown变更文件或目录改文件所属用户和组
chownu1:
public:
变更当前的目录或文件的所属用户和组
chown-Ru1:
publicdir:
变更目录中的所有的子目录及文件的所属用户和组