linux是类似于windows的一款操作系统,属于系统软件,是由芬兰人,林纳斯在上大学期间开发的。是一套免费使用的操作系统,是一个多用户、多任务、支持多线程和多CPU 的操作系统。免费开源;没有提供图形界面(早期没有),通过命令操作,运行速度快,占内存也小...Linux 是一个性能稳定的多用户网络操作系统。
内核版本:核心系统
发行版本:发行版,就是有其他公司,在内核版本的基础上,进行了二次的开发,使得用户使用起来更加方便。一般谈论的 Linux 系统便是针对这些发行版本的
常见的发行版本:Ubuntu、RedHat、CentOS
Linux 特点:
学习 Linux 的用途:
Linux 运维工程师 (大型公司,专门维护公司服务器 自建机房 安装软件)
Linux 嵌入式开发工程师
Linux 下的项目开发(大数据、java、python...)
有哪些方式可以拥有一个linux操作系统?
云平台 十大云服务器排行榜,十大云服务-云平台-云主机排行榜-Maigoo品牌榜
阿里云服务器,默认不允许远程访问它。比如阿里云上装了mysql,mysql端口是3306,要在阿里云管理后端把这个端口号放行,放行之后就可以远程的访问阿里云服务器上的3306的mysql
配置:
在linux系统中,Xshell和 Xftp配合使用,是一套非常方便的linux服务器管理软件。
Xshell 是通过输入命令来对服务器进行操作,如进入目录,压缩文件,解压文件,启动服务等;Xftp是可视化工具,可以上传、下载、移动文件等操作。
云服务器一直处于运行的状态,平常管理怎们办呢?Xshell终端远程连接到阿里云服务器
Linux 的目录结构为树状结构,最顶级的目录为根目录 /。
其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。
/boot:系统启动相关的文件,如内核、initrd,以及 grub(bootloader)
/dev:设备文件
/etc:配置文件
/home : 用户的家目录,每一个用户的家目录通常默认为/home/USERNAME
/root:管理员的家目录;
/lib:库文件
/media:挂载点目录,移动设备
/mnt:挂载点目录,额外的临时文件系统
/opt:可选目录,第三方程序的安装目录
/proc:伪文件系统,内核映射文件
/sys:伪文件系统,跟硬件设备相关的属性映射文件
/tmp:临时文件,/var/tmp
/var:可变化的文件
/bin:可执行文件,用户命令
/sbin:管理命令
/usr:usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下。
logout:退出登录,但是服务器依然运行
reboot:重启服务器
shutdown -h now 立即关机,服务器关闭,只能远程在阿里云控制台开机
clear:清屏
ifconfig:查看网络配置
free -m:查看内存剩余容量,以MB为单位
linux操作系统文件管理结构
root(根)/
系统文件夹
用户文件夹
cd:目录名 change directory 进入到指定目录
ls:查看当前目录中的所有的文件夹和文件
ls -l:以详细信息的方式显示文件,可以简写为ll
pwd:打印出当前所在的工作目录,全路径
touch 文件名: 创建文件,touch demo.txt
rm -f file1:删除一个叫做 'file1' 的文件
mkdir dir1:创建一个叫做 'dir1' 的目录
rmdir dir1:删除一个叫做 'dir1' 的目录'(删除空文件夹)
rm -rf dir1:删除一个叫做 'dir1' 的目录并同时删除其内容
cp 文件名 /目标地址:复制文件到指定目录
mv 文件名 新文件名:重命名
mv 文件名 /新地址 :相当于剪切。mv dir /usr/local/xxx,把 dir 移动到/usr/local/xxx
cat 文件名:查看文件内容
find -name 文件名:搜索文件命令(面试经常会被问)
free -m:查看内存占用情况,以 MB 为单位
Linux 命令大全 | 菜鸟教程 常用命令
管道命令 | :操作符是”|”,它只能处理经由前面一个指令传出的正确输出信息, 对错误信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入。
【指令1】正确输出,作为【指令2】的输入然后【指令2】的输出作为【指令3】的输入,【指令3】输出就会直接显示在屏幕上面了。通过管道之后【指令1】和【指令2】的正确输出不显示在屏幕上面。
ps -ef:查看linux中所有的进程信息。
ps -ef | grep 进程名: 查看指定名称的进程号,先输出所有,管道命令交给 grep名称过滤,过滤出指定进程信息。
grep:命令用于查找文件里符合条件的字符串。
pgrep -l 进程名:查看指定名称的进程号。
vi编辑器(相当于windows中的记事本),修改配置文件需要用到编辑文件
linux系统中,自带一个vi编辑器,还可以安装一个更高级的编辑器vim(vi编辑器的升级版),vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
vi 文件名:进入到了命令模式,此刻你输入任何内容都当做命令对待
输入i进入到输入模式(会出现INSERT),可以编辑内容;输入完成后,按Esc回退到命令模式(INSERT不见);按:进入到底线命令模式 wq 保存退出。
命令 | 说明 |
---|---|
i, I | 进入输入模式(Insert mode): |
[Esc] | 退出编辑模式,回到命令模式中(常用) |
:w | 保存,将编辑的数据写入硬盘档案中(常用) |
:q | 离开 vi (常用) |
:q! | 若曾修改过档案,又不想储存,使用 ! 为强制离开不保存档案。 |
:wq | 保存后离开,若为 :wq! 则为强制保存后离开 (常用) |
如果只查看文件:cat 文件名
Linux 下软件安装有四种方式:rpm 安装、yum 安装、源代码编译安装、直接解压压缩包(jdk、tomcat)
rpm 安装类似于 windows 中的安装包,下载下来之后直接安装。缺点是不能自己解决依赖。
rpm 是 RedHat Package Manager(RedHat 软件包管理工具, 理解maven,管理所有的jar包;管理安装包)的缩写,rpm类似 windows 的 setup.exe或.msi。这一文件格式名称虽然打上了 RedHat 的标志,但理念是通用的,需要先下载 rpm 文件,然后通过命令安装。
先去官网下载所需要的rpm包,然后通过命令安装 rpm -ivh [软件包名称]
卸载:rpm -e [软件包名称]
yum 安装基于 rpm 安装,也就是在 rpm 上增加了自动解决依赖的功能。
yum(全称为 Yellow dog Updater, Modified)是一个软件包管理器。 基于rpm包管理,能够从指定的服务器自动下载rpm包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
语法:
yum [options] [command] [package ...]
options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。
command:要进行的操作。Install(安装)、update (更新)、info (查看信息)、remove (删除)、clean (清除缓存)
package :操作的对象。
下载源码,通过make指令编译打包安装,例如:redis、nginx
在centos这个发行版本的linux上进行操作
(ftp文件传输协议、http超文本传输协议)
将本机的软件包上传到linux的/opt目录中
tar -zxvf 压缩文件名: 解压并列出文件内
上传、解压
配置环境变量,进入到jdk的bin目录下
使文件生效:source /etc/profile
上传、解压
进入到bin目录,执行./startup.sh启动服务器
执行./shutdown.sh 关闭服务器
在浏览器中访问虚拟机中的 tomcat:ip+端口
下载mysql包的地址:wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
安装第一步下载的 rpm 文件
yum install mysql80-community-release-el8-1.noarch.rpm
使用 yum 安装 mysql :yum install mysql-server --nogpgcheck
查看当前是否为开机服务:systemctl list-unit-files | grep mysql
设置为开机启动 :systemctl enable mysqld.service
启动 mysql 服务:systemctl start mysqld.service
查看当前是否启动 MySQL 服务 :ps -ef | grep mysql
查看默认密码:grep 'temporary password' /var/log/mysqld.log
登录设置即可:mysql -uroot -p'默认密码'
如果查询不到,则默认密码为空
设置密码及加密格式(密码不能过于简单,包含大小写字母数字下划线)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root_123';
刷新指令 FLUSH PRIVILEGES;
mysql默认不允许别人远程的连接,选中 mysql 数据库user表,设置其他 ip 可以访问:update user set host='%' where user='root';然后重启mysql
ps -ef:查看linux中所有的进程信息
| 将前一个命令输出的结果,流向给下一个命名
ps -ef | grep(筛选过滤) 进程名
kill -9 进程id 杀掉指定的id的进程
pgrep -l 进程名 简洁的查看进程id
liunx操作系统是支持多用户,不同用户权限不同,现在学习期间使用的root(超级管理员 权限最大)。但是在实际的linux操作中,一般不建议直接使用root账号操作,以免出现误操作。