Linux_02
1.vim编辑器
vim操作命令 --在命令模式下进行
pageup 往上翻页
pagedown 往下翻页
H 移动到屏幕首行
gg 移动光标到文档的首行
前面加数字n表示移动到n行内容
G 移动到文档最后一行 /nologin 在整个文档中从上往下查找
再按n 选择下一个单词
N 选择上一个单词 ?root 在整个文档中从下往上查找
再按n 选择下一个单词
N 选择上一个单词 dd 删除光标所在行内容
dd前面加数字n表示删除n行内容
例 3dd 删除从光标所在行开始3行内容
dG 清空整个文档的内容(先移动到文档的首行)
u 撤销上一步操作 yy 复制
yy前面加数字n表示复制n行内容
p 粘贴
底线命令模式:
:q! 强制退出
:wq! 强制写入退出
:set nu 显示行号
:数字 调到数字那行
2.用户管理和文件目录权限
linux下面的用户及权限:
root用户: 超级管理员, 相当于QQ群里面的群主
普通用户: 可以做一些简单的操作, 如果需要做系统服务相关的操作,需要授权
3.文件权限详解
r read可读,可以用cat等命令查看
w write写入,可以编辑或者删除这个文件
x executable 可以执行
4.sudo命令用法 -- sudo命令用来以其他身份来执行命令,预设的身份为root
1 使用liulaoshi用户登录 su - liulaoshi 切换用户
2 查看/root目录,提示无权限
3 所以我们要使用sudo命令来查看
4 但是提示此用户不在/etc/sudoers文件里面
5 我们需要使用visudo命令将liulaoshi加入到/etc/sudoers文件中,注意最好不要使用vim命令直接编辑此文件
(可以通过visudo命令直接编辑sudoers文件,使用这个命令还可以检查语法,比直接编辑 vim /etc/sudoers更安全)
写入
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
liulaoshi ALL=(ALL) ALL #允许tiger在任何地方,执行任何命令
6 将用户加入到文件中后,我们就可以用liulaoshi用户使用sudo命令查看/root目录
5.给文件和目录添加或删除权限
Linux权限的目的是(保护账户的资料)
Linux权限主要依据三种身份来决定:
- user/owner 文件使用者,文件属于哪个用户
- group 属组,文件属于哪个组
- others 既不是user,也不再group,就是other,其他人
第1个字母表示文件类型
第2-4个字母表示所属用户user 简写u
第5-7个字母表示所属用户组group 简写g
第8-10个字母表示其他人other 简写o
chmod u+r /opt/liulaoshi.py # 给用户添加只读的权限
chmod u+w /opt/liulaoshi.py # 给用户添加可写的权限
chmod u+x /opt/liulaoshi.py # 给用户添加可执行文件的权限
chmod g+r /opt/liulaoshi.py chmod u-r /opt/liulaoshi.py # 给用户删除只读的权限
chmod u-w /opt/liulaoshi.py # 给用户删除可写的权限
chmod u-x /opt/liulaoshi.py # 给用户删除可执行文件的权限
chmod o-r /opt/liulaoshi.py
我们还可以修改属主和属组:
chown root.root liulaoshi.py # 修改文件所属主和所属组
chown root:root liulaoshi.py # 修改文件所属主和所属组,这两个命令一样
修改主 chown 修改组 chgrp
6.软连接
ln -s /opt/zhangqihang/lihua.py lihuadashuaige.py
7.tar解压命令
命令语法:
tar命令 参数 文件
-z 使用gzip命令
-v 显示压缩解压过程
-c 压缩文件
-x 解压文件
-f 指定文件
压缩文件 压缩当前目录下的文件 名为allpy.tar
tar -cf allpy.tar *
tar -cf allpy.tar * # 压缩当前文件夹下面的所有文件到allpy.tar
tar -xf allpy.tar # 解压文件
tar -zcf allpy.tar.gz * # 压缩带gzip的文件
gzip -d allpy.tar.gz # 解压gzip文件
tar -zxvf allpy.tar.gz # 一条命令解压带gzip和tar的压缩包
8.netstat命令
netstat -tunlp # 查看系统中开放的端口
9.ps命令
ps -ef # 查看系统运行的进程
!ps # 运行上一次运行的ps -ef命令
10.kill命令
kill 进程ID # 杀掉相关进程ID
kill -9 进程ID # 强制杀掉相关进程ID
pkill 正则匹配相关进程名 # 杀掉匹配到的所有进程
killall 正则匹配相关进程名,类似于pkill
11.SELinux
查看selinux
getenforce
临时关闭selinux
setenforce 0
一次性永久关闭selinux
编辑selinux配置文件
vim /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
保存退出
12.linux防火墙
iptables -L # 查看系统防火墙规则
iptables -F # 清空所有防火墙规则 systemctl stop firewalld # 停止防火墙
systemctl status firewalld # 查看防火墙运行状态
systemctl start firewalld # 启动
systemctl disable firewalld # 永久关闭防火墙
13.df命令
df -h 命令查看系统磁盘空间
14.tree命令
递归显示文件和文件目录(如果没有此命令,需要使用yum install tree安装)
15.设置主机名
hostnamectl set-hostname liulaoshi
16.DNS
DNS(Domain Name System,域名系统)解析原理:
1 我在本地访问www.baidu.com
2 首先会从本地DNS缓存中去查找,如果没有
3 就会去本地hosts文件中去查找,如果没有
4 去公网的DNS服务器查看是否有此域名解析记录,如果还没有
5 说明此域名没有在公网注册解析
windows下的hosts文件
C:\Windows\System32\drivers\etc\hosts
linux下的hosts文件
/etc/hosts
17.nslookup命令
用来将域名解析为IP
nslookup
nslookup www.baidu.com
18.计划任务(分时日月周)
crontab -e 编辑计划任务 crontab (选项)(参数)
-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
分 时 日 月 周
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
19.yum工具
linux的所有yum源文件全部放在/etc/yum.repos.d目录下,后缀为.repo
软件仓库源可能存在的软件不够所以又会有一个扩展源,叫epel源
yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
yum(选项)(参数)
-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0-10);
-e:设置错误等级(0-10);
-R:设置yum处理一个命令的最大等待时间;
-C:完全从缓存中运行,而不去下载或者更新任何头文件。
配置阿里元源
下载阿里元的源文件和第三方扩展源文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
清空yum缓存和创建新的缓存
yum clean all
yum makecache
安装软件扩展源
yum install -y epel-release
Linux_02的更多相关文章
- Docker入门二
容器管理 1.docker create创建一个容器,但容器并没启动,就和我们创建虚拟机一样,创建了虚拟机后没启动 [root@centos-02 ~]# docker create -it cent ...
随机推荐
- malloc,calloc,realloc函数用法,原理及不同解析
https://blog.csdn.net/lixungogogo/article/details/50887028 一.malloc malloc在MSDN中原型为: void *malloc( s ...
- How HashMap works in java 2
https://www.javacodegeeks.com/2014/03/how-hashmap-works-in-java.html Most common interview questio ...
- SDN 第二次上机作业
SDN第二次上机作业 1.控制器floodlight所示可视化图形拓扑的截图,及主机拓扑连通性检测截图 拓扑 连通性 2.利用字符界面下发流表,使得'h1'和'h2' ping 不通 流表截图 连通性 ...
- 《面向对象程序设计》c++第六次作业___calculator SE
c++第五次作业 Calculator SE 代码 PS:这次作业延迟了很久,人要是迷茫啊----唉------ 新增GUI界面,使用Qt creator编写,纯代码生成控件.写坐标. 感觉Qt cr ...
- React-Native开发笔记 持续更新
1.css单位转换px2dp 在做页面开发的时候习惯了用rem去做css单位,处理各种尺寸数据,到了React-Native里面做app开发时,rem就不好用了,这个时候就需要转换成另外一个单位,基本 ...
- 网络编程_TCP协议_客户端与服务端
客户端发数据到服务端 Tcp传输,客户端建立的过程. 1,创建tcp客户端socket服务.使用的是Socket对象.建议该对象一创建就明确目的地.要连接的主机. 2,如果连接建立成功,说明数据传输通 ...
- QT5 视图坐标
又出错了. . main.obj:-1: error: LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __th ...
- 记一次MyBatis的错误
错误信息:java.lang.StackOverflowError 关于这个错误的深度解析,大家可以参考这篇博文,比较详细:https://blog.csdn.net/zc375039901/arti ...
- vue之常用指令
事件缩写 v-on:click= 简写方式 @click= 事件对象$event <!DOCTYPE html> <html lang="en"> < ...
- Python中__init__()方法注意点
此文转自https://www.cnblogs.com/zyxstar2003/archive/2011/03/21/1989954.html 1.__init__并不相当于C#中的构造函数,执行它的 ...