Linux

1、认知Linux

与Windows的不同:

  • Linux是严格区分大小写的,Windows无所谓。

  • Linux中一切皆是文件。

  • Linux中文件是没有后缀的,但是他有一些约定俗成的后缀。

  • Windows下的软件一般是无法直接运行的Linux中。


2、安装Linux

【注意】本教程采用虚拟机的方式进行安装(虚拟机为VirtualBox)

【注意】

1、如果有同学的电脑,只能选择32位的版本,需要改电脑的BIOS设置不同电脑设置方式不同,需要查询改正:品牌+型号不能安装Linux的64位系统

2、Linux系统的硬件要求:内存至少4个G,硬盘20个G

 

 

如果鼠标进入虚拟机,在实体机下找不到鼠标的光标,按又Ctrl,鼠标就从虚拟机下切出

【强调】开发在公司本地,但是用户的Linux服务器时远程的,本地需要安装一个远程控制Linux服                 务器的软件

需要知道远程服务器的IP地址

在Linux系统下,应用程序----》终端-----》输入命令ifconfig


3、Linux的目录结构

linux不分盘,没有盘符的概念

根目录:/

查看根目录下有哪些子目录:ls /

bin dev home lib64 mnt proc run srv tmp var boot etc lib media opt root sbin sys usr

目录结构解析:

  • root:该目录为系统管理员HOME目录

  • bin:这个目录下放着经常使用的命令

  • boot:这里存放的是启动Linux时的一些核心文件

  • etc:存放系统管理所需要的配置文件和子目录

  • home:普通用户的HOME目录

  • usr:默认安装软件的目录,类似Windows中的Program Files目录

  • opt:是主机额外安装软件拜访的目录

【说明】

1、在Linux系统中,只要创建一个用户,就会在home文件夹下创建一个和用户名同名的文件夹这个文件夹中,默认就会包含8个文件夹:公共 模板 视频 图片 文档 下载 音乐 桌面

2、用户之间没有权限去访问彼此的目录结构

3、root是管理员用户,有权查看所有目录


4、Linux常用命令

【说明】安装、配置软件所需要的命令

基本命令:

1、who am i                              查看当前用户

 2、pwd                                      查看当前所在目录

 3、 ip a 或者ip address             查看IP地址

 4、clear                                     清屏幕

 5、ping ip地址                           检查两台机器的网络是否连通

【说明】在Linux系统中通过ctrl+c 强制结束命令的执行

6、查看目录命令

ls                查看当前目录的文件

 ls -a            查看当前目录下的所有文件,包括隐藏文件(Linux下的隐藏文件以.开头)

 ls -l             列举出当前目录下文件的详细信息:文件类型 权限 所属用户 所属用户所在组 大小 时                     间等信息

 ls -d             仅查看目录本身

7、切换目录命令

cd                   具体路径 进入到对应的目录下

 cd ..                返回到上一级目录

 cd .                 进入当前目录

 cd /                 进入到根目录

 cd ~                进入到当前用户的主目录 /home/用户名的目录

8、创建目录命令

mkdir               目录名 创建单个目录

 mkdir -p           目录1/目录2 创建多级目录

9、删除目录

rmdir                 目录名 删除空目录

 rm -rf                 目录名 删除非空目录

 -r                       递归删除目录下的全部内容

-f                       不询问,直接删除

10、复制目录

cp -r                  来源目录 目标目录 把来源目录里的内容复制到目标目录中

 -r                       递归复制

11、目录的移动、重命名 找不到就给它改名 找到了就给它移过去

mv                                           目录名 新目录名或路径

 mv zhangsan ~/下载               把zhangsan及其子文件夹移动到当前用户的主目录的下载文件夹下

12、创建空文件

touch 文件名1 文件名2 ...         创建空文件    

 13、编辑文件

vi 文件名                                  相当于打开文件,还不能编辑

 输入 i   a  o                              可以进入到文件的编辑状态

i:                                            在当前光标进入编辑模式

a:                                          在当前光标后一格进入编辑模式

o:                                          在当前光标的下一行进入编辑模式

编辑完成后,摁esc键退出编辑状态

:wq 保存并退出

:q! 不保存并退出

【说明】vi命令,如果文件存在则打开这个文件

               如果文件不存在,则创建文件,然后打开

14、vi打开文件后的操作命令 

set nu                                        给每行文本添加行号

 to 行号                                              光标定位在指定行号的这一行

 set nonu                                                    取消行号的显示

 /                  要查找的文字或词语 把查找到的文字或词语使用背景色给标识出----重要

 G                                                       光标跳转到最后一行

gg                                                       光标跳转到第一行

15、查看文件 重要

cat 文件名 把文件的内容按正常的顺序显示在命令窗口中

 tac 文件名 把文件的内容按倒序的顺序显示在命令窗口中

 nl 文件名 添加行号的形式显示文件内容

 more 文件名 以分页的形式来显示文件(文件内容较多时使用)

 按 空格键 space 进行翻页---向下翻页

