preview
我这篇文章是只写最实用的知识,我们这里做一下统一软硬件设备,首先,我们这里不搞什么虚拟机了,我们直接操作云服务器就好了。
首先我们要有一个云服务器,我接下来就从购买开始一步步展示如何使用Linux系统,我们去买一个学生机。
我们选择鲲鹏云服务器套餐,我这里推荐你们一买就买满一年,这个可以续费三次也就是说可以买四年,你如果一个月一个月买也是只能续费三次,这样就亏大了,反正都要用的不如薅羊毛多一点。
我这里选择的是CentOS系统7.4这个版本,然后点击支付就好了。
突然肉疼,我在腾讯云那边已经买满了四年的服务器了,为了写这篇文章特地再买一个,各位看到这里的麻烦来个三连吧,我虽然不会有钱收到但是我开心一下也不错,看着粉丝数增加真的开心。
点击返回控制台点击资源就能进入下面这个界面
我们点击云服务器这个查看详情
在顶栏有个远程登录的按钮,点击就能远程登录了
然后就能进来了,我们点击重置密码,因为刚才我们没有创建密码。改完密码后我们找到上图你们的弹性公网IP后面的数字,复制下来待会要用,我这里是121.37.91.175
,你们复制自己的就好了。然后下载点击右边蓝色下载远程控制工具
下载完是一个压缩包来的,我们把它解压,然后打开里面。
点击这两个可执行文件运行,也可以创建快捷方式在桌面,这样以后打开就很方便了。
我们现在点击第二个红色箭头指向的这个.exe文件,这个是连接服务器命令行的软件,上面那个是传输文件的
把我叫你复制的那串数字粘贴到主机名这一栏,很明显刚才那串是主机名。然后用户名填root,连接
把你刚才改的密码填上去,确定
这就连接上来了。
1. Linux基础
1.1 Linux系统的目录结构
- srv 存放所有与服务器相关的服务
- proc 一个虚拟文件系统、常住内存
- /lib、/usr/lib、/usr/local/lib 存放的是libraries,即系统使用的函数库
- Lost+Found 当系统异常关机、奔溃或出现错误时,系统会将一些遗失的片段存放在本目录
接下来我会每个指令都会在下面配一张真实运行的截图,第一行是进入根目录/
然后执行ls
命令打印根目录下的文件和文件夹
在linux系统里面是没有象windows一样的后缀,比如.exe
这种是不存在的。
1.2 Linux目录和文件的命名
- 除了字符
/
之外,所有的字符都可以使用 - 目录名或文件名的长度不能超过255个字符
- 目录名或文件名是区分大小写的
- 文件的扩展名对系统没有特殊含义
1.3 绝对路径和相对路径
- 绝对路径:以当前物理机(服务器或者说你当前使用的电脑)为参考系,文件在这个机器的真实位置
- 相对路径:相对于当前文件夹的位置
1.4 切换目录
- 切换到指定目录中:cd 目录名
- 切换到上一级目录:cd …/
- 切换到系统根目录:cd /
- 切换到用户主目录:cd ~
- 切换到上一个目录:cd -
- 显示当前目录路径:pwd
- 清屏:clear
这里可能看得有些凌乱,但你只需要看[root@ecs-kc1-large-2-linux-20211127171554 /]这一行就是我自己写的命令了
对了,linux这里建议你加上目录才进去哦,比如进入root目录可以执行,这样会比较规范。
cd ./root #当前目录有root文件夹
cd /root #进入系统根目录下的root文件夹
#以上两种写法均可
1.5 创建目录
- 创建单级目录:mkdir 目录名
- 创建多级目录:mkdir -p 目录名1/目录名2/…
1.6 增删查该目录
-
查看当前目录下的文件列表(普通格式):ls
-
查看当前目录下的文件列表(详细格式):ll
-
复制目录:cp -r 源目录 目标目录
-
剪切/重命名目录:mv 源目录 目标目录
-
创建文件:touch 文件
-
cat 命令:用于显示行数较少文件的内容,不能进行上下翻页,格式:cat 文件
-
more命令:用于显示行数较多文件的内容,只能进行往下翻页,格式:more 文件
- 查看的时候使用q键退出,空格显示下一页数据,回车显示下一行数据
-
less 命令,用于显示行数较多文件的内容,可以进行上下翻页,格式:less -m 文件
- 查看的时候使用q键退出,空格显示下一页数据,回车显示下一行数据
- PageUp显示上一页数据,PageDown显示下一页数据
-
tail 命令,用于显示文件最后几行的数据,实际使用的非常多,格式:tail 文件
- 指定行数:tail -n 文件
- 动态查看:tail -f 文件
1.7 增删查改文件
-
复制/重命名文件:mv 源文件 目标文件
-
删除文件:rm 文件
-
查找文件名称是以ins开头的文件(普通格式):
-
find / -name “ins*”
-
查找文件名称是以ins开头的文件(详细格式):
-
find / -name “ins*” –ls
-
查找用户itcast的文件(普通格式):
-
find / –user itcast
-
查找用户itcast的文件(详细格式):
-
find / –user itcast –ls
1.8 用户管理
- 添加用户:useradd 新用户名
- 添加用户:useradd 新用户名 -d 指定用户HOME目录
- 添加用户:useradd 新用户名 -g 指定的组名
- 修改密码:passwd 用户名
- 切换用户:su 用户名
- 删除用户不会删除HOME目录:userdel 用户名
- 删除用户并且删除HOME目录:userdel -r 用户名
- 添加组:groupadd 用户名
- 删除组:groupdel 用户名
注意:如果该组有用户成员,必须先删除用户才能删除组
1.9 重要文件存放路径
- 【用户文件】:/etc/passwd
- 【密码文件】:/etc/shadow
- 【组文件】 :/etc/group
1.10 压缩解压
- 压缩:tar –zcvf xxx.tar.gz ./*
- 解压:tar -zxvf xxx.tar.gz [-C 目标目录]
1.11 文件权限
- r :对文件是指可读取文件内容、对目录是指可ls查看这个目录
- w:对文件是指可修改文件内容,对目录是指可以在其中创建或删除子节点(目录或文件)
- x :对文件是指是否可以被运行,对目录是指是否可以cd进入这个目录
1.12 文件类型
- 普通文件(-): 包括文本文件、数据文件、可执行的二进制文件等
- 目录文件(d): Linux系统把目录看成是一种特殊的文件,利用它构成文件系统的树型结构
- 设备文件(s): Linux系统把每一个设备都看成是一个文件
1.13 权限管理
- chmod:变更文件或目录的权限
- chmod 755 a.txt
- chmod u=rwx,g=rw,o=r a.txt
- chown:变更文件或目录的所属用户和所属组
- chown 用户:组名 文件名
- chown 用户:组名 目录名
- chown -R 用户:组名 目录名
2. Vi编辑器
三种模式:命令模式、插入模式、底行模式
- 切换到命令模式:按esc键
- 切换到插入模式:在命令行模式按i、o、a键
- i 在当前位置前插入
- I 在当前行首插入
- a 在当前位置后插入
- A 在当前行尾插入
- o 在当前行之后插入一行
- O 在当前行之前插入一行
- 切换到底行模式:在命令行模式按 : (冒号)键配合相应代码使用
- 查看后退出::q
- 保存并退出::wq
- 不保存退出::q!
常见快捷键:在命令行模式下进行
- dd :删除当前行
- yy :复制当前行
- nyy:从当前行向后复制几行
- p :粘贴
- R :替换
3. 软件安装
3.1 rpm包安装
-
安装:rpm -ivh 软件包名
-
升级:rpm -Uvh 软件包名
-
卸载:rpm -e 软件名
-
查找:rpm -qa|grep 软件名
3.2 yum源安装
- 安装:yum install 软件名
- 更新:yum update 软件名
- 卸载:yum remove 软件名
- 查找:yum search 软件名
3.3 常用软件
- yum -y install wget
- yum -y install gcc
- yum -y install gcc-c++
- yum -y install vim
- yum -y install lrzsz
3.4 上传下载
- 安装:yum -y install lrzsz
- 上传:rz
- 下载:sz filename1 filename2 filename3
3.5 主机名设置
- 查看主机名:hostname
- 临时修改:hostname 新主机名
- 永久修改:vi /etc/sysconfig/network
3.6 IP地址
- 查看IP地址:ifconfig
- 临时修改:ifconfig eth0 新IP地址
- 永久修改:vi /etc/sysconfig/network-scripts/ifcfg-eth0
3.7 域名映射设置
- 域名映射: vi /etc/hosts
3.8 网络服务设置
- 查看指定服务:service 服务名 status
- 启动指定服务:service 服务名 start
- 停止指定服务:service 服务名 stop
- 重启指定服务:service 服务名 restart
3.9 防火墙设置
- 查看防火墙:service iptables status
临时设置:
- 启动防火墙:service iptables start
- 关闭防火墙:service iptables stop
- 重启防火墙:service iptables restart
永久设置:
- 允许防火墙:chkconfig iptables on
- 禁止防火墙:chkconfig iptables off
单独添加:
- /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
- /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
- /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
- /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
- 保存:/etc/rc.d/init.d/iptables save
- 查看:/etc/init.d/iptables status
单独禁止:
- /sbin/iptables -I INPUT -p tcp --dport 80 -j DROP
- /sbin/iptables -I INPUT -p tcp --dport 22 -j DROP
- /sbin/iptables -I INPUT -p tcp --dport 3306 -j DROP
- /sbin/iptables -I INPUT -p tcp --dport 8080 -j DROP
- 保存:/etc/rc.d/init.d/iptables save
- 查看:/etc/init.d/iptables status
3.10 自启动管理
自启动的软件或服务应该存放在/etc/init.d/下
- 查看所有:chkconfig --list
- 添加启动:chkconfig --add name
- 删除启动:chkconfig --del name