linux 服务初始化
0 linux推荐学习地址
C语言教程_linux教程: https://c.biancheng.net/linux_tutorial
1 linux 网络配置
基本概念
配置
基本命令
不同的linux系统命令系统有所不同,网络命令也有区别ifconfig是老命令,ip addr是新命令…
查看本机网络信息
常用命令
ifconfig
常见操作
2 linux 基本常识
用户基本操作
添加用户的一系列操作
需要注意,添加用户需要root权限,来操作/home文件夹,以及更新用户信息
添加用户命令 adduser 和 useradd
adduser常用方式
1 |
|
解释:
这个命令会直接用默认值创建一个用户,包括密码用户目录等等所以这个命令就是快捷,很省事
默认值:
adduser在创建用户时会主动调用
/etc/adduser.conf
;
用户主目录时默认在/home
下,而且创建为/home/用户名
如果主目录已经存在,就不再创建,但是此主目录虽然作为新用户的主目录,而且默认登录时会进入这个目录下,但是这个目录并不是属于新用户,当使用userdel删除新用户时,并不会删除这个主目录,因为这个主目录在创建前已经存在且并不属于这个用户。
为用户指定shell版本为:
/bin/bash
更多信息请见: https://blog.csdn.net/Dontla/article/details/128723451
useradd常用方式
这个命令往往被映射成adduser
修改用户密码 passwd命令
当我们创建一个新的用户之后,往往是默认的密码,我们需要重置一下自己的密码
可以在root权限下使用passwd命令修改用户密码
1 |
|
获取用户列表 cat /etc/passwd
这个命令会显示系统中的所有用户信息,包括用户名、用户ID、用户组ID、用户家目录等。用户信息以冒号分隔。
不需要root权限
1 |
|
删除和修改用户
删除命令 userdel
需要在root权限下进行
linux版本和安装包
查看linux版本的几种程度
- 查看发行版
1 |
|
- 查看linux内核
1 |
|
版本常识
el表示该安装包适用于 CentOS 和 Red Hat Enterprise Linux (RHEL) 版本的操作系统。”el”意指”Enterprise Linux”。
x86_64:表示该安装包适用于 64 位操作系统。
i386: 表示32位的
armv7l: 表示arm架构
glibc2.12: 表示该安装包采用 glibc2.12 库
要查看glibc(GNU C库)的版本号,可以使用以下命令:
ldd –version
安装包常识
https://c.biancheng.net/linux_tutorial
3 linux 基本的编程环境安装
Java环境配置
下载得到jdk在linux上的tar压缩包之后,将文件解压到/usr/local/java文件夹里(这里主要放指的是共享文件应用)
1 |
|
第二步配置环境变量,一般是在/etc/profile文件中配置的,这个是全局配置文件,所有用户都可以使用这个配置文件(而不是修改)
1 |
|
可以看到基本的语法 就是:
- export 起手表示声明了一个环境变量
- 单词=路径 表示创建了一个变量
- export 变量 表示将变量声明成环境变量
- 路径中通过$变量名实现对于变量的引用
- 路径中使用:分割不同的路径
第三步 更新当前环境中的配置信息
也就是说编辑好了配置文件不会立即生效,我们重启操作系统才会生效
为了立即生效我们需要运行命令
1 |
|
第四步 测试jdk
1 |
|
4 linux 常见服务安装
tomcat安装
获取到tomcat的linux安装包之后,在/usr/local/中创建tomcat目录,解压tar -zxvf (filepath) -C (goal path)
完成之后
启动tomcat
使用tomcat安装目录中的bin目录下的startup.sh文件即可运行
1 |
|
访问tomcat
tomcat默认的端口号是8080
所以在浏览器地址栏中访问: ip:8080即可
注意
需要保证网络,例如安全组端口是否打开等方面
mysql安装
mysql在linux上的安装比较复杂,所以只需要理解含义即可
在下载好mysql在linux上的的安装包之后,需要解压到指定目录
第一步 创建目录结构并解压到
因为mysql有一些默认配置文件,这些配置文件中默认我们的mysql安装目录是/usr/local/mysql
所以如果不想要麻烦的话最好将mysql解压到这里,这样我们就能直接使用mysql中的自带的配置文件
最好的方法是将压缩包解压到/usr/local目录下,最后改名一下解压后的目录为mysql就行了
1 |
|
第二步 配置mysql用户组保证权限
需要有一个用户mysql(当然这个名字可以不是mysql,意思就是这个用户专门用来管理mysql)
1 |
|
注意,下面所有的文件都需要使用mysql权限,这样mysql程序才能够正常使用这些文件和目录
第三步 添加数据库的配置文件,数据库会根据配置文件进行运行
之前提到了,数据库有一些默认值,就比如这里的配置文件位置,默认是/etc/my.cnf文件,mysql会去尝试检索并读取这个文件,如果文件不存在或者无法访问(例如权限不够的情况)就会导致数据库无法启动
ok现在我们去创建/etc/my.cnf吧
1 |
|
理解上面的内容,我们就可以自己改变这些配置,例如basedir就是为什么我们要要求解压目录是/usr/local/mysql文件夹了
第四步 创建需要的目录
我们在配置文件中规定了数据存在哪里,日志存在哪里,这些目录我们需要他们存在并且mysql程序具有读写权限
1 |
|
第五步 初始化数据库
这一步主要完成的工作
- 检查mysql的运行环境是否满足
- 生成一些原始数据文件,例如启动脚本(我们在启动mysql的时候会运行这个脚本)
这一步是为了下载mysql数据库在运行过程中所需要的一切依赖程序,进行检查mysql程序环境是否可以运行
1 |
|
可能出现的错误缺少numatl程序,我们进行安装即可
yum -y install numactl
第六步 配置开机启动服务
linux中的服务在启动的时候会去寻找在/etc/rc.d/init.d文件夹中的服务的初始化脚本,进行程序的初始化工作再进行运行
所以我们要添加开机启动就需要为我们的mysqld程序一个服务初始化脚本文件,这个文件/etc/rrc.d/init.d/mysqld
1 |
|
注意:
如果service mysqld start总是出错,检查mysqld是否被配置成为服务是一个思路
第六步 为其配置环境变量
就是给mysql的可执行文件配置环境变量
1 |
|
第七步 登录mysql修改root密码
mysql初始化之后会将root用户的初始化密码生成到/root/.mysql_secret文件中(如果你是在root用户下执行的initialize的话)
我们可以通过cat /root/.mysql_secret来查看
如果没有这个文件也没关系,我们直接执行
mysql -uroot -p
我们直接不输入密码点击回车,会出出现下面的错误
大概的意思就是说找不到mysql的端口文件,我们将mysql初始化生成的/var/lib/mysql中的拿来用用,使用链接文件
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
也就是到时会找到这里来
然后此时在进行登录,会出现拒绝访问的错误,也就是我们的密码错误
我们可以停止服务,使用不检查用户表的模式登录
1 |
|
第八步 开启用户远程登录
1 |
|
redis安装
先下载得到安装包,解压缩
redis是C++写的所以我们需要安装C++编译器,GCC++
1 |
|
进入redis解压后的目录,执行命令make进行编译
需要的等待一会等待编译完成,编译完成之后
运行这个命令
1 |
|
这里多了一个关键字 PREFIX=
这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录
库文件会存放在/usr/local/lib目录。
配置文件会存放在/usr/local/etc目录。
其他的资源文件会存放在usr/local/share目录.
接下来请看redis教程
5 我的云服务器配置
阿里云安全组规则
│ 入方向 │ 拒绝 │ 100 │ TCP │ 6379/6379 │ 0.0.0.0/0 │ redis端口 │
│ 入方向 │ 拒绝 │ 100 │ TCP │ 27017/27017 │ 0.0.0.0/0 │ mongodb连接 │
│ 入方向 │ 允许 │ 100 │ TCP │ 5946/5946 │ 0.0.0.0/0 │ 好记的端口 │
│ 入方向 │ 允许 │ 100 │ TCP │ 9170/9170 │ 0.0.0.0/0 │ 好记的端口 │
│ 入方向 │ 允许 │ 100 │ TCP │ 7456/7456 │ 0.0.0.0/0 │ 好记忆的端口 │
│ 入方向 │ 允许 │ 100 │ UDP │ 10999/11001 │ 0.0.0.0/0 │ 饥荒服务器 │
│ 入方向 │ 允许 │ 100 │ TCP │ 8080/8080 │ 0.0.0.0/0 │ tomcat服务 │
│ 入方向 │ 允许 │ 100 │ TCP │ 80/80 │ 0.0.0.0/0 │ http服务 │
│ 入方向 │ 允许 │ 100 │ TCP │ 3306/3306 │ 0.0.0.0/0 │ mysql 访问允许 │
│ 入方向 │ 允许 │ 100 │ ICMP │ -1/-1 │ 0.0.0.0/0 │ System created rule. │
│ 入方向 │ 允许 │ 100 │ TCP │ 22/22 │ 0.0.0.0/0 │ System created rule.
一些常用软件的包
在 ./Linux配置文件目录下
6 一些需要知道的linux技巧
linux的安装工具
linux不像是图形化操作系统,一般我们使用的都是命令行程序
所以安装这种程序也是没有图形化操作的,都是通过命令行安装的
有一些命令行工具提供了从下载解压部署软件全过程,这些软件就是下载工具
这些下载工具的官方维护了一个软件库,我们可以使用命令来下载所有软件库中能够找到的软件
知名的下载工具有:
- Wget
- install
- yum
- apt
- https://linux.cn/article-7369-1.html
例如使用yum
1 |
|