一、计算机系统
计算机系统由硬件与软件组成的.
硬件又分为: 运算器, 控制器, 存储器, I/O设备等.
软件分为: 系统软件, 应用软件
其中操作系统是负责任务调度(CPU调度),内存分配,I/O设备处理响应的软件.
二、Linux系统命令行模式操作命令
ps 进程状态
ps -ef/aux 可以查看详细的端口号 CPU占用率 内存占用率 进程号等等.
netstat -ntlp 查看进程以及端口情况
top 查看系统使用情况
clear 清屏, 在Xshell 5 里面可以拖动屏幕看到clear以前的屏幕内容
who/ who am i/ w 可以看到当前系统账号的信息
在root超级管理员账号下,可以通过命令创建普通用户:
useradd 账号
passwd 账号 ---> 设置密码即可
hostname 查询主机名
su 切换超级超级管理员账号
su + 普通用户 (ps.在超级管理员用户下切换到其他普通用户是不用输入密码的)
sudo 用管理员用户权限执行该文件
cd ~和cd / 分别是到主目录下 与根目录下
history 显示所有历史命令, 其中用 !历史命令编号 可以直接执行该命令
pwd 打印当前工作目录
ls 列出目录下文件
ls -a 列出全部文件,包括隐藏文件和路径
ls- al/ll - a 都是列出全部文件,包括隐藏文件和路径,并显示长文本格式
touch xx.txt 创建一个空文件
★用 ll 列出长文本格式的目录列表如下:
drwxr-xr-x 2 root root 4096 Apr 10 11:01 abc
-rw-r--r-- 1 root root 2381 Jan 23 2017 baidu.html
-rw-r--r-- 1 root root 410 Apr 11 10:29 CAL
-rw-r--r-- 1 root root 0 Apr 12 17:25 haha
其中drwxr分别表示directory/ read/ write/ execute
其中drwx为当前用户权限, 接下来r--代表同组用户权限, 最后r--代表其他用户权限
mkdir xxx 创建一个xxx的文件夹
rmdir xxx 删除xxx的文件夹,注意只能删除空的文件夹
rm -rf xxx 强制递归删除abc文件夹下的所有文件以及abc文件夹本身
rm -rf /* 表示删除根目录下所有的文件,删了系统就卵了
rm -f 强制删除文件
cat xxx.txt 查看文件里面的内容
tail 10 xxx.txt 查看文件最后10行内容
head 10 xxx.txt 查看文件开始10行内容
sort xxx.txt 对xxx.txt文件进行排序
uniq xxx.txt 对xxx.txt文件进行去重操作
man cat 查看cat的使用手册
info cat 可以看到cat更详细的使用帮助信息
cat --help 查看cat的使用帮助
echo: 回声, 使用如下:
echo 字符串/命令等, 可以使用重定项符 echo 字符串/命令 > xxx.txt 回声的信息就直接进入到xxx.txt里面了
cp : 复制
mv: 移动 使用如下:
cp xxx.txt abc/x1.txt 将当前文件夹里面的xxx.txt文件赋值到abc目录下并改名为x1.txt 可以不改
mv的使用规则和cp一样,如果加上一个-v可以看到程序执行的过程
如: mv -v xxx.txt ./x1.txt 将当前的xxx.txt文件放到当前目录下并改名为x1.txt
wc : 统计文件的行数,单词数,字符数
如: wc -w h1.txt 统计有多少个单词
wc -l h1.txt 统计有多少行
wc -c h1.txt 统计有多少个字符
wc h1.txt 统计行数,单词书,字符数
wget 文件地址 : 直接联网下载该文件
file 文件名: 查看该文件的详细信息
diff h1.txt h2.txt: 找出h1.txt和h2.txt文件中不同的地方
grep 内容 文件名: 查找该文件下的内容与查找内容一致的,并且高亮显示
gzip 文件: 压缩该文件,压缩后后缀为.zip
gzip -cvf 文件名: 压缩并查看过程
gunzip 文件.zip: 解压该文件, 解压后文件的.zip消失
gunzip -xvf 文件名: 解压并查看过程
tar:归档
如: tar -cvf x.tar *.html my.txt 归档
tar -xvf x.tar 解归档
init 0: 关机
init 6: 重启
python --version :查看版本
which python: 查看python文件路径
whereis python : 查看所有包含python的文件路径
whatis python:告诉你什么是python
wirte 用户名: 向该用户发送消息,可以用下面的命令拒收
mesg n/y : 不允许/允许接收write消息
wall 发送信息: 向全体用户发送信息,这个消息不能拒收
[root@iz2zebkbivtw78jglnhhicz ~]# write bowillkin
haha
nishishui
三、vim操作方法
set nu 或者 nonu : 可以显示行号
在命令模式下输入i:进行输入模式
set ts=4 将制表键空格设置为4个
在.vimrc文件里面加参数:
1 set nu
2 set ts=4
3 syntax on
GG 到最后一行:
gg 到最开始一行:
500G: 直接到第五百行
ctrl + e 往下一行
ctrl + y 往下一行
ctrl + f 往下一页
ctrl + b 往上一页
四、Linux操作进阶
配置系统环境变量:
找到root目录下面你的 .bash_profile, 使用vim .bash_profile打开后:
PATH=$PATH:$HOME/bin:/root
注意:使用冒号分隔不同的路径
ping www.baidu.com : ping网址,查看响应时间, 其中的
icmp:代表因特尔控制传输协议
ttl: 最大存货时间,每经过一个路由以后ttl的值减少1,直到减到0为止后,该数据会被销毁.
ln 文件: 给文件别名,存在的是真实的引用.
ln -s 文件: 给文件创建快捷引用方式
top: 查看系统状态
netstat -ntlp 查询所有端口信息
netstat -nap > h.txt 2>error.txt : 查询端口信息,并将信息输入到h.txt文件里面,发生的错误信息输入到error.txt里面
kill 进程号 -9 : 强制杀掉该进程 加一个 表示强制杀掉进程
chmod 644 恢复默认权限 + 文件名 644代表 rw--rw--rw-
chmod 755 + 文件名 : 755代表 rwx-rw--rw-
ps. 7 5 5 是用二进制表示法表示的, 也可以使用 chmod u+x/u + w /u+r 文件 添加权限
如下 :chmod g + x cal.py 同组
chmod o + x cal.py 其他用户
ssh操作:
ssh [email protected] 输入密码以后可以远程登录到该服务器.
scp操作:
scp 本地地址 [email protected]:目标地址 输入密码以后可以远程复制本机文件到目标服务器的指定目录下
sftp操作:
sftp [email protected] 输入密码后进入到目标服务器,
通过get文件 可以下载目标服务器里面的文件
通过put文件 可以上传本机文件到目标服务器里
五、python
在python文件最上面一行加入:
#!/usr/bin/python
# -*- coding:utf-8 -*-
表示这个文件字符集用utf-8, 在python2里面打印字符串里面有中文要加入u
如: print u'你好'
六、包管理工具 yum/npm
现在的网页服务器一般有:
IIS-Internet Information Service
Apache
NginX -现在主要都用这个, : yum search nginx
nginx -x stop 关闭nginx服务器
想要外网访问内网,必须进行网络地址转换和端口映射
在linux下面安装程序一般分下面几种情况:
安装程序 -*.bin
压缩文件 - 解压缩
源代码 - 构件安装(C语言构建工具)
到解压好的源代码文件夹下执行代码如下:
(python3.6.5源码安装方式:)
make && make install
如果安装中出现错误,执行下列代码, 检查依赖库并进行下载:
yum的配置(如果yum里面没有nginx,则更新yum库):
sudo yum install epel-release
yum update
yum install nginx
systemctl start nginx
systemctl enable nginx
查看防火墙状态:
firewall-cmd-state
停止防火墙:
systemctl stop firewalld
防火墙开端口:
firewall-cmd --zone=public --add-port=80/tcp --permane
防火墙读档:
firewall-cmd --reload
六、配置mariadb(mysql)数据库
在以前使用数据库都是这样搭配一天的: IBM的小型机服务器,Oracle的数据库,EMC的存储设备 贵的一笔
现在都用软件做出更好的效果,多台廉价设备组合起来运行,达到更好的服务器,数据库性能.
数据库服务器操作:
systemctl start mariadb 启动数据库
systemctl stop mariadb 关闭数据库
systemctl restart mariadb 重启数据库
systemctl enable mariadb 开机自动启动数据库
systemctl unable mariadb 开机不自动启动
数据库客户端操作:
mysql -u root -p
输入密码后就进入root用户下的数据库了.
数据库操作语言(SQL):
show databases;
use mysql;
show tables;
select * from user;
select user,host,password from user;
更改数据库权限(重启生效):
update user set host='%' where host='iz2zebkbivtw78jglnhhicz' and user='root';
连接服务器的工具:
SQLyog
Toad for MySQL
Navicat Premium等....