q 取消翻页操作,直接到命令行

less 文件名 大文件显示内容时,以分页形式显示,支持向上、向下翻页

 

pageup / fn + pageup           向上翻页

pagedown / fn + pagedown  向下翻页

q 取消翻页操作,回到命令行

head 文件名 只显示文件的前几行

 tail 文件名 只显示文件的最后几行

16、复制文件

cp 源文件 目标文件

 可以起别名

17、移动文件

mv 源文件 目标文件

18、文件重命名

mv 源文件名 新文件名

19、删除文件

rm ./文件名

20、打包

tar -zcvf 打包后的文件名 打包哪些文件

压缩:

 z:打包后的文件格式.gz

c: 压缩

v: 显示打包过程

f:放在最后,指定打包文件名

-C 指定路径

【说明】压缩多个文件 tar -vcvf 压缩后的文件名 文件1 目录1 文件2 目录2

tar -zvxf 压缩文件的名字

解压:

 x: 解压缩

【说明】解压到某个路径下

tar -zvxf jiaobaofile -C ./teacher

21、zip的压缩格式

安装zip程序,能够把文件打包成zip格式

yum -y install zip

 安装unzip程序,能够把zip格式的压缩文件进行解压

yum -y install unzip

 【说明】yum在线安装

需要管理员权限才能执行install操作,切换到root中

su 切换到root用户

zip 压缩包的名称 文件1 文件2 目录1 目录2

 unzip 压缩包 [-d 解压缩路径]

22、创建用户---了解

useradd -cgd 用户名

c:表示对用户的说明

g:用户所在组

d:用户的home目录

 

23、修改密码---了解

passwd 用户名 修改用户的密码

 

24、切换用户---重要

su ---切换到root用户

 su 用户名 ---切换到指定用户

 exit ---退出当前用户

25、删除用户

userdel -r 用户名 ---删除用户需要root管理员的权限

26、修改用户---了解

usermod -cgd 用户名

组:是用来管理用户的,类似于权限中的角色

27、创建用户组---了解

groupadd 组名

28、修改组的名称---了解

groupmod -n 用户组名

groupmod -n 新名字 原组名

29、删除组---了解

groupdel 组名

在使用 ls -l 进行文件或目录的查看时

30、关于权限:

r:读取内容

w:写入内容

x:执行

 第一个字母: d 标识目录 -标识文件

接下来的三个字符:当前用户的权限 rw-

再接下来的三个字符:同组的用户对此文件的权限

再接下来的三个字符: 不在同一组的用户的权限

所属用户:root

所属用户所在组 root组

文件大小:53

最后修改时间

文件名

改变权限:

方式1:符号方式,比较麻烦

chmod o=rw- baobao.bb 给和root用户不在同一组的其他用户分配对baobao.bb文件的读、写权限

chmod g=rw- baobao.bb 给和当前用户同一组的用户分配堆baobao.bb文件的读、写权限

chmod u=rw- baobao.bb 给当前用户分配对baobao.bb文件的读、写权限

chmod a=rw- baobao.bb 给所有用户分配对baobao.bb文件的读、写权限

方式2:数字方式,推荐使用

r:4          r--         0100    4

w:2        -w-        0010    2

x:1         --x         0001   1 

同时具备 读、写、执行权限的值就是7

chmod -R 777 文件或目录

第一个7:当前用户

第二个7:同组用户

第三个7:不同组用户

31、关于进程的命令

ps -ef 查看正在运行的进程

ps -grep 搜索的内容 搜索进程

kill -9 进程ID 杀死对应的进行

32、关于服务的命令

systemctl stop  (关)  start (开)   status (状态)  enable (可用) disable (不可用) 服务名

防火墙:firewalld 

stop

status

enable

disable

33、端口号查看命令

安装一个工具:netstat,能够查看某个端口是否被占用

yum -y install net-tools

netstat -naop 8080 查看 使用8080的网络服务

34、访问网址的命令、类似浏览器、

curl  http://www.baidu.com

 


5、安装JDK

1、把软件从windows下需要上传到Linux系统下 (存入到了 下载 的文件夹里)

2、需要把jdk 移动到 /usr/local目录下

【注意】由于/usr及其子目录只有root、管理员才可以操作,所以需要切换用户

3、解压jdk

 

4、删除掉原来的压缩包

5、通过java -version 发现使用的是安装系统时自带的开发工具jdk,需要通过配置环境变量来使用自己的jdk

6、进入到/etc中

7、通过vi编辑profile文件    

【注意】java环境变量的配置放置在此文件的最后进行 不要删除、修改原有文件内容

 在最后一行 unset -f pathmunge下进行编写

将Linux系统进行重启

重启后登录 输入java -version看是否进行更改

创建java程序

 

 

通过javac Hello.java进行编译

 

通过java Hello 进行运行


6、部署tomcat服务器

1、上传软件到Linux系统下

