day10复习+防止系统乱码优化
一、linux文件
1.文件
1.创建
touch [路径]
例:touch 1.txt
touch /root/1.txt
2.删除
rm :删除
-r:递归
-f:不提示
-i:提示
alias:别名
alias ll="ls -l"
如何禁用rm:
1.修改别名:alias rm="abc"
2.将rm命令修改名字:mv rm abcdef
mv:移动文件
mv [原来的路径] [现在的路径]
3.查看
cat [文件的路径]
-n:行号
4.修改
echo:打印一段字符
追加重定向:将内容写入到文件最后面,原有的内容不变
覆盖重定向:先将文件中原有的内容清除,然后写入内容到文件
重定向:把某个内容,通过某种方式输入到指定的文件中,即为重定向
vi/vim
格式:vim [文本的路径]
进入编辑模式的3中方式:i(光标之前输入)
a(光标之后输入)
o(光标所在位置另起一行输入)
常用的快捷键:
dd:删除光标所在行
ndd:在光标所在位置向下删除n行
yy:复制光标所在行
nyy:在光标所在的位置向下复制n行
p(小):粘贴到光标的下一行
P(大):粘贴到光标的上一行
x(小写):删除光标当前字符,向后删除
u:撤销上一步
gg:跳转到首行
G:跳转到末行
命令模式的查找:向下查找:/要查找的内容,按n键,下一个,N上一个
向上查找:?要查找的内容
文件夹
顶级目录是根目录
1.创建 mkdir [路径]
-p:递归创建
循环创建:{}
mkdir test{0.。100}
2.查看文件中的内容
ls [路径(默认路径是当前路径)]
-l:显示文件夹中所有内容的详细信息
-h:格式化文件的大小
-a:显示隐藏文件
3.切换文件
cd [路径]
4.复制
cp [原来的文件路径] [新的文件的路径]
-r:递归
路径:1、根路径(顶级路径)
顶级目录是根目录,也就是说一切的路径都是从根开始的
2、特殊路径
~ :当前系统登录用户的家目录
. :当前目录
..:上一级目录
- :上一次的目录
3、软连接和硬链接
当一个文件的硬链接个数为0的时候才会删除文件内容。
启动模式:
init0-6
0:关机
1:单用户模式
2:多用户无网络模式
3:多用户有网络模式
4.系统保留,未使用
5.图形化界面模式
6.重启
文件系统
1.常用的目录的作用
bin:命令,二进制文件的存放目录,存放系统常用命令的目录
/usr/bin:是/bin目录快捷方式指向的目录
/usr/local/bin:存放安装的第三方软件的命令的目录-centos7
boot:系统引导程序,系统内核
dev:设备、光驱、硬盘
etc:存放系统或服务的配置文件
home:普通用户的家目录,贫民库
lib:库文件存放目录(存放32位的系统使用的库文件 一个功能通常是一个库提供的)
lib64:库文件存放目录(64位系统)-手机计算器的功能由库提供
lost+found:磁盘、文件系统损坏、断电、临时存放文件,只有在ext的文件系统中才能有这个目录
media:相当于windows的视频,应用于图形化的系统
misc:相当于windows的音乐,应用于图形化的系统
mnt:临时的挂载点目录,给设备提供入口的
opt:第三方软件安装在这里-centos5,6
proc:虚拟目录,显示内存中的信息,当前操作系统运行状态(必须掌握)
root:root用户的家目录
sbin:超级命令,root用户才能使用的命令
selinux:selinux及它的配置文件存放的位置
srv:安装第三方的软件
sys:虚拟的目录,内存信息
tmp:临时文件的存放位置 垃圾堆
usr:存放用户的程序
var:经常变化的文件 系统日志,其他应用程序的日志 /var/log/messages
2.磁盘
1.关机,新增一块磁盘
查看磁盘信息:lsblk
2.磁盘分区
fdisk /dev/sdb
指令:
m :帮助信息
n : 新增一个分区
p : 查看分列表
w : 写入分区到硬盘
3.格式化文件系统
mkfs.xfs [文件系统分区的路径]
mkfs.xfs /dev/sdb3
4.挂载使用
mount [选项(参数,非必须)] [磁盘分区的路径] [挂载的路径]
mount /dev/sdb3 /mnt/
5.查看挂载
df -h
3.proc文件系统
/proc/cpuinfo #用于查看系统CPU信息情况文件 相关命令:lscpu
/proc/meminfo #用于查看系统内存信息情况文件 相关命令:free -m
/proc/loadavg #用于查看系统负载信息情况文件,用于衡量系统繁忙程度 相关命令:w
4.dev文件系统
磁盘
字体
5.yum仓库
1、建立仓库
[root@localhost ~]# mkdir /yumrepo4
2、安装初始化软件(yum-utils nginx createrepo)
[root@localhost ~]# yum install yum-utils nginx createrepo -y
3、下载软件
4、初始化仓库
[root@localhost ~]# createrepo /yumrepo4
5、修改Nginx配置文件
root /yumrepo4;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
6、重启Nginx
[root@localhost yumrepo4]# systemctl restart nginx
7、编辑yum源
[root@localhost yum.repos.d]# mv ./*.repo backup/
[root@localhost ~]# yum-config-manager --add-repo http://192.168.15.50/
yum clean all
yum makecache
8、测试
yum install zip
安装软件的3中方式:
1.rpm安装:
rpm -ivh [软件包]: 安装
rpm -e [软件包] : 卸载
rpm -Uvh [软件包]: 更新
rpm -qa [软件包]: 查看当前系统安装过的安装包
rpm -qc [软件包]: 查看指定软件的配置文件
2.yum安装:
yum install [软件包]:安装
yum remove [软件包]:卸载
yum updata [软件包]:更新
-y:免提示(交互)
3.二进制编译安装:
优点:单独定制安装软件
缺点:不能解决依赖关系
下载源代码包:https://nginx.org/download/nginx-1.20.1.tar.gz
[root@python ~]$ wget https://nginx.org/download/nginx-1.20.1.tar.gz
知识储备:
解压文件:tar -xf nginx-1.20.1.tar.gz
1.检查系统
cd nginx-1.20.1
yum install pcre pcre-devel zlib zlib-devel make gcc gcc-c++ -y
./configure
2.编译
make
-j : 多核编译, 但是容易出错(不推荐)
3.安装
make install
4.测试
[root@python nginx]$ systemctl stop nginx
# 启动nginx服务
[root@python nginx]$ /usr/local/nginx/sbin/nginx
下载软件
wget:下载软件
-O(大):指定下载路径
curl:保存内容
-o(小):指定保存路径
rz sz:通过命令行的方式进行上传与下载(必须依赖于xshell),yum install lrzsz
lrzsz一次只能传输一个文件,传输大文件的时候,容易掉线
rz : 上传
sz :下载
用户/用户组
1.用户/用户组
1.用户涉及的文件
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
/etc/skel :保存一些默认的隐藏文件的
2.手动创建一个用户
2.权限
设置权限
设置权限(chmod)
数字权限
可读 r 4
可写 w 2
可执行 x 1
字母权限
可读 r
可写 w
可执行 x
权限的归属
属主 :u
属组 :g
其他人 :o
权限的加减法,需要配合字母权限
+ :增加权限
- :去掉权限
chmod的参数
-R : 递归
设置用户及用户组
chown [用户] xxx
chown test.test xxx
参数 -R:递归
系统安全优化
selinux
配置文件路径:/etc/selinux/config
永久禁用:sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
临时禁用:setenforce 0(设置立即生效)
0:临时禁用
1:临时启用
firewalld 防火墙
云主机====》安全组
firewalld====>防火墙
iptables====>防火墙
systemctl disabled --now firewalld(重启生效或再加上setenforce 0)
disable:禁止开启
--now:立即执行
systemctl enable --now firewalld
enable:开机自启动
systemctl start firewalld.service #开启
systemctl stop firewalld.service #关闭
systemctl status firewalld.service #查看防火墙状态
防止系统乱码优化
出现乱码情况设置:export LANG=en.US-gb2312
echo $LANG
en_US.UTF-8
en:英文
US:美式
UTF-8:指定的编码
zh_CN.UTF-8
zh:中文
CN:简体中文
临时修改: LANG=zh_CN.UTF-8
持久化保持字符编码:/etc/locale.conf (重启生效)
通过命令的方式修改字符及编码(同时临时永久修改字符集)
[root@localhost ~]# localectl set-locale LANG=en_US.UTF-8
字符编码有哪些?
GB2312
GBK
UTF-16
UTF-32
UTF-8