Linux 简介
- Linux 是一款操作系统、免费、开源、安全、稳定、处理高并发非常强悍
- Linux 创始人——林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布
VM 使用
-
安装前提:开机时按F2 去BIOS里修改设置开启虚拟设备支持(可能有的品牌电脑位置不同)将图形虚拟化技术开启
-
创建虚拟机(空间)
-
虚拟机的网络连接三种形式说明
- 桥接模式:在同一个网段方便和其他系统通信,但可能造成IP冲突
- NAT模式:网络地址转换方式,linux可以访问外网,不会造成IP冲突
- 仅主机模式:Linux是一个独立的主机,不能访问外网
VM Tools 安装
- CentOS版本国内镜像下载
- 需要安装vmtools作用:
- 可以直接粘贴命令在windows和centos系统之间
- 可以设置windows和centos的共享文件夹
- 安装步骤:
- 进入centos
- 点击vm菜单的->install vmware tools
- centos会出现一个vm的安装包
- 点击右键解压,得到一个安装文件
- 进入该vm解压的目录,该文件在 /root/桌面/vmware-tools-distrib/下
- 安装./vmware-install.pl
- 全部使用默认设置即可
- 一定要reboot重新启动即可生效
- 设置共享文件夹(默认centos在 /mnt/hgfs/)
Linux 介绍
目录介绍
- /lib:系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件,几乎所有的应用程序都需要用到这些共享库
- /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里有存放了一些文件
- /etc:所有的系统管理所需要的配置文件和子目录
- /usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录
- /boot:存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
- /proc:这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息
- /srv:service缩写,该目录存放一些服务启动之后需要提取的数据
- /sys:这是linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统
- /tmp:这个目录是用来存放一些临时文件的
- /dev:类似于windows的设备管理器,把所有的硬件用文件的形式存储
- /media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下
- /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/ 上,然后进入该目录就可以查看里的内容了
- /opt:这是给主机格外安装软件所摆放的目录,如安装oracle数据库就可以放到该目录下,默认为空
- /usr/local:这是另一个给主机额外安装软件所安装的目录,一般是通过编译源码方式安装的程序
- /var:这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下,包括各种日志文件
- /selinux:SELinux是一种安全子系统,它能控制程序只能访问特定文件
1):linux的目录中有且只有一个根目录 /
2):linux的各个目录存放的内容是规划好的,不要乱放文件
3):linux是以文件的形式管理我们的设备,因此linux系统,一切皆为文件
XShell 使用
- 使用Xshell 远程访问Linux系统前提需要Linux启用了SSHD的服务,该服务会监听22号端口
XFtp 使用
- 配置连接
- 如果Xshell以及连接会话那可以直接点击图中Xftp即可
Vi and Vim
Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计,代码补完及错误跳转等,方便编程的功能特别丰富
三种常见模式
- 正常模式
- 正常模式是使用vim打开文件时的默认模式,无论在哪种模式下,按下Esc键就会进入正常模式。在这个模式下,可以移动光标,删除某个字符,删除某行,复制多行,粘贴多行
- 插入模式/编辑模式
- 在正常模式下按下 i、a、o 键,都进入插入模式,插入模式里可以进行文字的输入,在该模式下按Esc键切换到正常模式
- 命令行模式
- 在正常模式下输入“:”或“/”进入命令行模式,在该模式下可以进行保存,搜索,替换,退出,显示行号等
- :wq >保存并退出
- :q >不保存并退出
- :q! >不保存并强制退出
快捷键使用
- 拷贝当前行 [yy],拷贝当前向下的行 [5yy],并粘贴 p
- 删除当前行 [dd],删除当前向下的5行 [5dd]
- 在文件中查找某个单词[命令行下 [/]关键词字,回车查找,输入[n]就是查找下一个]
- 显示文件的行号,取消文件的行号[命令行下 :set nu :setnonu]
- 使用快捷键到底文档的最末行[G]和最首行[gg]
- 撤销输入,先回到正常模式然后再按[u]撤销
- 将光标移动到第某行,先显示行号[:set nu],然后输入[20],再按[shift+g]
- 更多快捷键
Linux 入门
关机&重启命令
- shutdown
shutdown -h now
:表示立即关机shutdown -h 1
:表示1分钟后关机shutdown -r now
:表示立即重启
halt
:直接使用,等价于立即关机reboot
:重启系统sync
:把内存的数据同步到磁盘
当我们关机或重启系统时,都应该先执行 sync 指令,先进行保存
用户的登录和注销
-
登录时尽量少用root账号登录,因为它是系统管理员,拥有最大的权限,避免操作失误。可以利用普通用户登录,登录后再用
su - <用户名>
来切换成系统管理员身份 -
logout
:注销,是注销了远程连接
Linux 用户管理
添加用户
只有root用户才能添加删除用户
useradd [-d <目录名>] <用户名>
:添加用户useradd -g <组名> <用户名>
:添加用户时给定组名
passwd <用户名>
:为指定用户名设置密码(输入密码时,不会显示出来)userdel <用户名>
:删除用户保留家目录;userdel -r <用户名>
:不保留家目录
1)当创建用户成功后,会自动创建和用户同名的家目录
2)也可以通过useradd -d 指定目录 新的用户名,给新创建的用户指定家目录
3)删除用户时,一般不会将家目录删除掉
查询用户信息
-
id <用户名>
:查询当前用户名信息,没有则返回无此用户名
切换用户
再操作 Linux 中,如果当前用户的权限不够,可以通过 su - 指令,切换到高权限用户,比如root
su - <用户名>
:切换到指定用户名,当root进行切换时不需要输入密码;exit
:退出,回到上一个用户whoami/who am i
:我是谁,查看当前用户/查看初始登入用户
用户组
类似于角色,系统可以对有共性的多个用户进行统一的管理
groupadd <组名>
:创建组groupdel <组名>
:删除组
增加一个用户 wanan 时直接指定组名
useradd -g <组名> <用户名>
usermod -g <用户组> <用户名>
:修改用户组
Linux 实用指令
指定运行级别
- 0:关机
- 1:单用户【找回丢失密码】
- 2:多用户状态无网络服务
- 3:多用户状态有网络服务
- 4:系统未使用保留给用户
- 5:图像界面
- 6:系统重启
常用的运行级别是3 和 5,要修改这种默认的运行级别可改文件/etc/inittab的id:5:initdefault: 这一行中的数字
init <0|1|2|3|4|5|6>
:切换运行级别
找回密码
开机时按[ENTER]键进入选项,输入[e],选择第2项,再输入[e]再输入[ 1]进入1号运行级别,再输入[b]开始启动
- 使用
passwd root
:修改root用户密码
学会举一反三,当运行级别被别人恶意修改为 0 或 6 那么在开机时同样进入 单用户模式对inittab文件进行修改即可
帮助指令
当我们对某个指令不熟时,我们可以使用Linux提供的帮助指令来了解这个指令的使用方法
man <指令>
:查看哪个指令的用法help <指令> /<> --help
Linux 常用指令
光标快捷键
- **ctrl+左右键:**在单词之间跳转
- **ctrl+a:**跳到本行的行首
- **ctrl+e:**跳到页尾
- **ctrl+u:**删除当前光标前面的文字 (还有剪切功能)
- **ctrl+k:**删除当前光标后面的文字(还有剪切功能)
- **Ctrl+L:**进行清屏操作
- **Ctrl+y:**粘贴Ctrl+u或ctrl+k剪切的内容
- **Ctrl+w:**删除光标前面的单词的字符
- **Alt – d :**由光标位置开始,往右删除单词。往行尾删
文件目录类
pwd 指令
pwd
:显示当前工作目录的绝对路径
ls 指令
-
ls [选项]
:显示当前目录的信息- -a:显示当前目录所有文件和目录,包括隐藏的
- -l:以列表的方式显示信息
cd 指令
-
cd <路径地址>
:切换- / :回到根目录
- ~:回到家目录
- …:回到上一级
mkdir 指令
-
mkdir <目录名>
:用于创建目录- -p:创建多级目录
rmdir 指令
-
rmdir <目录名>
:删除目录(只能删除空目录)rm -rf <目录名>
:可以删除非空的目录
touch 指令
touch <文件名>
:创建一个空文件,如果要创建多个使用空格隔开即可
cp 指令
-
cp [选项] <source> <dest>
:拷贝文件到指定目录- -r:递归复制整个文件夹
- cp命令前面加上 \ 表示强制覆盖
rm 指令
-
rm [选项] <文件或目录>
:移除文件或目录- -r:递归删除整个文件夹
- -f:强制删除不提示
mv 指令
mv <oldNameFile> <newNameFile>
:移动文件或重命名
cat 指令
-
cat [选项] <文件名>
:查看文件内容- -n:显示行号
- 当文件内容过多,一般配合
cat -n <文件名> | more
分页显示内容,按空格继续
more 指令
-
more <文件名>
:基于VI编辑器的文本过滤器,它以全屏的方式按页显示文本文件的内容- CTRL+B:上一页
- CTRL+F:下一页
less 指令
-
less <文件名>
:功能与 more 类似,但是比more指令更加强大,支持各种显示终端,less 指令是显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率- 空格键:向下翻动一页
- ↑方向键:向上翻动行
- ↓方向键:向下翻动一行
- [/xx] 向下查找 [?xx] 向上查找 [q]退出
> 和 >> 指令
-
[>]指令和[>>]指令
ls -l > <文件>
:列表的内容写入文件a.txt中(覆盖写)ls -al >> <文件>
:列表的内容追加到a.txt的末尾cat <文件1> > <文件2>
:将文件1的内容覆盖到文件2echo "内容" >> <文件>
:内容追加到文件a.txt中
echo 指令
echo [选项] <输出内容>
:输出内容到控制台
head 指令
-
head <文件>
:用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容head -n 5 <文件>
:输出文件前5行
tail 指令
-
tail <文件>
:用于输出文件中尾部的内容,默认情况下 tail 指令显示文件后10行内容tail -n 5 <文件>
:输出文件后5行内容tail -f <文件>
:实时追踪该文档的所有更新,按[ctrl+c]退出追踪
ln 指令
ln
:软连接也叫符号连接,类似于windows里的快捷方式,主要存放了连接其他文件的路径ln -s <原文件或目录> <软链名>
:创建一个软连接- 删除软连接时,文件后面的 / 不要携带,否则删除失败提示资源忙
history 指令
history
:查看已经执行过历史命令history 10
:显示最近使用的10个指令! <历史指令编号>
:再次执行
时间日期类
date 指令
date
:显示当前时间- date +%Y 显示当前年份
- date +%m 显示当前月份
- date +%d 显示当前是哪一天
- date “+%Y-%m-%d %H:%M:%s”:显示年月日时分秒
date -s '时间'
:修改时间
cal 指令
cal
:查看日历指令cal 2020
:查看2020年的日历
搜索查找类
find 指令
find <搜索范围> [选项] <参数>
:查找指定范围的指定目录或文件名[-name] hello.txt
:按名称查找,查找hello.txt[-user] root
:按用户查找,查找root创建的目录或文件[-size] +20M
:按文件大小查找,查找大于20M的文件,[+]大于,[-]小于,没有就是等于
locate 指令
由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb
指令创建locate数据库,能够快速的定位到文件位置
locate <文件名>
:查找文件名
grep 指令
grep [选项]
:过滤查找- -n:显示匹配行和行号
- -i:忽略大小写
管道符
- 管道符[|]:表示将前一个命令的处理结果输出传递给后面的命令处理
压缩和解压类
gzip / gunzip 指令
gzip <文件>
:用于压缩文件,只能将文件压缩为.gz文件gunzip <文件.gz>
:解压缩文件命令
对文件进行压缩或者解压后,不会保留原文件
zip /unzip 指令
zip [选项] <xxx.zip> <要打包的文件目录>
:用于压缩文件和目录- -r:递归压缩,压缩整个目录
unzip <文件目录>
:解压文件- -d <目录>:解压文件后文件存放的目录
对文件进行压缩或者解压后,会保留原文件
tar 指令
tar [选项] <xxx.tar.gz> -C <要打包的目录>
:打包目录,压缩后的文件格式为.tar.gz- -c:产生.tar打包文件
- -v:显示详细信息
- -f:指定压缩后的文件名
- -z:打包压缩
- -x:解包.tar文件
- [-zcvf]配合使用进行压缩
tar -zcvf <xxx.tar.gz> <要压缩的目录文件>
- [-zxvf] 配合使用解压
tar -zxcf <xxx.tar.gz> -C <指定目录>
;没有指定目录时表示当前目录
指定解压的目录事先这个目录要存在
组管理和权限管理
ll -a
:查看所在目录全部文件目录包括隐藏文件
文件所有者 tom 所在组 police
管理组
改变文件所有者
chown <用户名> <文件>
:将文件的所有者改为指定用户名的
改变文件所在组
chgrp <组名> <文件名>
:修改指定文件的所在组
改变用户所在组
useradd -g <组名> <用户名>
:添加用户时给定组名usermod -g <用户组> <用户名>
:修改指定用户的组名
权限介绍
0-9位说明
- 第0位确定文件类型(d,-,l,c,b):
- -:普通文件
- d:目录
- l:软链接
- c:字符设备(键盘,鼠标)
- b:块文件(硬盘)
- 第1-3位确定所有者(该文件的所有者)拥有该文件的权限
- 第4-6位确定所属组(同用户组的)拥有该文件的权限
- 第7-9位确定其他用户拥有该文件的权限
rwx 权限详解
rwx 作用到文件
- r:(read)代表可读,查看
- w:(write)代表可修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件
- x:(execute)代表可以被执行
rwx 作用到目录
- r:代表可读,可以读取 ls 查看目录内容
- w:代表可写:可以修改,目录内创建+删除+重命名目录
- x:可以执行,可以进入该目录
数字表示
- r=4,w=2,x=1 因此rwx=4+2+1=7
权限管理
chmod
:可以修改文件或目录的权限
修改权限方式一:
-
u:所有者,g:所在组,o:其他人,a:所有人
-
#给所有者设置读、可执行的权限,给所在组实现读、可执行的权限,给其他组设置写、可执行的权限
chmod u=rx,g=rx,o=rwx apple.txt
-
#给所有者移除可执行的权限,所在组移除可执行的权限,其他组移除写、可执行的权限
chmod u-x,g-x,o-wx apple.txt
-
#给所有人读的权限
chmod a+r apple.txt
修改权限方式二:通过数字变更权限
- #给apple.txt的权限修改为rwxr-xr-x
chmod 755 apple.txt
修改文件所有者和所在组
- #将/home/apple.txt文件所有者改为tom
chown tom apple.txt
- #将/home/kkk目录下所有文件的目录的所有者都修改成tom
- 这个存在只有root才有权力执行
chown -R tom kkk/
- #将/home/kkk目录及下所有的文件和目录的所在组都改成kanan
chown -R kanan.kanan kkk/
定时任务调度
- 任务调度:是指系统在某个时间执行的特定的命令或程序。
- 任务调度分类:
- 1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
- 2.个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库备份
- 基本语法:
crontab [选项]
- -e:编辑crontab定时任务
- -l:查询crontab任务
- -r:删除当前用户所有的crontab任务
service crond restart
:重启任务调度
任务案例
crontab -e
:打开编辑定时任务- */1 * * * * ll /etc/ >> /tmp/to.txt
- 保存退出后则任务开始
- 在每一分钟就执行一次任务
- 特殊符号说明
- 第一个[*]表示分钟0-59
- 第二个[*]表示小时 0-23
- 第三个[*]表示日 1-31
- 第四个[*]表示月份1-12
- 第五个[*]表示周0-6或1-7
特殊符号 | 含义 |
---|---|
* | 代表任何时间。比如第一个[*]就代表一小时中每分钟都执行一次的意思 |
, | 代表不连续的时间。如[0 8,12,16 * * *]命令,就代表在每天的8点0分,12点0分,16点0分都执行一次命令 |
- | 代表连续的时间范围。比如[0 5 * * 1-6]命令,就表示在周一到周六的早上5点0分执行命令 |
*/n | 代表每隔多久执行一次。比如[*/10 * * * *]命令,代表每隔10分钟就执行一遍命令 |
任务练习
-
#每隔分钟将当前日期追加到/tmp/mydate文件中
- 创建一个/home/mytask1.sh 文件,在里面写入脚本 date >> /tmp/mydate
- 给 mutask1.sh 一个可以执行权限
chmod 744 /home/mytask1.sh
- 使用
crontab -e
开启任务,在里面编写 */1 * * * * /home/mytask1.sh - 任务开启成功
Linux 磁盘分区、挂载
mbr 分区
- 最多支持四个主分区
- 系统只能安装在主分区
- 扩展分区要占一个主分区
- MBR最大只支持2TB,但拥有最好的兼容性
gtp 分区
- 支持无限多个主分区(但操作系统可能限制,比如windows下最多128个分区)
- 最大支持18EB的大容量(EB=1024PB,PB=1024TB)
- windows7 64位以后支持gtp
Linux 分区
lsblk -f
:查看分区情况
如何添加一块硬盘
-
虚拟机添加硬盘
- 重启电脑
-
分区
fdisk /dev/sdb
-
格式化
mkfs -t ext4 /dev/sdb1
-
挂载
- 先创建一个目录
mkdir /home/newdisk
- 然后进行挂载
mount /dev/sdb1 /home/newdisk
- 挂载完成但是重启机器后,挂载失效了
- 先创建一个目录
-
设置自动挂载(永久挂载)
-
vim /etc/fstab
进入分区文件信息 -
添加一条挂载信息即可
-
-
卸载disk
umount /dev/sdb1
:卸载[/dev/sdb1]这个磁盘
磁盘情况查询
df -h
:查看系统整体磁盘使用情况du -h <目录>
:查询指定目录的磁盘占用情况- -s:指定目录占用大小汇总
- -h:带计量单位
- -a:含文件
- –max-depth=1:子目录深度
- -c:列出明细的同时,增加汇总值
磁盘情况-工作常用指令
- #统计/home文件夹下文件的个数
ls -l /home | grep "^-"| wc -l
- #统计/home文件夹下目录的个数
ls -l /home | grep "^d"| wc -l
- #统计/home文件夹下文件的个数,包括子文件里的
ls -lR /home | grep "^-"| wc -l
- #统计文件夹目录的个数,包括子文件夹里的
ls -lR /home | grep "^d"| wc -l
- 以树状显示目录结构
- 查看tree指令是否安装
rpm -qa tree
没有任何显示则未安装 yum -y install tree
:安装tree指令tree
- 查看tree指令是否安装
网络配置
查看/修改网络虚拟网络
查看网关
- ping 测试主机之间网络连通性
ping <IP地址>
自动获取连接
方式一
缺点:linux启动后会自动获取ip,缺点是每次自动获取的ip地址可能能不一样,这个不适用于做服务器,因为我们的服务器ip是需要固定的
方式二
直接修改配置文件来指定IP,并可以连接到外网,编辑vim /etc/sysconfig/network-scripts/ifcfg-eth0 要求:将ip地址配置静态的,ip地址位192.168.147.130
重启电脑reboot
查看系统网络情况
netstat [选项]
:查看系统所有的网络服务netstat -anp
:- -an:按一定顺序排列输出
- -p:显示哪个进程在调用
进程管理
在Linux中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号。
每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。
每一个进程都可能以两种方式存在,前台与后台,所谓的前台进程就是用户目前的屏幕上可以进行操作的,后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。
查看进程
-
ps [选项]
:查看系统中正在运行的进程ps -aux | more
:通常配合使用- -a:显示当前终端的所有进程信息
- -u:以用户的格式显示进程信息
- -x:显示后台进程运行的参数
-
ps -aux | grep <进程名>
:看看有没有某个进程服务 -
指令说明:System V展示风格
- USER:用户名称
- PID:进程号
- %CPU:进程占用CPU的百分比
- %MEM:进程占用物理内存的百分比
- VSZ:进程占用虚拟内存大小(单位:KB)
- RSS:进程占用的物理内存大小(单位:KB)
- TTY:终端名称,缩写
- STAT:进程状态,[S]表示睡眠,[s]表示该进程是会话的先导进程,[N]表示进程拥有比普通优先级更低的优先级,[R]正在运行,[D]短期等待,[z]僵死进程,[T]被跟踪或者被停止等等
- STARTED:进程的启动时间
- TIME:CPU时间,即进程使用CPU的总时间
- COMMAND:启动进行所用的命令和参数,如果过长会被截断显示
-
ps -ef | more
:以全格式显示当前所有进程- 指令说明:BSD风格
- UID:用户ID
- PID:进程ID
- PPID:父进程ID
- C:CPU用于计算执行优先级的因子,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表名进程是I/O密集型运算,执行优先级会提高
- STIME:进程启动的时间
- TTY:完整的终端名称
- TIME:CPU时间
- CMD:启动进程所用的命令和参数
-
pstree [选项]
:可以更加直观的查看进程信息- -p:显示进程的PID
- -u:显示进程的所属用户
终止进程 kill and killall
kill [选项] <进程号>
:通过进程号杀死进程killall <进程名称>
:通过进程名称杀死进程,支持通配符,这在系统因负载过大而变的很慢非常有用- -9:表示强制停止进程
踢掉某个非法登录的用户
- 先通过
ps -aux |grep sshd
查看当前进程找到非法登录的用户进程号
- 使用
kill -9 <进程号>
:直接踢掉用户
动态监控进程
top [选项]
- -d 秒数:指定top命令每隔几秒更新,默认是3秒在top命令的交互模式当中可以执行的命令
- -i:使top不显示任何闲置或者僵死进程
- -p:通过指定监控进程ID来仅仅监控某个进程的状态
- #查看指定用户进程
- 使用
top
命令回车 - 输入[u]再输入用户名
- 使用
- #终止指定进程
- 使用
top
命令回车 - 输入[k]再输入指定进程ID号
- 使用
- 输入[P]按PID排序,输入[M]按内存使用情况排序
服务管理
service <服务名> [start|stop|restart|reload|status]
- 在CentOS 7.0后 不再使用service,而是systemctl
- #查看当前防火墙状态,关闭防火墙和重启防火墙
-
service iptables stop
:关闭防火墙 -
service iptables start
:启动防火墙
- 可以再别的电脑通过[telnet ip地址 端口号]来测试是否开启
- 如果希望设置某个服务自动启动或关闭永久失效,要使用
chkconfig
指令
查看服务
setup
:图像查看既调整ll /etc/init,d/
:列出系统有哪些服务
chkconfig 指令
通过chkconfig命令可以给每个服务的各个运行级别设置自启动/关闭
chkconfig --list | grep <服务名>
:查看指定服务chkconfig <服务名> --list
:查看指定服务chkconfig --level 5 <服务名> [on/off]
:设置服务在运行级别5的情况下是否自启动
RPM
-
rpm -qa | grep <名称>
:查询已安装的rpm列表rpm -qa <名称>
:也支持查询安装的rpm列表
-
rpm -qi <名称>
:列出名称软件的信息 -
rpm -ql <名称>
:查看名称软件的安装路径和安装文件 -
rpm -qf <文件路径>
:查看此路径下的文件属于哪个软件包
rpm 包的管理
删除
rpm -e <包名称>
:卸载指定名称软件包- 如果其他软件包依赖于你要输出的软件,那么会提示错误信息
rpm -e --nodeps <包名称>
:强制删除被依赖的软件包
安装
rpm -ivh <PRM包全路径名称>
:安装软件- -i:(install)安装
- -v:(verbose)提示
- -h:(hash)进度条
- #安装firefox浏览器
- 找到firefox的安装rpm包,需要挂载上我们的安装centos的iso文件,默认在/media/CentOS_6.8_Final/Packge/目录下找rpm
- 将rpm包拷贝出来安装即可
YUM
yum 是一个Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包
- 使用前提,需要联网,因为yum服务器在公网
yum list | grep <软件>
:查询yum服务器是否有需要安装的软件yum -y remove <完整软件名>
:删除yum源yum install <软件包>
:下载指定软件包- 使用yum下载失败解决方法
JDK 安装和配置
通过 Xftp 直接传输软件或者使用共享文件夹也可以达到软件共享的目的
-
通过
cp <文件名> <dist目录>
将要解压的文件拷贝到/opt/ 目录下 -
使用
tar -zxvf <文件名> -C <指定目录>
进行解压 -
解压完成后
-
进行环境变量配置文件(/etc/profile)
-
vim /etc/profile
:进入配置文件 -
注销用户,在3运行级别直接logout,在5运行级则重新登陆
-
-
编写一个java测试文件
-
使用
javac <java文件名>
进行编译 -
使用
java <编译后的class文件名>
打印出结果则全部配置成功
Tomcat 安装和配置
-
通过 Xftp 直接传输软件或者使用共享文件夹也可以达到软件共享的目的
-
使用
tar -zxvf <指定安装包> -C <dist目录>
进行解压 -
解压完成后进入到bin目录下输入
./startup.sh
-
到浏览器输入http://localhost:8080/显示Tomcat首页即安装完成
- 也可以配置环境变量就不用再进入bin目录了
-
到外网上访问tomcat 服务失败,原因:linux防火墙未对8080端口放行
-
设置开发端口
vim /etc/sysconfig/iptables
:添加一条信息 -
重启防火墙才能生效
-