linux学习笔记资料.docx
- 文档编号:22981235
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:23
- 大小:415.48KB
linux学习笔记资料.docx
《linux学习笔记资料.docx》由会员分享,可在线阅读,更多相关《linux学习笔记资料.docx(23页珍藏版)》请在冰豆网上搜索。
linux学习笔记资料
Linux系统快速入门
1学习目标:
建立对linux的基本认识
掌握常用linux命令的使用
掌握linux中常用的配置文件
掌握linux中应用软件或服务的安装方法
2linux简介
Linux是一种自由和开放源码的操作系统
Linux出现于1991年,是由芬兰赫尔辛基大学学生LinusTorvalds和后来加入的众多爱好者共同开发完成
市场上存在着许多不同的Linux发行版本
Linux可安装在各种计算机硬件设备中,比如笔记本电脑、台式计算机、手机、平板电脑、路由器等。
Linux系统最擅长的领域是作服务器操作系统和嵌入式操作系统
发行版的选择:
Linux发行版
主流企业级服务器Linux系统是RedHat或者CentOS;
RedHat企业版linux和CentOS差别不大,CentOS是基于RedHatLinux企业版开发的一个社区版本,可免费自由使用;而且CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RedHat那样需要花钱购买支持服务!
3linux系统安装
✓首先,到相应发行版的官网下载linux安装光盘镜像(按硬件平台选择相应版本)
✓在物理机或者虚拟机上安装linux系统
在物理机上安装linux系统跟安装windows系统的步骤类似
而在虚拟机上则支持“傻瓜式”安装,几乎全自动
虚拟机:
用软件模拟出来的虚拟计算机
虚拟机软件:
用来创建和运行虚拟计算机的一个软件,比如Vmware或VirtualBox
✓在虚拟机上的安装步骤:
1、启动Vmware
2、点击创建虚拟机
3、选择典型配置
4、选择linux操作系统“安装光盘”的镜像文件
5、为即将安装的linux系统预设一个用户和登陆密码
6、为新创建的这台虚拟机设置名称及数据存放路径
7、设置分配给虚拟机的最大磁盘空间
8、点击finish完成虚拟机创建并启动
9、虚拟机启动并自动进入linux操作系统自动安装流程
4linux系统的远程登陆
服务器通常都是放置在专用的机房中管理,因而,直接在服务器上操作很不方便,生产实践中都是通过远程登录的方式来操作服务器
✓远程登录linux服务器需要客户端软件
常用的远程登录客户端软件有以下3款:
SecureCRT---推荐使用
Xshell
Putty
这些软件都是基于一种通用的安全通信协议进行远程登录:
SSH协议(安全外壳协议)
SSH协议要求对远程登录者进行身份验证,并有两种认证方式:
✧口令机制——即“用户名+密码”验证机制<默认机制>
✧密钥机制<需要配置才能生效>
✓如何远程登录linux服务器:
1、获知目标linux服务器的ip地址
2、客户端跟目标服务器两者能联网
3、需要一款支持SSH协议的客户端软件
4、服务器必须开启SSH服务
5、启动SSH客户端软件,填写目标服务器地址信息,如使用SecureCRT:
6、输入用户/密码进行登录
✓登录之后的提示符:
其中,
itcast是当前登陆者的用户名
localhost是本服务器的主机名
~是表示登陆者所处的当前工作目录为用户的主目录/home/itcast
5linux文件系统常用管理操作命令
Linux系统文件系统目录结构:
约定俗成:
bin(binaries)存放二进制可执行文件
sbin(superuserbinaries)存放二进制可执行文件,只有root才能访问
etc(etcetera)存放系统配置文件
usr(unixsharedresources)用于存放共享的系统资源
home存放用户文件的根目录
root超级用户目录
dev(devices)用于存放设备文件
lib(library)存放跟文件系统中的程序运行所需要的共享库及内核模块
mnt(mount)系统管理员安装临时文件系统的安装点
boot存放用于系统引导时使用的各种文件
tmp(temporary)用于存放各种临时文件
var(variable)用于存放运行时需要改变数据的文件
5.1基本命令
tips:
输入命令的时候多用tab键来补全,一方面可以加快速度,另一方面减少错误
1、文件夹操作
✧ls/path/查看目录信息
ls-l/path/查看详细信息,等价于ll
ls–a/path/查看隐藏文件
路径的表示方法有“相对路径”和“绝对路径”,比如,如果当前所处目录为/home/itcast
,要查看/home目录下的信息,可以有两种方法:
ls../
ls/home
✧pwd查看当前所处目录的绝对路径
✧cd/path切换目录(cd/),如果不带参数则切换到用户主目录~
✧mkdir./test创建文件夹
mkdir-pa/b/c如果要创建的文件夹的父目录不存在,则自动创建
✧rmdir删除空文件夹(只能删除空文件夹)
✧rm-r/a/b(删除非空文件夹)
删除文件
rmfilename(rm-r删除文件夹rm-rf强制删除文件或文件夹)
2、创建文件
常见的3种方式:
✧toucha.avi创建一个空文件
✧echo"itcastisthegreatestITSchool">itcast.txt把“>”左边的输出放到右边的文件里去
✧viblabla.txt用文本编辑器编辑一个文件并且保存
3、移动文件、修改文件名
✧mva/wenjian1.txtb/file1.txt(移动文件的同时还修改了文件名)
4、拷贝文件
✧cpsrcFiledestFile
5、查看文本文件内容
✧catlog.a.txt一次性显示整个文件内容
✧morelog.a.txt可以分页看(翻页:
空格,往回翻:
b,退出:
q或者Ctrl+C)
✧lesslog.a.txt不仅可以分页,还可以方便地搜索,回翻等操作(翻页:
空格,往回翻:
↑,往下翻:
↓,退出:
q或者Ctrl+C)
✧tail-10log.a.txt查看文件的尾部的10行
tail-fuser.log实时刷新显示文件的尾部,这条命令对于观察调试程序的运行非常重要
✧head-20log.a.txt查看文件的头部20行
5.2文件归档压缩(1:
打包--归档;2:
压缩)
1、打包/解包
tar-cvftestdir.tartestdir/
参数c:
表示创建一个打包文档
v:
显示打包的进度
f:
表示要打成的tar包的名字
tar–xvftestdir.tar
参数x:
表示从一个现存的tar文件中进行解包操作
2、压缩/解压
gziptestdir.tar
gzip–dtestdir.tar.gz
3、归档并压缩/解压
tar-czvftestdir.tar.gztestdir/
tar-xzvftestdir.tar.gz解压到当前目录下
tar-xzvftestdir.tar.gz-CDownloads/解压到指定的Downloads目录下
ziptest.txt.ziptest.txt
unziptest.txt.zip
5.3文件权限管理
1、linux系统中对文件权限的描述机制:
drwxrwxr-x
类型拥有者所属组其他人
权限信息可以表示为3组二进制符号:
111111101
进而可以表示为3个十进制数:
775
2、修改权限
chmodu+rwxfile为file添加或取消所属用户的权限
(u代表所属用户o代表其他用户g代表所属组的成员用户)
chmod567file用数字也可以表示权限
5--->101--->r-x
6--->110--->rw-
7--->111--->rwx
3、通过实例理解rwx三种权限的含义
r对文件:
是否可以读取文件的内容cat
对文件夹:
是否可以列出文件夹内的子节点信息ls
w对文件:
是否可以修改文件的内容>>vi
对文件夹:
是否可以更改文件夹的子节点
x对文件:
是否可当做一个命令或者程序来执行
对文件夹:
是否可cd进入
4、修改文件的所有者owner
只能由root权限才能操作
chownroot:
rootfile将file的所有者改成hadoop用户,所属组改成hadoop组
6用户管理
Linux用户分类:
✓超级用户:
(root,UID=0)
✓普通用户:
(UID在500到60000)
✓伪用户:
(UID在1到499)
✧系统和服务相关的:
bin、daemon、shutdown等
✧进程相关的:
mail、news、games等
✧伪用户不能登陆系统,而且没有宿主目录
6.1添加用户
基本示例:
useradditcast0830
必须设置密码才能正常登陆passwditcast0830
参数手册:
-u指定组ID(uid)
-g指定所属的组名(gid)
-G指定多个组,用逗号“,”分开(Groups)
-c用户描述(comment)
-e失效时间(expiredate)
6.2删除用户
userdelyun12----这样删除的时候,用户的主目录会被保留
userdel-ritcast-----删除用户的同时删除用户的主目录
6.3修改用户属性
指令:
usermod
参数:
-l修改用户名(login)usermod-lab(b改为a)
-g添加组usermod-gsystom
-d修改用户的宿主目录
-G添加多个组usermod-Gsys,roottom
-L锁定用户账号密码(Lock)
-U解锁用户账号(Unlock)
示例:
usermod-litcastitcast0508将itcast0508的登陆名改为itcast
usermod-grootitcast将itcast的组改为root组
usermod-Ghadoop,hellogrpitcast给itcast添加两个组hadoop,root
usermod-d/home/itcastitcast将itcast0830的主目录改成/home/itcast
(要事先创建itcast目录,并且拷入环境变量文件)
6.4用户组管理
用户组相关属性:
✧每个用户至少属于一个用户组
(创建新用户时如果不指定所属组,则会自动创建并归属到一个跟用户名同名的组)
✧每个用户组可以包含多个用户
✧同一个用户组的用户享有该组共有的权限
用户组管理操作命令:
1、创建用户组
groupaddjava
2、删除用户组
groupdelbigdata
3、修改用户组属性
groupmod–nnewnamegrpname
4、查看用所属的组
groupsitcast
6.5用户及用户组相关配置文件
1、用户配置信息存放位置:
✓保存用户信息的文件:
/etc/passwd
✓保存密码的文件:
/etc/shadow
passwd文件示例:
itcast:
x:
500:
500:
itcast:
/home/itcast:
/bin/bash
passwd文件各字段含义:
account:
password:
UID:
GID:
GECOS:
directory:
shell
shadow文件示例:
itcast:
$1$vRug41$UUxYzdP0i6s6wtUPieGDQ/:
18617:
0:
99999:
7:
:
:
shadow文件各字段含义:
用户名
登陆系统的用户名
密码
加密密码
最后一次修改时间
用户最后一次修改密码距现在的天数,从1970-1-1起
最小时间间隔
两次修改密码之间的最小天数
最大时间间隔
密码有效天数
警告时间
从系统警告到密码失效的天数
账号闲置时间
账号闲置时间
失效时间
密码失效的天数
标志
标志
2、用户组配置信息存放位置:
✓保存用户组的文件:
/etc/group
✓保存用户组密码的文件:
/etc/gshadow(设置组管理员时才有用)
7网络配置管理
7.1网卡地址配置
检查网络连通性:
pingdestip
查看ip地址
ifconfig查看所有网络设备的地址信息
ifconfigeth0查看指定的eth0以太网卡的地址信息
修改ip地址
ifconfigeth0192.168.2.150netmask255.255.255.0
通过setup修改网络配置
在root权限下执行setup指令可以打开一个带菜单的伪图形界面来修改网络配置
通过配置文件修改ip地址
vi/etc/sysconfig/network-scripts/ifcfg-eth0修改该配置文件即可改ip地址
[root@localhost~]#vi/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:
0c:
29:
f1:
b2:
e8#网卡物理地址
IPV6INIT=yes
NM_CONTROLLED=yes
ONBOOT=yes
TYPE=Ethernet
UUID="b3cd1ac3-aecf-4845-9812-9337135c072b"
IPADDR=192.168.2.199#IP地址
NETMASK=255.255.255.0#子网掩码
DNS2=8.8.8.8#域名服务器2
GATEWAY=192.168.2.1#网关
DNS1=192.168.2.1#域名服务器1
USERCTL=no
7.2主机名配置管理
在实际中,一个业务系统的服务器数量众多,服务器节点之间通信时使用主机名来标识比用ip地址更方便,但TCP/IP协议的寻址最终是通过IP来进行,因此,如果采用域名(主机名)来进行通信时需要一个“域名(主机名)——IP”的映射机制;
7.2.1主机名管理
1、查看主机名
在shell提示符的@后有显示
或者用hostname指令打印出主机名
2、修改主机名
vi/etc/sysconfig/network修改其中的hostname配置项:
HOSTNAME=hostnamenew
修改完成之后要重启服务器才能生效
要想立即生效,可以执行指令hostnamehostnamenew,然后注销重登陆
7.2.2主机名-IP映射
1、DNS
公网上有现成的DNS服务器,但是不能解析内网的私有域名(主机名),因而需要配置公司内部的私有DNS服务器,成本相对较高,实现起来比较麻烦
2、服务器本地映射
服务器网络寻址时默认是现在本地的hosts文件中查找IP映射,通过修改hosts来映射局域网内部的主机名非常方便
实现方法,将局域网内的每一台主机的“hostnamàip”写入每一台主机的hosts文件中:
vi/etc/hosts
192.168.2.150itcast-server-01
192.168.2.151itcast-server-02
192.168.2.152itcast-server-03
7.3网络服务启动与停止
✓列出系统所有应用服务状态
⏹service--status-all
✓查看指定服务运行状态:
⏹serviceservicenamestatus
✓启动服务:
⏹serviceservicenamestart
✓停止服务:
⏹serviceservicenamestop
✓列出所有服务的随机自起配置:
⏹chkconfig--list
✓关闭服务的随机自起:
⏹chkconfigservicenameoff
✓开启服务的随机自起:
⏹chkconfigservicenameon
✓常用示例:
⏹重启网络服务servicenetworkrestart
⏹停止httpdservicehttpdstop
⏹启动httpdservicehttpdstart
⏹关闭防火墙服务serviceiptablesstop
⏹关闭防火墙自动启动chkconfigiptablesoff
7.4查看网络连接信息
指令:
netstat
netstat常用示例:
netstat-natp
netstat-nltp
netstat-naup
常用参数解释:
-a显示所有连接和监听端口
-l只显示监听进程
-t(tcp)仅显示tcp相关选项
-u(udp)仅显示udp相关选项
-n拒绝显示别名,能显示数字的全部转化成数字。
-p显示建立相关链接的程序名
8常用系统管理指令
8.1磁盘/内存使用信息查看
df-h查看磁盘空间状态信息
du-sh*查看指定目录下所有子目录和文件的汇总大小
free查看内存使用状况
8.2进程管理
top查看实时刷新的系统进程信息
ps-ef查看系统中当前瞬间的进程信息快照
ps-ef|grepmyshell.sh搜索myshell进程的信息
kill-9pid杀掉进程(-9表示强制杀死)
8.3sudo权限的配置
root用户因为具有不受限制的权限,使用不慎可能对系统造成不可估量的损害,因而,生产实际中,轻易不要使用su去切换到root的身份
如果普通用户需要使用一些系统级管理命令,可以使用sudo来执行,比如sudovi/etc/profile
给普通用户赋予sudo权限,配置方法如下:
例如,要给hadoop用户赋予sudo任何指令(或某条指定的命令)的权利,则编辑sudoers文件vi/etc/sudoers
在其中加入需要赋予权限的用户(红色标识)
……
rootALL=(ALL)ALL
#让hadoop用户可以用root身份执行所有指令
hadoopALL=(ALL)ALL
#让itcast用户可以用root身份执行所有指令
ItcastALL=(root)/usr/sbin/useradd,/usr/bin/passwd
……
检查是否生效:
[root@itcast-server-01itcast]#sudo-lUitcast
Useritcastisnotallowedtorunsudoonitcast-server-01.
8.5常用工具指令
8.5.1vi编辑器
linux系统中最通用的文本编辑器
vihello.world进入文件编辑
进去之后处于非编辑模式,此时,要按一个i进入insert模式
在insert模式下,可以跟普通文本编辑器一样编辑内容
编辑完成之后,先按Esc退出insert模式,进入非编辑模式
然后再按:
进入底行命令模式,在底行命令中敲入wq并回车,即可保存
如果想不保存退出,底行命令就用q!
(保存文件的另一种模式:
编辑完后按Esc退出insert模式,然后直接按快捷键保存——shift+zz)
8.5.2修改系统的默认启动级别
vi/etc/inittab
#0-halt(DoNOTsetinitdefaulttothis)
#1-Singleusermode
#2-Multiuser,withoutNFS(Thesameas3,ifyoudonothavenetworking)
#3-Fullmultiusermode
#4-unused
#5-X11
#6-reboot(DoNOTsetinitdefaulttothis)
#
id:
3:
initdefault:
~
用level3就启动全功能状态的字符界面
在命令行模式下,用startx可以手动启动图形界面(在服务器上操作)
8.5.3其他指令
1、grep
grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本内容,并把匹配的行打印出来
示例:
grep‘EOF’./*
grep-c‘EOF’./*显示匹配到的行数
grep-r‘EOF’./*指定对子目录也进行搜索
grep-l‘EOF’./*只显示命中的文件名
grep-n‘EOF’./*显示命中的行号
grep-lr‘EOF’./*
grep-ldskip‘EOF’./*显示指定不要搜索子文件夹
参数含义:
-r递归搜索子目录
-l只列出有匹配行的文件名
-n列出匹配行的行号
-dskip不搜索子文件夹
常用grep跟其他命令组合使用来查找我们关心的信息
示例:
service--status-all|grep'httpd'
netstat-nltp|grep'22'
2、find
强大的查找工具,可根据文件名,文件所有者,创建时间,文件大小,文件类型,文件权限信息等各种条件来查找匹配的文件,功能非常强大,以下列出的是常用的几种示例:
按照文件名称查找(可支持正则表达式)
find./-name'*.txt'
find./-name‘install*’
按照文件类型查找
find./-typef
find./-typel
3、wc
统计文本信息(行数,词数,字符数)
wc-c/w/l/
4、其他
date查看或者修改系统的日期和时间
最常用参数示例:
date
date“+%Y%m%d”
date-s“2020-12-2010:
56:
00”
echo输出字符串或者变量的值
echo$str
whoami查询当前登陆者的身份
which查询指定命令的$PATH路径
9linux中的软件安装
9.1java软件安装
Jdk安装
将安装包解压到你的安装路径下
然后修改环境变量sudovi/etc/profile
然后source/etc/profile来生效
Tomcat
Eclipse安装
9.2RPM包安装
redhat公司的RPM(RedhatPackageManager)(RPMPackageManager)方式的包管理也是很常用的软件包管理器
示例:
Mysql安装
rpm-qa|grepmysql
sudorpm-emysql-libs-5.1.66-2.el6_3.i686--nodeps
sudorpm-ivhMySQL-server-5.1.73-1.glibc23.i386.rpm
9.3yum在线安装软件
yum可以通过线上软件仓库自动解决依赖并安装指定的软件包(RPM),示例如
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux 学习 笔记 资料