linux操作系统

Linux 简介

Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。

Linux的发行版

Linux的发行版说简单点就是将Linux内核与应用软件做一个打包
市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS

Linux应用领域

今天各种场合都有使用各种Linux发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,通常服务器使用LAMP(Linux + Apache + MySQL + PHP)或LNMP(Linux + Nginx+ MySQL + PHP)组合。


linux和windows比较.png

Linux
**代表重点

一.快捷操作
ctrl +c -中断
clear -清屏
ctrl + d - 结束输入
ctrl + a -快速的来到指令的最前面
ctrl + e - 快速的来到指令的最后面
tab -自动补全功能
上下按键 - 快速的调出历史指令


二.基本常识





linux系统默认颜色中各种文件类型的颜色

白色:表示普通文件
蓝色:表示目录
绿色:表示可执行文件
红色:表示压缩文件
浅蓝色:链接文件
红色闪烁:表示链接的文件有问题
黄色:表示设备文件
灰色:表示其他文件



根目录下的目录
/bin : 二进制文件,指令存放地方
/boot : 存放和启动相关的内容
/dev : 存放设备的地方
/etc : 存放配置文件的地方
/home : 家,普通用户家目录存放的地方
/lib /lib64 : 存放都是库文件
lost + found : linux系统文件独有的一个目录
/media : 媒体设备
/mnt : mount 是以后我们要挂载的地方
/opt : 可选的附加程序
/proc : 和进程相关的文件
/root : root用户的家目录
/sbin : 只有超级管理员才能执行的指令 sudo
/selinux : 是linux的一种安全机制,基本没用过,还得关掉它
/srv : 相关服务文件存放的地方
/sys : 和windows的sys,存放硬件相关驱动信息
/tmp : 临时文件存放的地方
/usr : unix system resource, 自己后续手动安装软件的时候安装到 /usr/local里面
/var : 存放的是日渐增长的文件,比如日志,比如数据库等



tar是Linux系统的归档文件(类似于Windows下的rar文件)

shell 文件后缀名.sh

./指的是當前目录
.一个点是当前目录 ..是上级目录

装软件装在目录usr下面
usr 里面的local 相当于Windos下面的Progamar Files

http默认端口 80
https默认端口 443


bash - bourne again shell 壳程序(交互界面)


三.查看操作
**cat - 查看文件
cat -n +文件名 - 查看文件n行内容
less/more 分屏查看(按空格继续)
head-行数/tail-行数 -查看文件前面行数/后面部分行数
wc + 文件 - 查看文件单词数
wc -l +文件 - 查看行数
cat /etc/centos-release 查看系统
cal -查看日历
date - 查看时间
whatis 命令所查看简介
history -查看历史命令
!编号 - 重新执行编号命令


**四.排序操作
sort +文件 -对文件进行排序
sort -r +文件 -对文件进行排反序
uniq +文件 -对文件进行相邻的去重
sort +文件 | uniq(排序加去重) 
命令 >(输出重定向) 文件名
>(一个>是覆盖输出) >>(两个>>是追加输出)  2>(错误重定向)
ls -R / >ok.txt 2>error.txt(当普通用户想访问根目录时,能访问的输入到ok.txt ,错误的输出到error.txt )

**- | -  管道 连接两个命令,把前一个进程的输出作为后一个进程的输入


五.压缩操作
gzip /gunzip 压缩/解压缩
xz -z 压缩/ xz -d 解压缩

tar -xvf +归档文件名字 -解归档   (加v可以看过程)
tar -cvf +归档文件名字 文件名 -创建归档

