Linux

概述:本文记录了Linux的基础知识和常用命令,并且记录了常用软件(JDK,MySQL,Tomcat)的安装步骤和出问题的解决方案。

Linux概述

Unix概述

Unix是一个强大的多用户、多任务操作系统。于1969年在AT&T的贝尔实验室开发。UNIX的商标权由国际开放标准组织(The Open Group)所拥有。UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。

Linux简介

Linux是基于Unix的

Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机

诞生于1991 年10 月5 日。是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成

Linux系统的应用

服务器系统Web应用服务器、数据库服务器、接口服务器、DNS、FTP等等;

嵌入式系统路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等,

高性能运算、计算密集型应用Linux有强大的运算能力。

桌面应用系统

移动手持系统

Linux的版本

Linux的版本分为两种:内核版本发行版本;内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号 ;

Linux的主流版本

Linux远程访问

通过远程访问软件CRT进行连接

Linux的目录结构

root管理员的home目录root

其他用户的home目录home目录中

Linux的常用命令

切换目录命令cd

  • cd app 切换到app目录

  • cd .. 切换到上一层目录

  • cd / 切换到系统根目录

  • cd ~ 切换到用户主目录

  • cd - 切换到上一个所在目录

使用tab键来补全文件路径

列出文件列表 ls ll

ls(list)是一个非常有用的命令,用来显示当前目录下的内容。配合参数的使用,能以不同的方式显示目录内容。

格式:ls[参数] [路径或文件名]

常用:

在linux中以 . 开头的文件都是隐藏的文件

  • ls

  • ls -a 显示所有文件或目录(包含隐藏的文件)

  • ls -l 缩写成 ll

创建目录和移除目录 mkdir rmdir

  • mkdir(make directory)命令可用来创建子目录。

  • mkdir app 在当前目录下创建app目录

  • mkdir -p app2/test 级联创建aap2以及test目录

  • rmdir(remove directory)命令可用来删除“空”的子目录:rmdir app 删除app目录

浏览文件

cat、more、less

cat用于显示文件的内容。格式:cat[参数]<文件名>

  • cat yum.conf

more一般用于要显示的内容会超过一个画面长度的情况。按空格键显示下一个画面。

​ 回车显示下一行内容。

​ 按 q 键退出查看。

  • more yum.conf
    • 空格显示下一页数据 回车显示下一行的数据

less用法和more类似,不同的是less可以通过PgUp、PgDn键来控制。

  • less yum.conf
    • PgUp 和 PgDn 进行上下翻页.
tail

tail命令是在实际使用过程中使用非常多的一个命令,它的功能是:用于显示文件后几行的内容。

用法:

tail -10 /etc/passwd 查看后10行数据

tail -f catalina.log 动态查看日志(*****)

ctrl+c 结束查看

文件操作

rm

rm 删除文件 用法:rm [选项]... 文件...

  • rm a.txt 删除a.txt文件

