分享一下自己关于linux入门的一些笔记

1、Linux ---- 概述
A、Linux 是什么?
和 windows 一样,也是操作系统之一
B、为什么要学习 Linux ?
以后 Java 程序可能部署在 Linux 操作系统上
C、Linux 诞生以及发展
时 间: 1991 年
创建人: 林纳斯.托瓦兹 Linux is not unix
D、应用场景
PC、智能手机、服务器、智能家居.....
E、特 点: 开源
安全 高效 稳定
推荐有兴趣的可以去看书: 《鸟哥的私房菜》

2、Linux ---- 学习环境搭建
Linux 是操作系统,安装时,必须依赖于计算机硬件
A、安装一个虚拟机软件
B、借助于虚拟机软件可以虚拟一台计算机
C、再在虚拟的计算机上安装 Linux
D、安装 CRT 简化 windows 与 Linux 切换
优点:实现了远程连接

3、Linux ---- 目录结构
Linux 与 windows 不同,没有分盘
目录结构:
A、/ 根目录
B、/root 管理员目录
C、/etc 存储配置文件的目录
D、/usr/local 软件安装的目录

4、Linux ---- 常见命令:磁盘管理
0、命令的语法格式
格式1: 命令
格式2: 命令 -参数
格式3: 命令 -参数1参数2
A、ls(重点)
ls : 列出目录下的子级
-a : 列出所有子级
-l : 列出子级详情
-t : 按照时间排序
-r : 反序
参数可以复合:
-al : 所有子级详情
命令可以简化:
ll == ls -l

B、cd(重点)
cd /目录/目录/ 进入某个指定目录
cd .. 返回上一级
cd / 返回根目录
cd ~ | cd 返回用户目录
cd - 返回并打印上次所在目录
C、pwd 打印当前工作目录

D、mkdir(重点)
mkdir 目录 : 创建单级目录
mkdir -p 目录/目录 : 创建多级目录
mkdir -pv 目录/目录 : 创建多级目录并显示创建过程

5、Linux ---- 常见命令:文件浏览(了解)
A、cat 文件名 : 查看文件所有内容
B、more 文件名: 分页方式查看文件内容
回车 下一行
空格 下一页
b 上一页
q 退 出
C、less 文件名: 分页查询文件内容,比 more 功能更强大
-mN : 显示行号以及百分比
回车 下一行
方向键上 上一行
空格 下一页
b 上一页
q 退 出
d 下半页
u 上半夜
/xxx + n 向下查找关键字
?xxx + n 向上查找关键字
less is more
D、tail 命令: 查看动态文件
1)、生成一个动态改变的文件
ping 127.0.0.1
2)、使用 tail 查看
tail -f 动态文件:显示文件新生成的内容

6、Linux ---- 常见命令:文件操作
A、cp :文件复制
cp 源文件 目标目录
B、mv :文件剪切
mv 源文件 目标目录
C、rm :文件删除
rm 源文件
参数:
-r : 递归操作
-f : 强制执行
D、find 查找文件
find -name '正则表达式'

7、Linux ---- 常见命令:文档编辑
基本使用:
A、vi 文件名称
B、键入 i 键,然后录入数据
C、键入 esc 键,不能写入数据
D、:wq ---> 写入并退出

其他必用快捷键:
vi 之后,键入 yy 复制,p粘贴,dd删除
:wq 写入并退出
:q 不写的情况下,直接退出
:q! 写的情况下,不保存,直接退出

8、Linux ---- 常见命令:系统命令
A、ps -ef 查询进程信息(进程编号)
kill -9 进程编号
B、对结果进行过滤(重要)
ps -ef | grep -i 关键字
| ----> 管道
grep -i ---> 忽略大小写进行筛选

C、ifconfig ---> 可以查看虚拟机的 IP 地址
ping IP ----> 测试网络

9、Linux ---- 常见命令:压缩解压缩
压 缩: tar -zcvf 压缩后的文件名 被压缩的文件
解压缩: tar -zxvf 压缩文件(重点)
-z:以 gzip 的格式压缩或解压缩
-v:显示执行过程
-f:文件
-c:压缩
-x:解压缩
10、Linux ---- 常见命令:网络配置
setup

11、Linux ---- 常见命令:帮助命令(了解)
help 命令名称 或 man 命令名称:查看命令的帮助手册


12、Linux ---- 权限
不同用户共享同一个操作系统,那么都要保证自身数据的安全,为文件添加权限
权限修改:
chmod 用户代号+|-权限代号 文件名称
权限修改优化(任意权限组合对应的值不重复):
r --- 4
w --- 2
x --- 1
- --- 0
chmod 数字1数字2数字3 文件

1、Linux 软件安装 ----- 概述
JDK : Java 程序开发运行环境
Tomcat : JavaWEB 程序运行的容器
MySQL : 持久化存储数据
Redis : 和 MySQL 一样也是数据库,但是原理不同