tar -cvf 归档文件名字 ./*(把當前路徑所有文件歸檔成一個文件)



**六.用户操作
#代表的意思是超级管理员在执行指令/$代表的是普通用户在执行指令
who - 查看所有登录系统用户
who | wc -l 查看登錄人數
who am i - 查看自己用户
last - 查看最近登录的用户
useradd + 用户名  -创建用户(创建成功没有提示信息)
userdel + 用户名 - 删除用户
passwd  + 用户名(不加用户名改的是root密码) - 改用户密码()
su + 用户名 -切换用户
logout -  退出
exit - 退出        

七.服务器操作,程序操作
reboot / init 6 -重启服务器
shutdown / init 0 -关机
shutdown + 时间 - 指定时间后关机
shutdown -c - 取消关机
shutdown now - 立刻关机
服务器 & - 启动服务器时放在后台运行
jobs - 哪些程序在后台运行
fg %1 把编号为1的程序放在前台运行
crtl +z ,bg %1把程序放在后台运行

ps - processes -查看进程状态
ps -ef  / ps-aux 查看所有进程
kill 杀掉进程(-9 强制杀掉)
top - 相当于任务管理器


八.帮助
man + manual-查看参考手册
命令 --help 查看这个命令的帮助信息


**九.目录操作
**pwd -  打印当前的工作目录
/home/   普通用户的目录
/root/   超级管理员用户
**cd  - 切换目录
cd .. -  返回上级目录
cd ~ - 返回主目录
ls - 查看目录下的内容 默认ls是带参数 --color=auto 'ls --color=auto'
ls -a -查看隐藏文件
ls -r -倒查看 
文件夹和文件以.开头就是隐藏的
ls -la(加了l就是长格式查看,以d开头是文件夹,以-开头是文件) ls -l = ll
ls -la/(根目录下的文件夹)
ls -lR/ 递归查看



 




十.发送消息操作
write + 用户 -对指定用户发消息
mesg y/n -是否接收消息
wall - 给所有人发送广播消息
ctrl + d - 结束输入
scp 文件 用户名@1.2.3.4:/目录/文件名 - 给别的用户传输文件

**十一.文件和文件夹操作
mkdir +文件夹 - 创建文件夹
rmdir + 文件夹 - 删除空文件夹
mkdir -p + 文件夹/文件夹 - 在文件下面创建文件夹
touch + 文件名 - 创建一个空文件
vim  + 文件名 - 创建一个文件并进入命令模式
echo  + 内容 > 文件名 -创建一个文件并写入内容
wget http://www.sohu.com/ -联网通过URL获得指定文件
rm + 文件名 /删除文件 默认rm是带-i参数 'rm -i'
rm -f +文件名 /强行删除
rm -rf +文件夹/强行删除文件夹

cp index.html sohu.html -拷贝文件index命名成sohu
cp -r abc def - 拷贝文件夹abc新建成def文件夹
mv -移动文件或文件夹
mv +移动的文件 +移动到的目录/新的文件名(不加移动的目录就是在当前目录
,可以重命名)

ln 旧文件名 新文件名 -硬连接 (不复制,增加一个文件备份)
ln -s 旧文件名 新文件名 -软连接(建立快捷方式)
可以为常用的文件和文件夹在用户主目录下创建软连接来操作




十二.vim的工作模式
1.命令模式
2.编辑模式 a /i 进行编辑模式
3.末行模式 :进入末行模式
在末行模式执行命令 :!+命令

vim +文件名 -进入文件进行编辑(命令模式)
命令模式下的操作

gg回到第一行
GG回到最后一行
gg+数字 (上回到多少行)
GG+数字 (下到多少行)
ctrl+f往下翻一页  ctrl +b往上翻一页 ctrl+e向下翻一行 ctrl+y向下翻一页
ctrl+r重做
按两次ctrl+w 切换窗口

dd删除一行
数字加dd删除

d0删到行首
d$删到行尾
u撤销
dw删除一段单词
yy复制p粘贴
yy+数字 复制

!v 刚才执行的vim

末行模式下的操作

/内容 -搜索
1,$s/self/shit/c(是否确认)i(忽略大小写) - 替换从第1行到最后1行把self换成shit



十三.改变文件权限操作
第1个字符:文件类型
- : 一个文件
d : 一个目录
l : 一个链接
c : 字符设备
b : 块设备

rw-
第2-4个字符:文件的所有者对文件有何种操作操作权限
r-read -读
w-write -写
x-execute -执行

r--
第5-7个字符:和文件所有者同组的用户对文件有何种操作权限

r--
第8-10个字符:其他用户(不是所有者也不同组对文件有何种操作权限)


**chmod-改变模式(操作权限)
chmod u+x hello.py -给文件所有者添加执行权限
chmod g+x hello.py -给文件所有者同组的用户添加执行权限
chmod o+x hello.py -给其他用户添加执行权限
chmod 755 hello.py -给所有用户添加执行权限
-删除权限
*chown-改变所有者
chown 所有者 文件名
chgrp -改变群组




十四.其他操作

1.执行程序 ./文件

2.python2改python3
2to3 -w 文件名

3.写文件配置
vim .vimrc (给vim写配置,在主目录)
'''
set nu  显示行号
syntax on  高亮语法
set ruler 显示光标坐在位置
set ts=4 制表键空格数
set autoindent 自动缩进
set nohls(不要高亮显示搜索结果)
'''
4.映射快捷键
map  gg99999dd 按f2删除99999行

inoremap  _main if __name__ == "__main__": 
i是Insert模式 nore不递归

5.vim操作多个文件
vim 文件1 文件2 文件3 同时打开多个文件

末行模式输入:ls
查看多个文件
切换文件:b 文件编号
sp 分屏
按两次ctrl+w 切换窗口
qa全部关闭 qw/ZZ关闭

6. 设置别名
alias 旧名="新名" - 设置一个别名
unalias - 取消别名 










十五.Linux系统安装软件:
三种下载方法
1.使用包管理工具 - yum / apt / rpm / deb/ (推荐使用)
2.源代码构建安装 - 直接下载源代码
3.直接下载二进制程序 -配置环境变量之后使用


以前xshell版本
sevice nginx start

-搜索
yum search nginx

-安装Nginx
yum -y install nginx
-删除Nginx
yum -y remove nginx
-更新
yum update nginx(不带名字)
-查看nginx的软件信息
yum info  nginx
- 查看已经安装的软件包
yum list installed

-查看有没有nginx
yum list installed | grep nginx

-启动Nginx服务器
systemctl start nginx
-重启Nginx服务器
systemctl restart nginx
-停止Nginx服务器
systemctl stop nginx
-查看Nginx服务器状态
systemctl status nginx
-设置Nginx开机自起
systemctl enable nginx
-禁止Nginx开机自起
systemctl disenable nginx

安装apache
yum -y install httpd



/usr/share/nginx/html  网页文件路径
/etc/nginx/nginx.conf. 配置文件路径


苹果系统操作
1.sftp root@公网地址 进入服务器
2.cd /usr/share/nginx/html 进入服务器的目录
3.lcd   进入本地文件的目录
4.put -r web1807/.  上传本地文件

SFTP:常用命令
exit /bye /quit  -退出sftp
cd /lcd 切换远端工作目录 /本地工作目录
mkdir /lmkdir 在远端创建目录/在本地创建目录
pwd /lpwd 查看远端工作目录/查看本地工作目录
ls /lls -查看远端工作目录下的内容/查看本地工作目录的内容
put -上传文件(-r  递归目录下所有的文件和文件夹)
get -下载文件(-r  递归目录下所有的文件和文件夹)





十六.源代码构建安装Python


1. 安装gcc和依赖库
yum -y install wget gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

2.下载Python源代码
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz

3.解压缩和解归档
xz -d / gunzip Python-3.7.1.tar.xz
tar -xvf Python-3.7.1.tar


4. 执行配置生成构建文件
cd Python-3.7.1

./configure --prefix=/usr/local/python37 --enable-optimizations
这一步完成之后会生成一个名叫Makefile的文件(C语言自动构建的脚本文件)

5.构建和安装(Makefile)
make && make install(如果第一个失败了,就不执行第二个)
make || make install(如果第一个失败了,执行第二个)

6.注册环境变量
cd /root
vim .bash_profile
按i
 
PATH=$PATH:$HOME/bin:/usr/local/python37/bin
按Esc
按:
wq

7.断开服务器连接,重新连接
python3 --version

8.注册快捷方式(软连接)
ln -s /usr/local/python37/bin/python3 /usr/bin/python3
pip3 install pylint

9.查看版本 检查安装好没
redis-server --version
redis-cli --version

 
 

十七.网络相关协议操作
ping -检查网络可达性 -ICMP
tracepath - 检查数据路由
ifconfig  - 检查网络接口(网络适配器)
ip -查看配置网络接口相关信息
netstat -查看网络状态(端口占用,进程,已建立的连接)
netstat -nap |grep 服务器名or端口号

47.107.191.176:22-公网
172.18.225.96-私网



你可能感兴趣的:(linux操作系统)