资讯专栏INFORMATION COLUMN

Linux 学习笔记(六):Linux

时飞 / 525人阅读

摘要:查看查看状态添加端口查看防火墙规则相关文章学习笔记一内网穿透学习笔记二搭建个人服务器学习笔记三操作系统学习笔记四学习笔记五学习笔记六

预期学习目标

CentOS的安装

相关命令的学习

脚本的编写

定时任务的编写

vim的学习

系统设置 项目部署
项目权限设置

确认 SELinux 的状态

[root@centos7 ~]$ /usr/sbin/sestatus -v

# SELinux status: enabled

[root@centos7 ~]$ getenforce

# enabled

关闭 SELinux

修改配置文件并重启

[root@centos7 ~]$ vim /etc/selinux/config

# SELINUX=disabled

[root@centos7 ~]$ reboot

查看进程的用户

[root@centos7 ~]$ ps -axu | grep nginx

# root       880  0.0  0.0 120808  2104 ?        Ss   10:23   0:00 nginx: master process /usr/sbin/nginx
# nginx      883  0.0  0.0 121192  3592 ?        S    10:23   0:00 nginx: worker process
# sea       1263  0.0  0.0 112704   968 pts/0    R+   10:29   0:00 grep --color=auto nginx
用户权限

将用户加入 git

[root@centos7 ~]$ usermod -a -G git apache
[root@centos7 ~]$ usermod -a -G git mysql
[root@centos7 ~]$ usermod -a -G git nginx

查看组内用户

[sea@centos7 ~]$ cat /etc/group | grep git

#  git:x:1002:apache,mysql,nginx
文件传输

文件的上传与下载

sz ( send Zmodem ) :   用 Zmodem 文件传输协议从 Linux 服务器发送文件到 Window

rz ( receive Zmodem ) : 用 Zmodem 文件传输协议在 Linux 服务器上接收文件,即 Window 上传文件到 Linux

不支持上传文件夹,需要打包后上传文件再解压

# 安装
yum -y install lrzsz

# 下载
sz filename

# 上传(Xshell 直接拖拽就好,用不到这个,用的多的还是 sz )
rz

传输文件

# 指定端口传输

scp -P 1080 vendor.zip root@35.35.35.35:/home/git
压缩解压

压缩文件

参数 全称 解释
-c --create 创建一个新归档
-x --extract 从归档中解出文件
-r --append 追加文件至归档结尾
-t --list 列出归档内容
-z --gzip 通过 gzip 过滤归档
-v --verbose 详细地列出处理的文件
-f --file 使用归档文件
tar -czvf /tmp/etc.tar.gz /etc
参数 解释
-m 将文件压缩之后,删除源文件
-n 特定字符串 不压缩具有特定字尾字符串的文件
-o 将压缩文件内的所有文件的最新变动时间设为压缩时候的时间
-q 安静模式,在压缩的时候不显示指令的执行过程
-r 将指定的目录下的所有子目录以及文件一起处理
-S 包含系统文件和隐含文件
-t 日期 把压缩文件的最后修改日期设为指定的日期,日期格式为mmddyyyy
# 解压
unzip filename.zip

# 压缩
zip -f /tmp/etc.zip /etc
系统语言

各个LC_环境变量含义

优先级: LC_ALL > LC_* >LANG
名称 含义
LC_CTYPE 语言符号及其分类
LC_NUMERIC 数字
LC_COLLATE 比较和排序习惯
LC_TIME 时间显示格式
LC_MONETARY 货币单位
LC_MESSAGES 信息主要是提示信息,错误信息,状态信息,标题,标签,按钮和菜单等
LC_NAME 姓名书写方式
LC_ADDRESS 地址书写方式
LC_TELEPHONE 电话号码书写方式
LC_MEASUREMENT 度量衡表达方式
LC_PAPER 默认纸张尺寸大小
LC_IDENTIFICATION 对locale自身包含信息的概述

语言的更改

查看当前语言

[root@centos7 ~]$ echo $LANG

# zh_CN.UTF-8

[root@centos7 ~]$ locale

# LANG=en_US.UTF-8
# LC_ALL=zh_CN.gbk

终端临时更改系统语言

[root@centos7 ~]$ export LANG="en_US.UTF-8"
[root@centos7 ~]$ echo $LANG

# en_US.UTF-8

全局更改系统语言

[root@centos7 ~]$ vim /etc/locale.conf

#LANG="en_US.UTF-8"
图形界面

关闭图形界面

# 查看当前运行模式
systemctl get-default

# 使用命令模式
systemctl set-default multi-user.target