2、Linux 软件安装 ----- 通用流程
A、上传安装文件
B、判断该程序是否安装过,如果安装过,先卸载
C、以命令的方式安装
D、配置相关参数
E、测试
3、Linux 软件安装 ----- 前提知识点
A、Windows 和 Linux 如何进行文件传输,使用专门的文件上传工具
方案1:CRT alt + p 快捷键打开文件上传窗口,拖拽上传
方案2:FZ 直接连接 Linux,拖拽上传
B、程序查询卸载安装升级需要使用的命令(记住)
rpm : redhat packet manager//红帽包资源管理工具
查询: rpm -qa 查询的软件名称
卸载: rpm -e --nodeps 卸载的软件名称
安装: rpm -ivh 安装的软件
升级: rpm -Uvh 升级的软件
4、Linux 软件安装 ----- JDK
A、上传安装文件
mkdir /usr/local/jdk
mv jdk_xxx.xxx.gz /usr/local/jdk
B、判断该程序是否安装过,如果安装过,先卸载
rpm -qa | grep -i jdk ? 安装了
rpm -e --nodeps 软件名称 //进行卸载操作
C、以命令的方式安装
tar -zxvf jdk_xxx.xxx.gz //直接解压缩
D、配置相关参数
1)、vi /etc/profile //
2)、export JAVA_HOME=/usr/local/jdk/jdk1.7.0_72
export PATH=$JAVA_HOME/bin:$PATH
3)、重新载入配置文件
source /etc/profile
E、测试
java -version

5、Linux 软件安装 ----- Tomcat
A、上传安装文件
mkdir /usr/local/tomcat
mv apache_xxx.xxx.gz /usr/local/tomcat
B、判断该程序是否安装过,如果安装过,先卸载
rpm -qa | grep -i tomcat
C、以命令的方式安装
tar -zxvf tomcat压缩包
D、配置相关参数:设置为远程访问
方案1:关闭防火墙 service iptables stop (不建议)
方案2:防火墙放行 8080 端口
1)、vi /etc/sysconfig/iptables
2)、复制(yy) 22 那一行 粘贴(p),修改22为8080
E、测试
宿主机浏览器访问: 虚拟机IP:8080

6、Linux 软件安装 ----- MySQL
A、上传安装文件
mkdir /usr/local/mysql
mv mysql_xxx.xxx.gz /usr/local/mysql

B、判断该程序是否安装过,如果安装过,先卸载
rpm -qa | grep -i mysql
rpm -e --nodeps mysql-libs-5.1.71-1.el6.i686
C、以命令的方式安装
1)、tar -xvf MySQL-5.5.49-1.linux2.6.i386.rpm-bundle.tar
注意:非 gzip 格式不能使用 -z
2)、安装服务器端
rpm -ivh MySQL-server-xxxx.rpm
3)、安装客户端
rpm -ivh MySQL-client-xxxx.rpm
D、配置相关参数
1)、配置密码
开启服务: service mysql start
配置密码:/usr/bin/mysqladmin -u root password '自定义的密码 1234 或 root'

vi /etc/sysconfig/iptables
service iptables restart
2)、设置远程连接
首先,防火墙放行 3306 端口,操作参考 Tomcat,但是没有权限
其次,为远程连接用户授予权限:
create user 'root'@'%' identified by '1234';
grant all on *.* to 'root'@'%' with grant option;

E、测试
1)、 mysql -uroot -p1234
2)、 windows SQLYog 下访问


7、Redis ----- 概述
A、关系型数据库与非关系型数据库
关系型数据 库: MySQL Oracle .....
特点: 数据结构较为严谨
DataBase(库) table(表) field(字段) 插入的数据必须严格符合声明的数据类型
非关系型数据库: Redis Hbase .....
特点: 数据结构不严谨,松散

B、互联网发展阶段:WEB1.0 与 WEB2.0
二者的分水岭:社交网站兴起
WEB1.0 : 用户大多情况只是浏览数据
WEB2.0 : 用户除了消费数据也产生数据
C、WEB2.0 随着数据量指数式增长,程序面临多个问题
高并发 : 同一时刻多个用户往数据库插入数据
海量数据 : 存储大量的数据
高扩展性与可用性 : 扩展性指服务器切换方式,可用性指停机时间

D、分类
8、Redis ----- 安装
0、安装 Redis 的编译环境(联网)
yum install gcc-c++
is this ok ? y
is this ok ? y
A、上传安装文件
mkdir /usr/local/redis
mv redis_xxx.xxx.gz /usr/local/redis
B、判断该程序是否安装过,如果安装过,先卸载
没安装过
C、以命令的方式安装
1)、tar -zxvf 压缩文件 //生成一个文件夹
2)、cd 文件夹 ,执行 make 命令(类似于 javac,编译操作)
3)、make PREFIX=/usr/local/redis install 执行安装
D、配置相关参数
1)、设置 redis 服务为后台启动
cd redis-3.0.7
cp redis.cnf /usr/local/redis (和 bin 目录平级)
vi redis.conf 修改 daemonize 的 no 为 yes //意味着后台启动
2)、配置远程连接
参考Tomcat 设置,放行 6379 端口号

E、测试
1)、bin/redis-server redis.conf 正常启动,修改成功
ps -ef | grep -i redis
2)、windows 下安装客户端,连接接口
9、Redis ----- 基本使用
A、保证开启服务端,使用客户端连接
bin/redis-server redis.conf
bin/redis-cli
B、通过客户端操作 redis 数据
测试: ping ---> pong
简单语法:
set key value //设置键值对
get key //根据键获取值
C、可以通过客户端关闭 redis 服务
方式1:bin/redis-cli shutdown(建议)
方式2:kill -9 进程号(不建议)

10、Redis ----- 数据类型
A、Redis 就是大的 Map 集合存储数据,就是存储键值对
B、键:长度不能超出 1024 个字节, 易读性强
值:五种数据类型
C、五种数据类型
String ------- String
Hash ------- HashMap
List ------- LinkedList
Set ------- HashSet
SortedSet ------- TreeSet
D、数据结构
链表
hash表
二叉树





你可能感兴趣的:(分享一下自己关于linux入门的一些笔记)