Date: 2019-05-27
Author: Sun
操作系统是电脑的关键,管理电脑软硬件资源,直接运行在裸机上的,其他软件都必须在操作系统上运行
-
操作系统分类
- 桌面操作系统:windows、linux(ubuntu、centos、rehat、debian)、mac os 、中标麒麟
- 移动端:android、symbian、ios、winphone、blackberry
- 服务器端:windows nt、os server 、rehat、centos、geetoo(贱兔)、ubuntu
- 类unix 把由unix衍生出来的系统称之为类unix系统。
-
内核 操作系统最基础的部分,其他应用都要通过内核对计算机硬件进行安全访问。
-
GUI : graphic User interface 图形用户接口
- GNOME(ubuntu 默认)
- KDE
-
32位和64位,寻址方式不同,64位效率更高
-
linux操作系统历史
-
linux有两大发行版阵营
rehat: rehat、centos(免费) debian: ubuntu deepin
linux系统优点:
-
免费、开源
-
树形文件系统
-
速度快,资源少
-
稳定、安全,不宕机
-
多用户、多任务
-
支持多种平台
-
虚拟化和虚拟机
- 虚拟化: 也就是将一台物理机划分成n逻辑的计算机,最大限度的榨干计算机的性能
- docker openstack kvm
- 虚拟机 实现虚拟化的一种技术
- windows: vmware workstation virtual box
- mac :parallels desktop
- 虚拟化: 也就是将一台物理机划分成n逻辑的计算机,最大限度的榨干计算机的性能
二、系统安装
-
ubuntu16.04.3-desktop-amd64 + vmware workstation12.5
-
关机、重启命令
关机: shutdown -h 18:00 #系统在18:00定时关机 shutdown -h +10 #系统10分钟后关机 shutdown -h now 立即关机 halt 立即关机 等于shutdown -h now poweroff 关机 重启: reboot
-
快照 拍摄快照,保存虚拟机状态,以后虚拟机出错后,可以恢复到快照状态
-
linux版本查看
python@ubuntu:/myproject/blog$ uname -r 2.6.32-642.el6.x86_64 2: 内核主版本信息 6:如果是偶数,代表稳定版,如果奇数,代表开发版 32:版本修复次数 x86:系统架构 x86,amd 64: 64位系统 #显示操作系统名称 python@ubuntu:/myproject/blog$ uname -a Linux ubuntu 4.13.0-37-generic #42~16.04.1-Ubuntu SMP Wed Mar 7 16:03:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
-
安装完毕后需要更新软件。
- 桌面右上角,设置(齿轮)—— 系统设置—— system—software update。download from 后的下拉框中选择”中国的服务器“ — 阿里云镜像:http://mirrors.aliyun.com/ubuntu
- 设置显示器,同样在系统设置中 hardware----display 选择所需分辨率
- 语言设置 系统设置——language中,添加汉语,然后再上面的列表框中将其拖动到最前面,下次重启就可以看到中文界面了。重启的时候会提示你目录是否改成汉语的,请选择no
-
显示终端
- 在图形界面里显示终端,请按ctl + alt + t 显示终端或者桌面右键--终端
- 不带图形界面的终端(全shell),请安ctl + alt + f1~f6,可以开启不同的终端窗口,最多6个,按ctl + alt + f7退回到图形界面
-
开启工作区
系统设置—外观—行为:点选开启工作区。
-
root用户和sudo
系统默认的root用户是停用的,所有和系统相关指令均需使用sudo(super user do)命令执行,需要输入密码
三、常用工具
-
ssh
是secure shell的简写
-
传输是加密,可以有效防止数据再传输过程中被截取
-
传输的数据是压缩的,所以速度超快
-
开启器ssh服务,ubuntu默认没有安装ssh服务,首先需要安装ssh服务器
#1. 安装ssh-server sudo apt-get install openssh-server #2. 检查ssh服务开启状态 python@ubuntu:~$ ps -aux | grep ssh root 3747 0.0 0.5 65512 5636 ? Ss 20:54 0:00 /usr/sbin/sshd -D #是这个 python 4119 0.0 0.1 21312 1044 pts/4 S+ 21:16 0:00 grep --color=auto ssh 如果ubuntu是17.0版本以上,需要开启ssh服务 配置文件 /etc/ssh/sshd.config #3.启动ssh服务 sudo service ssh start #或者 sudo /etc/init.d/ssh start #4.测试 ssh -p 端口 用户名@主机地址 #ssh默认端口是22
-
-
远程连接工具
-
xshell
-
putty
-
scrt
-
-
常见快捷键
快捷键 说明 ctrl + c 终止正在正在执行的命令 ctrl + a 回到命令开始 ctrl + e 回到命名结尾 ctrl + u 清空命令行 ctrl + l 或者clear 清屏 tab 命令、文件名、目录名自动补齐 -
常见命令错误
-
命令敲错了
-
多个空格
-
这个命令还没有安装 command not found
-
-
命令的提示符
root@ubuntu16 ~# root 用户名 ubuntu16 主机名 ~ 用户的家目录 root用户的家目录是/root;一般用户的家目录是 /home/用户名 / 系统根目录 # 超级管理员在工作 $ 普通用户在工作
-
软件安装
-
apt 安装
查看软件包信息 sudo apt-cache showsrc 包名 获得源码 sudo apt-get source 包名 安装软件 sudo apt-get install 包名 删除软件 sudo apt-get remove 包名 获取新的软件包列表 sudo apt-get update 升级有可用更新的软件包 sudo apt-get upgrage
-
#安装常见的库
sudo apt-get update
sudo apt-get install man gcc gcc++ make sudo lsof ssh openssl tree vim dnsutils iputils-ping net-tools psmisc sysstat curl telnet traceroute wget libbz2-dev libpcre3 libpcre3-dev libreadline-dev libsqlite3-dev libssl-dev zlib1g-dev git mysql-server mysql-client zip p7zip
man命令是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。
-
查看操作系统的CPU核数
cat /proc/cpuinfo
-
Linux进程管理器
sudo apt install htop
htop
-
系统平均负载
uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示的信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
[root@LinServ-1 ~]# uptime -V #显示uptime命令版本信息
procps version 3.2.7
[root@LinServ-1 ~]# uptime
15:31:30 up 127 days, 3:00, 1 user, load average: 0.00, 0.00, 0.00
显示内容说明:
15:31:30 //系统当前时间
up 127 days, 3:00 //主机已运行时间,时间越大,说明你的机器越稳定。
1 user //用户连接数,是总连接数而不是用户数
load average: 0.00, 0.00, 0.00 // 系统平均负载,统计最近1,5,15分钟的系统平均负载
-
查看磁盘使用情况 df
硬盘类型: HDD 机械硬盘、SDD 固态硬盘 HHD混合硬盘
文件系统
- windows: fat16 fat32 exFat ntfs
- linux: ext2 ext3 ext4
查看磁盘使用情况 df
第一块硬盘是 : sda
第二块硬盘是 : sdb
df -h 以用户最佳体验查看
df -k 以k为单位
df -m 以兆为单位
df -h /dev/sda1 #查看第一个硬盘的使用情况
du 查看文件系统空间使用情况
磁盘分区 fdisk
fdisk -l #查看磁盘分区情况
- 查看进程 ps
ps -ef | grep mysql
ps -aux | grep redis
- 查看进程相关信息 lsof
ps -ef | grep redis
501 417 1 0 11:50下午 ?? 0:00.22 redis/bin/redis-server 127.0.0.1:6379
501 1905 33537 0 11:54下午 ttys000 0:00.00 grep redis
redis的进程id为417
由此进程id查看进程详细信息
lsof -p 417
-
由端口查看进程信息 --- netstat
(1)采用ps查找nginx进程id
ps -aux | grep nginx
zhougua+ 5428 0.0 0.2 34692 4008 ? Ss Jun09 0:00 nginx: master process /opt/openresty/bin/openresty
zhougua+ 22538 0.0 0.0 21292 940 pts/20 S+ 14:13 0:00 grep --color=auto nginx
zhougua+ 51202 0.0 0.1 35080 2308 ? S Jun10 0:00 nginx: worker process
zhougua+ 51203 0.0 0.1 35080 2372 ? S Jun10 0:00 nginx: worker process(2)由进程id查找相关端口
netstat -anp | grep 5428