一文读懂Linux
学习目标
Linux 操作系统
常用命令:通过命令完成系统常用操作
常用软件的使用(中文输入法、python、pip、pycharm、vim、ssh、scp、nginx)
Linux 基础知识
Linux:免费、开源的类UNIX操作系统
是一个多用户、多任务、支持多线程和多CPU的操作系统。
是一个性能稳定的多用户网络操作系统,常用于服务器开发
Linux 内核 :一套用于软件与硬件交互的源码
稳定版:没有bug,软件版本更新慢
测试版:有新功能,有新bug
Linux 发行版:在Linux内核基础上二次开发一套系统软件(浏览器、聊天工具等)
在发行版本中可以完成少量类似windows的操作
Ubuntu
redcat
centos
Ubuntu操作系统的安装
虚拟机简介:
一个安装在操作系统上的特殊软件,该软件可以运行操作系统
虚拟机软件中可以运行操作系统,常见的有VMware Workstation、Virtual Box等
Win10中安装虚拟机
在虚拟机中安装Ubuntu操作系统
在虚拟机中安装CentOS操作系统
Win10+Ubuntu+CentOS 可以同时运行
Ubuntu的安装
1、选择配置类型
2、选择镜像
3、用户名密码
4、虚拟机位置
5、磁盘大小
6、自定义硬件
7、内存设置
8、网络模式
网络模式
选择桥接:
虚拟机的ip和win10的ip会在同一个网段
相当于虚拟机和win10链接同一个路由器
选择Nat模式:
虚拟机ip和win10的ip不在同一个网段
相当于win10是一个路由器并且路由器下方链接虚拟机
9、安装成功
更改Ubuntu下载源
ubuntu下载源地址都在国外服务器,下载东西慢
可以更新软件源,从国内服务器地址下载
在Ubuntu16中可以通过界面操作更改下载源
设置=> system setting=> soft update=> ubuntu soft => download from => aliyun
关闭重新加载
也可以更新apt的配置文件
实质上下载源地址存放在 /etc/apt/source.list 更新阿里云地址
sudo update重新加载
更改中文显示与输入
Ubuntu默认显示英文 ,对于中文显示、输入需要单独配置
设置显示中文
设置=>system setting=>language support=>install/remove language=>勾选chinese simple
拖拽汉语放在最上方位置=>重启操作系统
设置中文输入
安装中文输入法 sudo apt-get install ibus-pinyin =>安装完毕重启系统
在拼音=>文本输入设置=>切换下一个源 可以设置 切换输入法快捷键
在拼音=>首选项=>拼音模式下可以去掉拼音纠错=>重启系统生效
Linux 目录
/ 代表系统根目录,一般只存放文件夹
/home 用户家目录
/etc 软件配置文件目录
/opt 安装文件存放目录
/bin、/usr/bin、 /usr/local/bin 可执行文件路径
/lib、/usr/lib、 /usr/local/lib 依赖库路径
/var/www web 软件部署目录
/proc 进程目录
在linux操作系统下 一切皆文件
Linux 基础命令
命令格式
command [-options] [parameter1] …
说明:
command命令名,相应功能的英文单词或单词的缩写
[-options]选项,可用来对命令进行控制,也可以省略,[]代表可选
parameter1 …传给命令的参数:可以是零个一个或多个
磁盘操作命令
ls 展示目录文件,常用参数 -alh
案例: ls -alh
-a 所有文件
-l 列表显示更多信息
-h 可读性强
-alh 展示内容drwxr-xr-x 2 zzy admin 4.0K Mar 30 00:58 Desktop
d:文件夹 -代表文件 l代表链接
rwx:代表当前用户权限可读可写可执行
r-x:代表当前用户组权限可读不可写可执行
r-x:其他用户可读不可写可执行
2 代表链接数
zzy代表文件所属用户
admin代表当前用户组名
4.0K 文件大小
Mar 30 00:58 创建日期
Desktop 文件名
>重定向,可以用于将信息保存到文件
案例:ls -alh > content
> 使用会覆盖原有内容
>> 会在原有内容进行追加
more用于显示文件内容,有分屏显示效果
案例:more content
空格用于翻页
q用于退出
阅读结束直接退出
cat内容浏览,可以同时浏览多个文件
案例:cat content1 content2
|管道,左边输出作为右边输入
案例:ls -alh | more
clear用于清除以前编写命令
cd用于切换工作目录
案例:cd /home/zzy cd 不带参数可以进入当前用户家目录
cd ~ 可以进入当前用户家目录
cd - 可以进入上次所在目录
pwd查看当前所在目录
mkdir文件夹创建
案例:mkdir temp
层级文件夹创建 mkdir -p 外层文件夹/内层文件夹
rmdir删除空目录
案例:rmdir temp
非空目录可以使用rm -rf temp
touch创建文件
案例:touch my.conf
rm删除文件,常用参数-rf
案例:rm my.conf
删除非空目录 rm -rf tempdir
-r 代表递归删除,-f 代表忽略错误
find查找文件,常用参数-name
案例:find -name '*.conf'
结合-name参数可以对文件进行查找,支持正则表达式
cp拷贝文件
案例:cp my.conf /home/zzy/my.conf
在修改配置文件之前都是先备份配置文件
mv移动文件
案例:mv my.conf /home/zzy/my.conf
tar归档,可以管理多个文件,常用参数-cxtvf
案例:
tar -cvf 归档名 文件1 文件2 ... 创建归档
tar -tvg 归档名 列举归档管理文件对象
tar -xvf 归档名 解开归档
gzip解压缩,常用参数-dr
案例:
gzip -r 归档名 可以对归档进行压缩
gzip -d 压缩文件名 可以对压缩文件解压
which命令用于查看命令所在位置 案例:which pip
ln链接,分为软连接,硬链接
硬链接:
案例:ln file hfile
只能链接文件,不能链接目录
占用磁盘空间
源文件改变,硬链接文件改变
源文件删除失效,硬链接变更为文件
软连接:
案例:ln -s file sfile
可以链接文件或者目录
不占用磁盘空间,相当于快捷方式
源文件改变,软连接文件改变
源文件删除失效,软连接失效
将Linux自带python链接到python3.5
查看python which python
删除原有python的链接 sudo rm /usr/bin/python
创建新的python的链接 sudo ln -s /usr/bin/python3.5 /user/bin/python
再次输入python就进入了python3
用户权限命令
passwd设置密码
案例:sudo passwd 可以更改管理员root的密码
sudo passwd zzy 可以更改zzy的密码
su切换用户
案例:su默认切换root账户
su zzy切换zzy账户
useradd创建账户等同adduser,常用参数-m
先进入root账户
案例:useradd -m temp
-m参数代表默认创建家目录
userdel删除账户等同deluser,常用参数-r
先进入root账户
案例:userdel -r temp
-r参数代表同时删除家目录
exit退出账户
会进入上一个账户,如果没有上一个账户,则关闭终端
chmod权限更改
普通用户只能更改自己所有文件权限
超级管理员可以更改所有文件权限
字母法:chmod u/g/o/a +/-/= r/w/x 对象
数字法:chmod 666 对象
更改文件夹时-R可以完成递归
系统命令
ps查看进程,常用参数-ef,aux
案例:ps -ef | grep mysql
kill杀死进程
案例:sudo kill -9 进程号
ping查看网络是否联通
案例:ping baidu.com
ifconfig查看网卡信息
vim文本编辑神器
VIM有3中模式: 命令模式、编辑模式、末行模式
vim + 文件名可以进入文件,默认为命令模式
编辑模式
在命令模式下可以使用i I a A o O进入编辑模式
在编辑模式下按下ESC键可以退出 进入命令模式
i在光标前插入 I在行首插入
a在光标后插入 A在行末尾插入
o在下面一行,O在上面一行插入
命令模式
移动光标
h 向左
j 向下
k 向上
l 向右
gg 移动到开头
G 移动到结尾
M 移动到中间
数字 G 移动到指定行
删除指令
x向后删除
X向前删除
dd删除当前行
n dd删除n行
D删除光标之后内容
d0删除光标之前内容
+ 撤销与反撤销
撤销 u
反撤销 ctrl+r
+ 复制粘贴
yy 复制当前行
n yy复制n行
p 粘贴
+ 查找
/abc 可以查找字符串abc
n找下一个
N找上一个
末行模式
行号
:set nu 显示行号
:set nonu 不显示行号
退出保存
:q 退出未修改文件
:q! 退出文件不保存
:wq 退出并且保存
如果文件修改了,但是直接强退终端,会产生临时文件
可以删除隐藏的临时文件
SSH协议
SSH协议可以用于Linux远程登录
需要在服务器(被登录电脑)安装 openssh-server
sudo apt install openssh-server
需要在客户端(用于登录的电脑)安装client(win10自带)
win10登录 win + r 打开运行窗口
输入 ssh 用户名@IP 即可登录
第一次登录服务器需要输入yes确认,以后就不用了
如果输入错误导致登录窗口闪退,需要在C:\Users\Administrator\.ssh删除 known_hosts文件即可
SCP文件传输
使用该命令的前提条件要求目标主机已经成功安装openssh-server
使用格式
本地文件复制到远程
scp FileName RemoteUserName@RemoteHostIp:RemoteFile
本地目录复制到远程
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder
远程文件复制到本地
scp RemoteUserName@RemoteHostIp:RemoteFile FileName
远程目录复制到本地
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName
Ubuntu安装pip
Ubuntu自带了Python2和python3
默认python链接的是python2
可以删除默认的python链接
创建新链接链接到python3
Ubuntu没有自带python的包管理工具pip
需要自行安装python3的pip
sudo apt install python3-pip
安装成功即可使用pip3
可以创建pip软连接到pip3,使用方便符合习惯
Ubuntu安装Pycharm
下载 linux版本(如果在win10上下载 可以使用scp命令拷贝到ubuntu)
pycharm-community-2018.2.4.tar.gz
将压缩包解压
gzip -d pycharm-community-2018.2.4.tar.gz
解开归档
tar -xvf pycharm-community-2018.2.4.tar
也可以一步完成,解压后解开归档
tar -gxvf pycharm-community-2018.2.4.tar.gz
安装
cd bin
sh pycharm.sh
可以在安装pycharm时创建快捷指令
也可以在.bashrc中添加启动配置
进入当前用户主目录 .bashrc
alias charm="bash /opt/pycharm-community-2018.2.4/bin/pycharm.sh"
source .bashrc
VUE 项目部署流程
在Ubuntu服务器安装nginx
sudo apt install nginx
安装好之后会自动在/var 目录自动添加www目录
发布vue项目(发布的结果可以得到dist文件夹)
npm run build
将dist文件夹同步到ubuntu
scp -r dist 用户名字@IP地址:vue_demo
输入密码之后即可同步
将同步的文件夹移动到 /var/www
比如移动的结果为 /var/www/vue_demo
添加项目所对应的nginx配置文件
在/etc/nginx/conf.d 目录新建配置文件vue_demo.conf
sudo vim nginx.conf
编辑添加
server {
listen 1912;
root /var/www/vue_demo;
index index.html
}
重启nginx服务
sudo nginx -s stop
sudo nginx
就可以在win10或者手机访问VUE项目了
网友评论