一.操作系统
操作系统距离硬件最近的软件,他管理所有的硬件设备,并且提供了人机交互的界面以及实用的工具程序。
1960年 - IBM - OS/360 - 通用操作系统
1965年 - GE/MIT/Bell - Multics
1966年 - ken thompson
1969年 - Multics项目失败任务关闭 - PDP-7 - Unics
1970年 - B语言 - Unix
1971年 - dennis ritchie - C语言
1976年 - Unix System V
Unix ---> AIX / Hp-Unix / Solaris
1987年 - tanenbaum - Minix - 20000
1991年 - linus - Linux
Linux发行版本
Redhat
CentOS
Fedora
Ubuntu
Debian
SUSE
2.壳程序 - Shell
人和计算机对话的接口程序 - bash
Bourne Shell - bsh
Bourne Again Shell - bash
3.命令 [参数] [作用对象]
命令 | 作用 |
---|---|
who | 查看所有连接对象 |
who am i | 查看当前连接对象 |
w | 查看所有连接对象及信息 |
clear | 清除屏幕信息 |
date | 查看时间信息 |
cal | 查看日历 |
whatis | 查看帮助信息 |
whereis | 查看目标路径 |
命令 --help | 查看命令帮助 |
man | 查看命令手册 |
ls | 查看当前目录下的文件及文件夹名 |
cat | 查看文件内容 |
wget | 非交互式下载 |
ps | 查看bash |
uname/hostname | 查看操作系统名/主机名 |
exit/logout | 断开连接 |
shutdown | 关机 |
reboot | 重启 |
init | 初始化级别,0是关机,6是重启 |
write | 给用户发消息 |
history | 历史记录 |
useradd | 添加普通用户 |
passwd | 修改密码 |
su | 切换权限 |
write | 发送消息 |
wall | 给所有人发消息 |
4.文件操作命令
pwd - print working directory - 打印工作目录:
/root - 超级管理员用户主目录
/home/lucia - 普通用户主目录
/home/vincent - 普通用户主目录
ls -list directory contents - 列出目录下的内容:
-a:查看所有文件(以点开头的是隐藏文件或文件夹)
-l:长格式查看
-R:递归式查看(遇到文件夹要查看文件下的内容)
cd -change directory- 切换文件夹
mkdir - make directory - 创建文件夹:
-p:在需要的时候创建父文件夹
rmdir - remove empty directory - 删除空文件夹
touch - 创建空文件或修改文件的最后访问时间
rm - remove - 删除文件或文件夹:
-i:交互式删除(interactive)
-f:强制删除(force)
-r:递归式删除(recursive)
cp- copy - 拷贝文件
-r:递归式拷贝(recursive)
mv - move - 移动文件
cat / tac - concatenate - 连接文件并打印内容
head / tail - 查看文件头/尾
more / less - 分页查看
iconv - 转换文件编码
C - CPython - 官方
Java - Jython
C# - IronPython
Python - PyPy - JIT
gzip / gunzip - 压缩/解压文件
xz -z / xz -d - 压缩/解压文件
tar - 归档/解归档
解压缩
gz / tgz ===> gunzip <文件名>
xz ===> xz -d <文件名>
解归档(一个文件拆成多个文件)
tar -cvf <需归档文件的文件夹名>
tar -xvf <归档文件的文件名>
二.Linux系统配置
systemctl start nginx 运行某进程
vim:
command function
:wq/ZZ 保存退出
set ts=4 设置制表键的空格为4
:set nu 显示行号
nyy 复制n行
p 粘贴
ndd 剪切n行
gg 回到文首
GG 到达文尾
x 删除一个字符
u 回复
wd 删除一个单词
0 去到行首
$ 去到行尾
设置vim配置文件
①进入 .vimrc文件
② 输入以下命令,保存退出
set nu
set ts=4
set autoindent
set expandtab
set ruler
set nohls
syntax on
set nu -> 显示行号
set ts=4 -> 设置tab键为4个空格
set autoindent -> 自动补全
set expandtab -> 设置tab键
set ruler -> 设置标尺
set nohls -> 取消搜索高亮
syntax on -> 设置代码高亮
三.CentOS安装软件:
- 包管理工具安装(简单靠谱)
- yum:yellowdog updater modified
- yum search <软件包名字>
- yum install <软件包名字>
- yum upgrade <软件包名字>
- yum erase <软件包名字>
- yum info <软件包名字>
- yum list installed | grep <名字>
- apt / apt-get
- rpm:red-hat package manager
- rpm -ivh RPM文件
- rpm -e 包名
- rpm -qa | grep 包名
- yum:yellowdog updater modified
- 源代码构建安装
- gcc --version / make --version
- 下载 / 解压缩 / 解归档 / [补充依赖项] / [安装前配置] / make && make install / [配置环境变量]
- 下载和系统对应的二进制文件
- 配置PATH环境变量
1命令安装install
-yum:yellowdog updater modified
搜索: yum search file_name
安装: yum install file_name
卸载: yum erase file_name
查询: yum info file_name
查询已安装:yum list installed
-rpm:
-rpm -ivh RPM文件
-rpm -e 包名
-rpm -qa | grep 包名
2.源代码构建安装
- 确认检查c语言编译器和构建工具:
gcc --version
make --version - 下载
3.下载和系统对应的二进制文件
-配置PATH环境变量
安装python3
①下载源码
②解压缩解包
③进入文件目录
④补充Python相关依赖项
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel libdb4-devel libpcap-devel xz-devel libffi-devel
⑤安装前的配置
./configure --prefix=/usr/local/python37 --enable-optimizations
⑥构建和安装
make && make install
⑦配置PATH环境变量
cd
vim .bash_profile
输入:
export PATH=$PATH:/usr/local/python37/bin
查看进程及端口
ps -ef: 查看进程
netstat -ntlp :查看端口状态
-n:拒绝显示别名,能显示数字的全部转化成数字
-t:t拒绝显示别名,能显示数字的全部转化成数字
-l:显示建立相关链接的程序名
-p:显示建立相关链接的程序名
安装mariaDB及删除mariaDB
1.yum search mariadb
2.yum install -y mariadb mariadb-server
3.yum info mariadb
4.yum upgrate mariadb
5.yum erase mariadb mariadb-server
6.yum list installed | grep mariadb
7.yum list installed | grep mariadb | awk '{print $1}' | xargs yum erase -y
安装git
- 下载
wget nhttps://mirrors.edge.kernel.org/pub/software/scm/git/git-2.23.0.tar.gz
2.解压缩解归档
gunzip git-2.23.0.tar.gz
tar -xvg git-2.23.0.tar
cd git-2.23.0 - 补包(预防联网报错问题)
yum install -y libcurl-devel - 配置
./configure --prefix=/usr/local
5.构建及构建安装
make && make install
6.查看版本
git --version
安装MySQL
1.common —> libs —> client —> server
mysql-community-server-5.7.27-1.el7.x86_64
mysql-community-client-5.7.27-1.el7.x86_64
mysql-community-libs-5.7.27-1.el7.x86_64
mysql-community-common-5.7.27-1.el7.x86_64
systemctl start mysqld
安装后出现无法连接的问题,可能是以前安装卸载后残留了数据,解决办法如下:
cat /var/log/mysqld.log | grep password
set global validate_password_policy=0;
set global validate_password_length=6;
alter user 'root'@'localhost' identified by '123456';
create user 'root'@'%' identified by '123456';
grant all privileges on . to 'root'@'%' with grant option;
grant insert on school.* to 'root'@'%';
revoke all privileges on . from 'root'@'%';
总结
启动停止重启查看服务
ubuntu/centos7以下:
service mysqld start
service mysqld stop
centos7:
systemctl start mysqld - 启动
systemctl stop mysqld - 停止
systemctl restart mysqld - 重启
systemctl status mysqld - 状态
systemctl enable mysqld - 开机启动
systemctl disable mysqld - 禁用开机启动
mysql命令
mysql -u root -p
alter user 'root'@'localhost' identified by '123456';
how databases;
select version();