删除需要用户确认,y/nrm 删除不询问

  • rm -f a.txt 询问,直接删除rm 删除目录

  • rm -r a 递归删除不询问递归删除(慎用)

  • rm -rf a 不询问递归删除

  • rm -rf * 删除所有文件

  • rm -rf /* 自杀

cp、mv

cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp命令时将一个文件复制成另一个文件或复制到某目录时,需要指定源文件名与目标文件名或目录。

  • cp a.txt b.txt 将a.txt复制为b.txt文件

  • cp a.txt ../ 将a.txt文件复制到上一层目录中

mv 移动或者重命名

  • mv a.txt ../ 将a.txt文件移动到上一层目录中

  • mv a.txt b.txt 将a.txt文件重命名为b.txt

tar (打包或解压)

tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。常用参数:

  • -c:创建一个新tar文件

  • -v:显示运行过程的信息

  • -f:指定文件名

  • -z:调用gzip压缩命令进行压缩

  • -t:查看压缩文件的内容

  • -x:解开tar文件

打包:

  • tar -cvf xxx.tar ./*

打包并且压缩:

  • tar -zcvf xxx.tar.gz ./*

解压

  • tar -xvf xxx.tar
  • tar -zxvf xxx.tar.gz -C /usr/aaa
find

find指令用于查找符合条件的文件

示例:

  • find / -name "ins*" 查找文件名称是以ins开头的文件
  • find / -name "ins*" -ls
  • find / -user itcast -ls 查找用户itcast的文件
  • find / -user itcast -type d -ls 查找用户itcast的目录
  • find /-perm -777 -type d-ls 查找权限是777的文件
grep

查找文件里符合条件的字符串。

用法: grep [选项]... PATTERN [FILE]...

示例:

  • grep lang anaconda-ks.cfg 在文件中查找lang

  • grep lang anaconda-ks.cfg -color 高亮显示

其他常用命令

  • pwd :显示当前所在的目录
  • touch :创建一个空文件 touch a.txt
  • clear :清屏

Vi和Vim编辑器

Vim编辑器

在Linux下一般使用vi编辑器来编辑文件。vi既可以查看文件也可以编辑文件。三种模式:命令行、插入、底行模式。

切换到命令行模式:按Esc键;

切换到插入模式:按 i 、o、a键;

  • i 在当前位置前插入
  • I 在当前行首插入
  • a 在当前位置后插入
  • A 在当前行尾插入
  • o 在当前行之后插入一行
  • O 在当前行之前插入一行

切换到底行模式:按 :(冒号)

打开文件:vim file

退出:esc : q

修改文件:输入 i 进入插入模式

保存并退出:esc : wq

不保存退出:esc : q!

快捷键:

  • dd – 快速删除一行

  • yy - 复制当前行

  • nyy - 从当前行向后复制几行

  • p - 粘贴

  • R – 替换

重定向输出> 和 >>

重定向输出,覆盖原有内容;>> 重定向输出,又追加功能;示例:

  • cat /etc/passwd > a.txt 将输出定向到a.txt中

  • cat /etc/passwd >> a.txt 输出并且追加

  • ifconfig > ifconfig.txt

系统管理命令

  • ps 正在运行的某个进程的状态
  • ps –ef 查看所有进程
  • ps –ef | grep ssh 查找某一进程
  • kill 2868 杀掉2868编号的进程
  • kill -9 2868 强制杀死进程

管道 |

管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。

示例:

  • ls --help | more 分页查询帮助信息
  • ps –ef | grep java 查询名称中包含java的进程
  • ifconfig | more
  • cat index.html | more
  • ps –ef | grep aio

Linux的权限命令

文件权限

r : 对文件是指可读取内容 对目录是可以ls

w : 对文件是指可修改文件内容,对目录 是指可以在其中创建或删除子节点(目录或文件)

x : 对文件是指是否可以运行这个文件,对目录是指是否可以cd进入这个目录

Linux三种文件类型

普通文件: 包括文本文件、数据文件、可执行的二进制程序文件等。

目录文件: Linux系统把目录看成是一种特殊的文件,利用它构成文件系统的树型结构。

设备文件: Linux系统把每一个设备都看成是一个文件

文件类型标识

普通文件(-)目录(d)符号链接(l)

进入etc可以查看,相当于快捷方式字符设备文件(c)块设备文件(s)套接字(s)命名管道(p)

文件权限管理

chmod 变更文件或目录的权限。

chmod 755 a.txt

chmod u=rwx,g=rx,o=rx a.txt

Linux上常用网络操作

主机名配置

hostname 查看主机名

hostname xxx 修改主机名 重启后无效

如果想要永久生效,可以修改/etc/sysconfig/network文件

IP地址配置

ifconfig 查看(修改)ip地址(重启后无效)

ifconfig eth0 192.168.xxx.xxx 修改ip地址

如果想要永久生效

修改 /etc/sysconfig/network-scripts/ifcfg-eth0文件

1
2
3
4
5
6
7
8
9
DEVICE=eth0 #网卡名称
BOOTPROTO=static #获取ip的方式(static/dhcp/bootp/none)

HWADDR=00:0C:29:B5:B2:69 #MAC地址
IPADDR=12.168.177.129 #IP地址
NETMASK=255.255.255.0 #子网掩码
NETWORK=192.168.177.0 #网络地址
BROADCAST=192.168.0.255 #广播地址
NBOOT=yes #  系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备。

域名映射

/etc/hosts文件用于在通过主机名进行访问时做ip地址解析之用,相当于windows系统的C:\Windows\System32\drivers\etc\hosts文件的功能

网络服务管理

service network status 查看指定服务的状态

service network stop 停止指定服务

service network start 启动指定服务

service network restart 重启指定服务

service --status–all 查看系统中所有后台服务

netstat –nltp 查看系统中网络进程的端口监听情况

防火墙设置

防火墙根据配置文件/etc/sysconfig/iptables来控制本机的”出”、”入”网络访问行为。

service iptables status 查看防火墙状态

service iptables stop 关闭防火墙

service iptables start 启动防火墙

chkconfig iptables off 禁止防火墙自启

Linux上软件安装

Linux上的软件安装的几种常见方式

  1. 二进制发布包

    软件已经针对具体平台编译打包发布,只要解压,修改配置即可

  2. RPM包

    软件已经按照redhat的包管理工具规范RPM进行打包发布,需要获取到相应的软件RPM发布包,然后用RPM命令进行安装

  3. Yum在线安装

    软件已经以RPM规范打包,但发布在了网络上的一些服务器上,可用yum在线安装服务器上的rpm软件,并且会自动解决软件安装过程中的库依赖问题

  4. 源码编译安装

    软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署。

上传与下载工具

  1. FileZilla

    主机名:192.168.18.128 用户名:root 密码:*** 端口号:22

    一般上传到 /usr/local 目录下 通过cd /usr/local 查看

  2. Irzsz

    使用yum install lrzsz安装

    设置目录:

​ 上传文件,放到upload文件夹内,rz

​ 下载文件:sz 文件名(下载到当前目录)

  1. sftp

    使用 alt + P 打开sftp窗口

    上传:put 文件目录

    下载:get 文件目录

Linux上安装JDK

yum安装

  • 上传JDK到Linux服务器
1
2
3
4
5
6
7
8
(1) 上传JDK
(2) 卸载open-JDK

java –version
rpm -qa | grep java

rpm -e --nodeps java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.i686
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.i686
  • 在Linux服务器上安装JDK
1
2
3
4
* 通常将软件安装到/usr/local
* 直接解压就可以

tar –xvf jdk.tar.gz -C 目标路径
  • 配置JDK的环境变量
1
2
3
4
5
6
7
8
9
10
11
 vim /etc/profile

* 在末尾行添加
#set java environment
JAVA_HOME=/usr/local/jdk1.7.0_71
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

* 保存退出(esc :wq)
source /etc/profile 使更改的配置立即生效

在Linux上安装MySQL

教程 ( 重新设置密码为 ‘MyNewPass4!’ )

  • 将MySQL的安装文件上传到Linux的服务器

​ (1)将MySQL的tar解压

​ (2)将系统自带的MySQL卸载

​ 搜索:rpm -qa | grep mysql

​ 删除:rpm -e --nodeps 文件名

  • 安装MySQL服务端

    rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm

  • 安装MySQL客户端

  • MySQL服务加入到系统服务并自动启动操作

chkconfig --add mysql

​ 自动启动:

chkconfig mysql on

​ 查询列表:

chkconfig

  • 关于MySQL远程访问设置

    在mysql中设置:

    grant all privileges on *.* to 'root' @'%' identified by 'root';

    finish privileges;

    在linux中很多软件的端口都被”防火墙”限止,我们需要将防火墙关闭

    防火墙打开3306端口

    /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

    /etc/rc.d/init.d/iptables save

    /etc/init.d/iptables status

    学习阶段我们也可以直接将防火墙关闭

    service iptables stop;

在Linux上安装Tomcat

1.Tomcat上传到linux上

2.将上传的tomcat解压

3.在tomcat/bin目录下执行 startup.sh(注意防火墙)./startup.sh

4.查看目标 tomcat/logs/catalina.out

出现无法连接的错误

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2022 ZHU
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信