2、解压Tomcat

3、可以修改端口号---目录结构同windows下相同

        

 

 

4、启动服务        

cd ./bin 进入到bin目录下

 ./startup.sh 执行此文件启动服务

5、测试服务:Linux本机方法---成功

Windows远程访问---访问不了,因为Linux的防火墙

解决办法:关掉防火墙 systemctl stop firewalld

在防火墙中开发8080端口


7、打包、部署程序

模拟远程操作:程序在windows系统下,打包、部署到Linux系统下

和云服务器的操作方式都相同

1、ssm项目,经过测试,在Windows下好用

2、在项目下,添加 编译、打包部署的maven插件

<build>
    <plugins>
        <!--编译插件-->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.6.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
        <!--配置Tomcat插件-->
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <configuration>
                <path>/</path>
                <port>8082</port>
            </configuration>
        </plugin>
    </plugins>
</build>

可以进行编译

3、进入到Linux系统中,确保tomcat关闭

测试

4、进入到conf目录下,编辑tomcat-users.xml文件

 最后添加

manager-gui 代表图形用户管理 

manager-script  脚本

username:用户名

password:密码

roles中将 manager-gui 和 manager-script 用逗号分隔开 

作用:为了安全,在此文件中配置账号、密码,当部署到tomcat服务器里的程序时,必须提供账号、密码

5、重新启动服务

测试是否好使

 

6、进入到部署的管理页面---登录

输入IP地址 + 端口号 + manager text 

192.168.10.107:8080/manager/text

 输入账号和密码

第四步中的账号和密码

7、登录成功后,访问:http://192.168.10.107:8080/manager/html,进入到了部署管理页面

出现此页面说明用户配置成功

8、回到Windows下,准备打包部署,修改项目运行的maven中的settings配置文件,

新的tomcat服务器打开settings.xml文件是没有的需要自己写

9、回到项目的pom文件中,配置要部署项目服务器的url,账号、密码

<configuration>
     <!--linux中的ip地址 第六步的网址 -->
     <url>http://192.168.10.107:8080/manager/text</url>
     <!--linux中的tomcat版本号-->
     <server>tomcat7</server>
     <!--用户名 第四步中的用户名  -->
     <username>admin</username>
     <!--密码   第四步中的密码 -->
     <password>password</password>
     <!--设为true-->
     <ignorePackaging>true</ignorePackaging>
 </configuration>

10、双击maven的编译命令compiler:compile进行编译

11、使用mven的tomcat插件打包、部署  双击tomcat7:deploy

热部署:linux中的tomcat不重启的情况下部署到服务器中

12、测试

 false是因为没有在linux下安装数据库

true时才可以去运行

连接上数据库之后


8、Linux下安装MySql数据库

1、su命令替换为管理员

2、进入到opt文件夹下

3、下载mysql5.7版本

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

 

4、安装mysql

yum -y install mysql57-community-release-el7-10.noarch.rpm

5、查看是否安装上

rpm -qa | grep mysql

6、安装sqlSever

 yum install -y mysql-community-server --nogpgcheck

7、启动mysql

systemctl status mysqld.service

8、设置为自启动

systemctl enable mysqld.service

9、查看mysql默认密码

grep "password" /var/log/mysqld.log

10、进入数据库

mysql -uroot -p

密码为第九步查到的密码

11、设置新密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '设置的密码';

密码包括大小写字母数字及特殊符号(! , / : ) 

12、设置远程连接

grant all privileges on *.* to 'root'@'%' identified by '设置的密码' with grant option;

13、刷新权限

flush privileges;

14、退出

exit

15、去etc下修改mySql的语言

vim /etc/my.cnf

[client]

default-character-set=utf8

character-set-server=utf8

collation-server=utf8_general_ci

16、重启mysql

service mysqld restart

17、查看是否修改成功

status


9、Navicat连接Linux的MySql

常规下:

连接名                                 为自己起的

主机名或 IP 地址                  linux的ip地址

端口为                                  linux中MySQL的端口号,默认为3306

用户名                                  linux中MySQL的用户名

密码                                     linux中MySQL的密码

SSH下:

点击使用 SSH 通道

主机名或 IP 地址                              linux的IP地址

端口                                                  不用变

用户名                                               linux系统的账户名

验证方法                                           不用变

密码                                                   linux系统的密码

点击连接测试

 


10、项目部署后对java文件的更改

db。properties中进行url的改动

jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
jdbc.username=root
jdbc.password=root
jdbc.init=1
jdbc.minIdle=1
jdbc.maxActive=3

 url中添加此句

之后进行编译,编译之后进行部署

部署成功之后  查看tomcat的webapps文件夹下有没有部署上来的项目

在项目中找到db.properties文件  如果没有证明编译时出现错误

修改db.properties

username为linux中MySQL的用户名

password为linux中MySQL的密码

进行保存

 点击start变为Expire sessions 

此时Running为true

这时便可以进行访问了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值