Linux详细教学(搭建、部署、快速入门)

Linux

Linux介绍

操作系统

  • 计算机组成

    ​ 硬件系统

    ​ 输入设备

    ​ 输出设备

    ​ 运算器

    ​ 控制器

    ​ 存储器

    ​ 软件系统

    ​ 系统软件

    ​ 管理计算机硬件设备

    ​ 应用软件

    ​ qq

    ​ lol

    操作系统

    windows

    ​ 稳定性不够,不能长时间运行 ​ 消耗系统资源

    mac

    linux

    ​ 开源

    ​ 红旗

    ​ red hat 服务器系统

    ​ ubuntu 图形化界面

    ​ centos 更小巧

    unix

    ​ 不免费

    服务器系统:

    ​ 1、稳定

    ​ 2、快

    Dos命令

    命令:操作linux系统 linus

    安装操作系统

    linux命令

    将项目发布到linux系统上

    Nginx、redis

    安装软件和配置环境

    jdk

    mysql

    tomcat

Linux安装

1、安装虚拟机软件

image-20210517095151935

2、安装操作系统

a、创建虚拟机

设置硬件设备

b、安装centos7

安装操作系统

3、安装第三方操作软件(管理linux)

MobaXterm_Personal_12.3

需要知道虚拟机中linux的ip地址

ip addr  //查看linux的ip地址

image-20210517102857887

当前linux没有分配ip地址

在linux配置生效ip地址

找到网络配置文件
cd /etc/sysconfig/network-scripts/
vi ifcfg-ens33
点击i 、 a 、 o进入编辑模式
将onboot=no改成yes
点击esc,退出编辑模式
输入:wq保存修改内容
service network restart 重启网络服务,重新加载配置文件

image-20210517104101227

Linux目录结构

  • /bin
    bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。

  • /boot:
    这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。

  • /dev :
    dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。

  • /etc:
    etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。

  • /home
    用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。

  • /lib
    lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。

  • /lost+found
    这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

  • /media
    linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。

  • /mnt
    系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。

  • /opt
    opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

  • /proc
    proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
    这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
    
  • /root
    该目录为系统管理员,也称作超级权限者的用户主目录。

  • /sbin
    s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。

  • /selinux
    这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

  • /srv
    该目录存放一些服务启动之后需要提取的数据。

  • /sys

    这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。

    sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。

    该文件系统是内核设备树的一个直观反映。

    当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

  • /tmp
    tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。

  • /usr
    usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。

  • /usr/bin:
    系统用户使用的应用程序。

  • /usr/sbin:
    超级用户使用的比较高级的管理程序和系统守护程序。

  • /usr/src:
    内核源代码默认的放置目录。

  • /var
    var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

  • /run
    是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

常用的目录

/root 管理员操作的目录

/home 其他用户操作的目录

/etc 配置文件

/usr 共享资源

/var 数据变化,放置日志

/bin 软件的命令

Linux操作系统的核心命令

1、目录操作

相对目录切换 ,切换到子目录

cd 目录名(相对路径)

[root@localhost etc]# cd sysconfig/network-scripts		//在当前目录切换到子目录中

cd 目录名(绝对路径)

[root@localhost etc]# cd /root		//在当前目录从根目录切换指定位置 

在最近访问的两个目录之间切换

cd -

切换到当前用户的home

cd ~

切换到上级目录

cd ..

ls 查看当前目录信息

ls
ls -a 查看所有的文件及文件夹(包含隐藏文件和系统文件)
ls -l 查看详细信息(大小、日期、所属用户、所属组、文件类型) 简写为ll
ls -i查看文件节点
ls -h 友好信息(文件大小的计算)

查看当前目录的位置

pwd

创建文件夹

mkdir 目录名
mkdir -p 多级目录

删除目录

rmdir 目录名 该目录必须为空目录

2、文件操作

创建文件
touch 文件名
删除文件
rm 文件名	提示是否删除
rm -f 文件名 不提示删除
rm -r 文件目录 将该目录及子目录子文件都删除
编辑文件
vi 文件名

image-20210517121135326

查看文件

cat 一次性查看所有内容

head 查看前面指定行数的内容

tai l查看后面指定行数的内容

less 分页查看,回车是下一行、空格是下一页、b返回上一页、q退出

more 分页查看,可以显示目前的内容的百分比,到文件末尾时自动退出

3、压缩和解压缩

tar

​ -z 是否使用压缩

​ -x 解压

​ -c 打包

​ -v 显示包中的内容

​ -f 显示压缩包文件名

压缩或者打包

​ tar -zcvf

​ tar -cvf

解压缩

​ tar -zxvf

​ tar -xvf

如果没有使用压缩,则文件名后缀声明为.tar,如果使用了压缩,则文件名后缀声明为.tar.gz。

在文件内容中查找

grep 参数 要查找的内容 查找范围

​ -i 不区分大小写

​ -v 排除

​ -n 打出行号

​ -r 在指定目录下递归查找

管道命令

可以一次性运行多个linux命令,前一个命令的结果作为后一个命令的参数

cat 1.txt|grep how

文件权限

image-20210517144433247

-rw-r–r–

第一位时文件类型

后面9位分成三组

每组都有rwx组成,read write execute

第一组为文件所属用户权限

第二组为文件所属组权限

第三组为其他用户权限

文件

​ r

​ cat、head、tail、less、more

​ w

​ vi