# 使用图像界面模式
systemctl set-default graphical.target
其他杂项

查看文件大小

# 查看目录大小(包括子目录)
du -sh directory

命令

cd -
# 回到上次的目录

grep -i 
# 忽略大小写的正则匹配

grep -v
# 反选(选区不匹配的项)

grep -E "^[0-3]|[abc]&"
# 支持正则表达式语法

xargs

xargs 用作替换工具,读取输入数据重新格式化后输出
# 多行输入单行输出
cat args.txt | xargs

# 多行输入多行输出
cat args.txt | xargs -n 3

# 根据指定分隔符划分并输出
cat args.txt | xargs -d "args"

# 指定一个符号并将该符号替换用输出的元素替换
cat args.txt | xargs -n 1 | xargs -I [] echo []-copy-[]
 

sed

# 还没写

文件类型

标识 解释 颜色标识
- 普通文件 白色
- 可执行文件 绿色
- 压缩文件 红色
- 图片文件 粉色
- SGID特殊权限文件 背景色黄色
- SUID特殊权限文件 背景色红色
d 目录文件 蓝色
d 公开目录 背景色绿色
p 管道文件 暗黄色
s 套接字文件 洋红
c 字符设备文件 黄色
l 软链接文件 浅蓝色
b 块设备文件 黄色
快快捷指令 文本编辑
插件 : Chrome 下载 Vimium , PhpStorm 下载 ideaVim

配置.vimrc

# 编辑个人主目录的VIM配置文件
vim ~/.vimrc

# 设置支持GB2312和UTF8等编码
let &termencoding=&encoding
set fileencodings=utf-8,gbk,ucs-bom,cp936

# tab 扩展为空格
set expandtab

# tab 的宽度为 4 个空格
set ts=4

# 使粘贴代码时不会乱
set paste

# vim的注释符号
"

快捷键

 gg : 跳转到第一行

 GG : 跳转到最后行

 ^  : 跳转到行首

 $  : 跳转到行尾

 yy : 复制整行

 p  : 粘贴

 N  : 向上查找

 n  : 向下查找

 u  : 撤销更改

 a  : 从当前位置插入

命令

替换字符串

# 全局查找「foo」替换为「bar」并且需要确认「y/n/a/q/l/^E/^Y」

:%s/foo/bar/gc

# 显示行号
:set number

# 将文件转化为UNIX格式
:set fileformat=unix
脚本命令

基本概念

# 所有参数
$@

# 传入脚本的参数个数
$#

# 参数赋值
param=$1

# 引号的区别
单引号不解析 双引号会解析变量

# 调试追踪
sh -x

界面快捷键

Ctrl + A : 跳转到命令的行首

Ctrl + E : 跳转到命令的行尾

Ctrl + U : 删除整行
定时任务
参数说明
# 查看定时任务列表
crontab -l

# 查看指定用户的定时任务列表
crontab -l -u username

# 查看所有用户的定时任务( root 权限执行)
cat /etc/passwd | cut -f 1 -d : |xargs -I {} crontab -l -u {}

# 定时任务中开头为井号(`#`)的行是注释
常用软件

fping

批量检测地址连通性

nc

批量检测端口连通性、端口是否开放

运维技能 系统状态

系统负荷 : N 个CPU的电脑,可接受的系统负荷最大为 N

# 实时状态
top

查看进程

# 显示所有包含其他使用者的行程
ps -axu

# 显示所有包含其他使用者的行程并显示程序间的关系
ps -axuf
系统防护

DenyHosts

DenyHosts 是 Python 语言写的一个程序,它会分析 sshd 的日志文件(默认是 /var/log/secure ),当发现重复的攻击时就会记录 IP 到 /etc/hosts.deny 文件,启用 tcp_wrappers,从而达到自动屏IP的功能。
# 查看 hosts.deny
cat /etc/hosts.deny

firewall

# 查看状态
systemctl status firewalld.service

# 添加端口
firewall-cmd --zone=public --permanent --add-port=2375/tcp

# 查看防火墙规则
firewall-cmd --list-all 
相关文章

Linux 学习笔记(一):内网穿透
Linux 学习笔记(二):搭建个人Git服务器
Linux 学习笔记(三):Ubuntu 操作系统
Linux 学习笔记(四):Docker
Linux 学习笔记(五):Redis
Linux 学习笔记(六):Linux

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25028.html

相关文章

  • 树莓派学习笔记)交叉编译概念及安装使用

    摘要:一交叉编译概念什么是交叉编译交叉编译是在一个平台上生成另一个平台上的可执行代码。也要树莓派有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。 ...

    songze 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<