Linux快速入门
一、网络
1.查看ip地址
ip addr [show]
2.为linux安装网卡驱动
适用于centos7的命令
cd /
cd etc
cd sysconfig
cd network-scripts
vi ifcfg-ens33
输入i修改文件
ONBOOT=yes
esc
:wq保存退出
3.远程连接linux
使用SSH(Secure Shell)连接工具,建立在应用层基础上的安全协议。
二、系统
1.目录介绍
- bin:存放二进制可执行文件
- boot:存放系统引导时使用的各种文件
- dev:存放设备文件
- etc:存放系统配置文件
- home:存放系统用户文件
- lib:存放程序运行所需的共享库和内核模块
- opt:额外安装的可选应用程序包所放置的位置
- root:超级用户目录
- sbin:存放二进制可执行文件,只有root用户可以访问
- tmp:存放临时文件
- usr:存放系统应用程序
- var:存放运行时需要改变数据的文件,例如日志文件
三、常用命令
1.基本命令
命令 | 对应英文 | 作用 |
---|---|---|
ls | list | 查看当前目录下的文件 |
pwd | print work directory | 查看当前所在目录 |
cd 目录名 | change directory | 切换目录 |
touch 文件名 | touch | 如果文件不存在则创建文件 |
mkdir 目录名 | make directory | 创建目录 |
rm 文件名 | remove | 删除指定文件 |
如果提示信息出现乱码,则执行以下命令:
echo 'LANG="en_US.UTF-8"' >> /etc/profile
source /etc/profile
2.使用命令技巧
- tab自动补全
- 连续两次tab出现提示信息
- 使用上下键快速调用曾经使用过的命令
- 使用clear命令或ctrl+l快捷键实现清屏
3.命令格式
command [-options] [parameter]
参数可以有多个
4.文件目录操作命令
-
ls [-al] [dir]
-
-a:显示所有文件及目录,包括.开头的隐藏文件
-
-l:同时显示文件详细信息
-
dir:指定目录
ls -al简写:ll
-
-
cd [dirName]
- ~表示当前用户的home目录
- .表示目前所在目录
- …表示目前所在目录的上级目录
-
cat [-n] fileName
查看文件内容
- -n:对行数编号
-
more fileName
分页查看文件内容
- 回车:向下滚动一行
- 空格键:向下滚动一屏
- b:返回上一屏
- q or ctrl+c:退出more
-
tail [-f]|[-number] fileName
查看文件末尾内容
- -f:动态读取文件末尾内容,通常用于日志文件的内容输出
- -number:指定末尾几行的内容,默认10行
-
mkdir [-p] dirName
-
-p:parent,确保目录名称存在,若不存在则创建,可以实现多级目录同时创建
-
rmdir [-p] dirName
删除空目录
- -p:当子目录被删除后父目录为空时,一并删除
- rmdir name*:删除名称以name开头的空目录
-
rm [-rf] name
- -r:递归删除,将目录以及目录下文件逐一删除
- -f:无需确认,直接删除
-
cp [-r] source dest
拷贝复制移动(复制粘贴)
- -r:递归复制
- 可以复制移动并重命名
-
mv source dist
拷贝移动,为文件或目录重命名或移动位置(剪切粘贴)
-
tar [-zcxvf] fileName [files] [-C 目录]
对文件进行打包、解包、压缩、解压
.tar包是只打包
.tar.gz表示打包同时压缩
- -z:gzip,对文件压缩或解压
- -c:create,创建新的包文件
- -x:extract,从包文件中还原文件
- -v:verbose,显示命令执行过程
- -f:file,指定包文件的名字
- -C:指定解压后的存放地址
常用组合:
- -cvf:打包
- -czvf:打包压缩
- -xvf 目标包:解包
- -zxvf 目标包:解压解包
5.文本编辑命令vi/vim
-
安装vim(ubuntu)
apt-get install vim
-
vim fileName
编辑文件内容,如果指定文件不存在则新建文件
-
命令模式
-
可以查看文件内容,移动光标
- 上下左右箭头
- gg:移动到文件开头
- G:移动到文件末尾
-
默认进入命令模式
-
要切换模式,必须进入命令模式
-
-
插入模式
- 可以对文件编辑
- 在命令模式下按下[i, a, o]任意一个,进入插入模式
- 按下ESC,进入命令模式
-
底行模式
- 对文件内容查找,显示行号和退出
- 按下[:, /]任意一个,进入底行模式
- /方式进入,可以查找
- :方式进入,可以输入wq(保存并退出)、q!(不保存退出)、set nu(显示行号)
6.查找命令
-
find dirName -option “fileName”
在指定目录下查找文件
- -option:查找类型,比如name
-
grep word fileName
从指定文件中查找指定的文本内容
四、软件安装
1.软件安装方式
- 二进制发布包安装:软件已经针对对应平台编译打包发布,只要解压,修改配置即可
2.安装jdk
-
将jdk压缩包压缩到/usr/local目录下
-
配置环境变量/etc/profile
将以下配置添加到文件末尾
JAVA_HOME=/usr/local/jdk1.8.0_171 PATH=$JAVA_HOME/bin:$PATH
-
重新加载profile文件
source /etc/profile
-
测试系统Java环境
java -version
3.安装Tomcat
-
安装方法与安装jdk类似
-
在bin目录下启动服务器
sh startup.sh ./startup.sh
-
验证启动是否成功
-
查看启动日志
tail -50 /usr/local/apache-tomcat-7.0.57/logs/catalina.out
-
查看进程状态
ps -ef|grep tomcat
- ps -ef:查看系统所有进程信息
- |:管道符,将前一个命令的结果输出给后一个命令作为输入
-
-
停止服务器
-
运行脚本文件
sh shutdown.sh ./shutdown.sh
-
结束进程
kill -9 进程id
-
4.安装MySQL
-
安装命令(ubuntu)
sudo apt install mysql-server
-
查看进程状态
服务默认开机自启动
ps -ef|grep mysqld
-
查看mysql账号密码
sudo cat /etc/mysql/debian.cnf
-
进入mysql
sudo mysql
-
重置root账号的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
-
刷新权限
FLUSH PRIVILEGES;
-
设置远程root用户
参考以下网站:https://segmentfault.com/a/1190000039203507
5.安装lrzsz
文件上传工具,可上传windows文件到linux
-
安装命令
sudo apt-get install lrzsz
-
文件上传
rz
五、在windows下访问linux的服务
1.linux防火墙操作
有些linux自带了防火墙功能,阻断了其他设备对linux服务器的访问,需要手动关闭服务器。
为保证系统安全,不建议关闭防火墙,可以选择开放特定端口。
-
查看防火墙状态
systemctl status firewalld firewall-cmd --state
- systemctl:管理linux中服务命令,可以对服务进行启动、停止、重启、查看状态等操作
- firewall-cmd:linux中控制防火墙的命令
-
暂时关闭防火墙
systemctl stop firewalld
-
永久关闭防护墙
systemctl disable firewalld
-
开启防火墙
systemctl start firewalld
-
开放指定端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
-
关闭指定端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
-
立即生效
firewall-cmd --reload
-
查看开放的端口号
firewall-cmd --zone=public --list-ports
-
设置开机自启动
systemctl enable firewalld
2.服务相关命令
-
查看已启动的服务
netstat -tunlp
六、项目部署
1.手动部署项目
-
向linux传输项目jar包
-
启动SpringBoot程序
java -jar jar包名
注意:linux的jdk版本需要与项目jdk版本一致
-
改为后台运行
nohup java -jar jar包 &>hello.log &
no hang up,不挂起,退出终端也不会影响程序的运行,将日志输出到日志文件
语法格式:
nohup Command [Arg...] &
- &:让命令在后台运行
-
停止服务
ps -ef|grep 'java -jar' kill -9 进程id
2.使用shell自动部署项目
-
安装git
apt-get install git
-
使用git克隆远程仓库
-
安装maven,注意配置全局变量
-
编写sh shell脚本
-
为用户授权
chmod ### fileName
change mode,控制用户对文件的权限
-
权限分为:读®、写(w)、执行(x)。
-
文件调用权限分级:文件所有者(Owner) 、用户组(Group)、其它用户(Other Users)。三位数字表示不同权限。
-
只有文件的所有者和超级用户可以修改文件或和目录的权限。
-
要执行shell脚本需要对其有执行权限,否则不能执行。
-
# rwx 0 — 1 –x 2 -w- 3 -wx 4 r– 5 r-x 6 rw- 7 rwx
-
-
启动shell脚本(两种方法)
sh startup.sh ./startup.sh
3.设置静态ip地址
修改配置为静态ip,手动设置ip地址,重启网络服务
systemctl restart network