​ x

​ 可执行程序

文件夹

​ r

​ ls

​ w

​ touch、mkdir、rm、cp、mv

​ x

​ cd

新建用户并设置 密码

useradd 用户名
passwd 用户名

使用工具开一个session会话,新用户登录

使用新用户创建在自己的home中创建文件和文件夹

root用户收回所有权限

chmod 000 1.txt
000代表三组权限
每个权限对应一个数字
r4
w2
x1
每组求和,例如,如果所属用户拥有r和x权限 chmod 500 1.txt
权限可以通过每组各自赋予
u	所属用户
g	所属组
o	其他用户

+	增加权限
=	覆盖权限
-	收回权限

网络配置

1、查看网络ip

ip addr

2、编辑网络配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33
onboot=yes

3、网络配置生效

重启网络服务
service network restart

4、通过ping命令测试是否连通

ping www.baidu.com

进程管理

1、查看进程

ps		查看当前用户所拥有进程的基本信息
ps -f  查看当前用户所拥有进程的详细信息
ps -e  查看所有的进程

2、结束进程

kill -9 pid

软件安装及项目发布

1、安装方式

a、rpm安装

安装一个软件,需要若干个rpm文件,它们直接有依赖关系

b、yum安装

yum源,在这个源上有若干各rpm文件,帮我们安装依赖

c、安装包安装

压缩包

1、解压

2、编译

3、安装

2、发布项目

a、jdk
yum list | grep java
yum -y install java-1.8.0*
java
javac
b、tomcat
tar -zxvf apache-tomcat9.tar.gz
cd apache-tomcat9/bin
./startup.sh
windows下的浏览器通过ip和端口访问tomcat应用,无法访问
关闭防火墙或者设置白名单
systemctl stop firewalld.service

查看白名单
firewall-cmd --zone=public --list-ports
添加白名单(端口)
firewall-cmd --zone=public --add-port=8080/tcp --permanent
重载配置
firewall-cmd --reload
将war文件拷贝到webapps中
# 查看白名单列表
firewall-cmd --zone=public --list-ports

# 添加白名单端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent

# 重启防火墙
firewall-cmd --reload

# 查看白名单列表
firewall-cmd --zone=public --list-ports

# 查看防火墙状态,是否是runningfirewall-cmd --state# 重新载入配置,比如添加规则之后,需要执行此命令                       
firewall-cmd --reload# 列出支持的zonefirewall-cmd --get-zones# 列出支持的服务,在列表中的服务是放行的
firewall-cmd --get-services# 查看已开放的端口firewall-cmd --zone=public --list-ports# 永久添加80端口
firewall-cmd --add-port=2181/tcp --permanent# 永久添加80端口
firewall-cmd --remove-port=2181/tcp --permanent

# 作用域
--zone

# 添加端口,格2181/tcp

# 永久生效,没有此参数重启后失效
--permanent
如果无法弹出tomcat登录界面
在webapps/manager/meta-inf/context.xml中做一下配置修改
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d" />
c、mysql
centos7的yum源中没有mysql安装包。
先在linux中安装wget的命令
yum install wget
再使用wget获取网络上的mysql安装包
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
需要放置到本地仓库中
rpm -ivh mysql57-community-release-el7-9.noarch.rpm进入仓库运行安装mysql的代码
cd /etc/yum.repos.d/
yum -y install mysql-server

启动mysql服务
 systemctl start  mysqld.service
 查看临时密码
grep 'temporary password' /var/log/mysqld.log
登录mysql
mysql -uroot -p
N2kLdN9d;=ty
设置密码策略为低
set global validate_password_policy=LOW;
设置密码
set password for root@localhost = password('woniu') ;
给防火墙加白名单,放开3306端口。或者关闭防火墙。
设置远程访问权限
grant all privileges on *.* to root@'%' identified by 'Woniu123';
flush privileges;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Windows 10上使用PyCharm来运行Linux代码,你可以按照以下步骤进行操作: 1. 首先,在Windows 10上安装PyCharm。你可以从JetBrains的官方网站下载适合你的版本。 2. 接下来,你需要在你的Windows服务器上安装Linux系统。你可以选择使用虚拟机软件(如VirtualBox)或者使用云服务提供商(如AWS、Azure等)来创建一个运行Linux系统的虚拟环境。 3. 一旦你的Linux环境设置好了,确保你可以通过SSH连接到你的Linux服务器。你可以使用PuTTY等SSH客户端进行连接。 4. 打开PyCharm,在项目设置中配置远程解释器。选择"File" -> "Settings" -> "Project: [your project name]" -> "Python Interpreter"。点击右上角的齿轮图标,选择"Add Remote" -> "SSH Credentials"。 5. 在弹出的对话框中,输入你的Linux服务器的IP地址、用户名和密码。点击"Test Connection"按钮来验证连接是否成功。 6. 连接成功后,选择你的远程解释器并点击"OK"按钮。 7. 现在,你可以在PyCharm中创建和编辑你的Python代码了。当你运行代码时,它将在远程Linux服务器上执行。 请注意,运行Linux代码可能会涉及到一些特定的依赖项和配置。确保你在Linux环境中安装了所需的软件包和库,并正确设置了环境变量。此外,还要确保你的Windows服务器和Linux服务器之间有良好的网络连接,以便能够进行远程连接和文件传输。 希望以上信息对你有帮助!如果你有任何其他问题,请随时提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值