目录
一、初认识Linux
Linux内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。
目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debain、Fedora、SuSE、OpenSUSE。
二、Windows和Linux得区别
比较 | Window | Linux |
---|---|---|
界面 | 界面统一,外壳程序固定所有Windows程序菜单几乎一致,快捷键也几乎相同 | 圆形界面风格依发布版本不同而不同,可能互不兼容。GNU/Linux的终端机是从UNIX传承下来,基本命令和操作方法也几乎一致。 |
驱动程序 | 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时候很难支持。另外,有时硬件厂商未提供所需版本的Windows下的驱动,也会比较头痛。 | 由志愿者开发,由Linux核心开发小组发布,很多硬件厂商基于版本考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD等硬件厂商逐步不同程序支持开源驱动,问题正在得到缓解。 |
使用 | 使用比较简单,容易入门。圆形化界面对没有计算机背景知识的用户使用十分有利。 | 圆形界面使用简单,容易入门。文字界面,需要学习才能掌握。 |
学习 | 系统构造复杂、变化频繁、且知识、技能淘汰快,深入学习困难 | 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易 |
软件 | 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权 | 大部分软件都可以自由获取,同样功能的软件选择较少。 |
三、Linux的安装
详看ChavinKing博主文章:CentOS7安装详解
四、Linux常用的命令
文件类型 | 属主权限 | 属组权限 | 其他用户权限 |
---|---|---|---|
- | 1 2 3 | 4 5 6 | 7 8 9 |
d | R w x | R - x | R - x |
目录文件 | 读 写 执行 | 读 写 执行 | 读 写 执行 |
1、一般模式
注:是对文件内部
- yy 复制
- yNy 复制N行
- p 粘贴
- u 撤销
- dd 删除一行
- dNd 删除N行
- shift + ^ 移动到行头
- shift + $ 移动到行尾
- shift + g 跳转到最后一行
- N + shift + g 跳到第N行 或者
2、编辑模式
- i 进入编辑模式
- o 进入下一行的编辑模式
3、指令模式
- w 保存
- q 退出
- ! 感叹号强制执行
4、文件目录类
- pwd 显示当前工作路径
- ll 列出目录内容
- mkdir 创建新目录
- mkdir -p 递归创建
- touch 创建空文件
- cd 切换目录
- 绝对路径和相对路径
- cd - 返回之前操作的目录
- cp 复制文件或目录
- cp -r 递归复制
- rm 删除文件(在没有理解路径的情况下,不要乱用)
- rm -rf 递归强制删除
- mv 移动目录、改名
- cat 查看文件
- more 分页查看文件
- 空格 向下翻页
- ctrl + B 返回上一屏
- tail -F 监控文件
- echo 追加文件
- ln -s [原文件][目标文件] 软连接
- history 历史服
5、时间日期类
- date 显示当前时间
- date -s 设置系统时间
- date -s ‘2019-03-09 23:23:23’
- cal 查看日历
- tab 自动补充键
6、用户管理命令
- useradd [用户] 添加新用户
- userdel [用户] 删除新用户
- passwd [用户] 设置用户密码
- id [用户] 判断用户是否存在
- su [用户] 切换用户
- /etc/sudoers 设置普通用户具有root权限
- usermod 修改用户
- usermod -g dev itstar 把用户itstar加入到dev用户组
- groupadd itstar 新增用户组
- groupdel 删除组
- groupmod 修改组
- cat /etc/group 查看创建了哪些组
7、文件权限类
- chmod改变权限 chmod -R 777 用户名
- chown [最终用户][文件或目录]
- chown -R itstar:itstar [文件名]
- su [用户] 切换用户
8、磁盘分区类
- fdisk 在root用户下查看分区
- df 查看硬盘
- mount /unmount 挂载/卸载
9、搜索查找类
- find [搜索范围][匹配条件]
- 按文件名
find /opt -name *.jar - 按拥有者
find /opt -user itstar - 按文件大小(在某目录下查找大于1M的文件)
find /opt -size +1024
- 按文件名
- grep 管道符
- grep + 参数 + 查找内容 + 源文件
- rpm -qa|grep mysql 查找系统中是否有mysql的rpm包
- grep "C|A" A 注:区分大小写
- grep -i "C|A" A 是不区分大小写
10、进程线程类
- ps -aux 查看系统中的进程
- top 查看系统的健康状态
- kill 进程 kill -9 进程号、直接杀死进程
11、压缩和解压缩
- gzip + 文件 压缩文件 注:不能压缩目录
- gunzip + 文件.gz 解压缩文件
- zip + 文件名 + 要压缩的内容
- unzip + *.zip 解压文件
五、Linux定时任务Crontab
- 基本语法
- crontab -e 编辑定时任务
- crontab -l 查询定时任务
- crontable -r 删除定时任务
crontab -e进入编辑状态,* * * * * 执行的任务
项目 | 含义 | 范围
- | -
第一个“” | 一小时当中的第几分钟(分) | 0-59
第二个“” | 一天当中的第几小时(时) | 0-23
第三个“” | 一个月当中的第几天(天) | 1-31
第四个“” | 一年当中的第几月(月) | 1-12
第五个“*” | 一周当中的星期几(周) | 0-7(0和7都代表星期日)
特殊符号
特殊符号 | 含义 |
---|---|
* | 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。 |
, | 代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令 |
- | 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令 |
*/n | 代表每隔多久执行一次。比如“*/10 * * * * 命令”,代表每隔10分钟就执行一遍命令 |
特定时间执行命令
时间 | 含义 |
---|---|
45 22 * * * 命令 | 在22点45分执行命令 |
0 17 * * 1 命令 | 每周1 的17点0分执行命令 |
0 5 1,15 * * 命令 | 每月1号和15号的凌晨5点0分执行命令 |
40 4 * * 1-5 命令 | 每周一到周五的凌晨4点40分执行命令 |
*/10 4 * * * 命令 | 每天的凌晨4点,每隔10分钟执行一次命令 |
0 0 1,15 * 1 命令 | 每月1号和15号,每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现,因为他们定义的都是天。非常容易让管理员混乱。 |
- 案例:
*/1 * * * * echo “1” >> /opt/Andy
翻译:每分钟把1追加到该目录中
六、安装linux版本JDK
- 命令:
tar -zxvf JDKVERSON -C 目标目录
- 环境变量:
vi /etc/profile
- 环境配置:
export JAVA_HOME=/opt/module/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
七、虚拟机快照
右键虚拟机 -> 快照
功能描述:相当于“存档”的功能
八、主机名的设置
hostnamectl set-hostnamectl 主机名
九、虚拟机联网
十、RPM包
-
概述
RPM(RedHat Package Manager),Rethat软件包管理工具,类似windows里面的setup.exe
是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。
RPM包的名称格式。
Apache-1.3.23-11.i386.rpm
“apache” 软件名称
“1.3.23-11”软件的版本号,主版本和此版本
“i386”是软件所运行的硬件平台
“rpm”文件扩展名,代表RPM包 -
常用命令
查询
rpm -qa | grep mysql 查询是否具有mysql的RPM包
卸载
rpm -e --nodeps [包名] 强制卸载此包
安装
rpm -ivh --nodeps [包名] 不检测依赖进度