Linux入门
自学推荐1:https://www.linuxcool.com/
自学推荐2:https://www.runoob.com/linux/linux-vim.html
(0) typro指令
(1)设置表格快捷键
快捷键[ctrl + T], 设置行数和列数
(2)图片和超链接
图片直接拖进来
图片直接拖进来
[百度](https://www.baidu.com)
加粗 -》**
加粗斜体 -》
Typora[^1]
(3)快捷键
快捷键 | 作用 | 快捷键 | 作用 |
---|---|---|---|
Ctrl + 1 | 一级 标题 | Ctrl + B | 字体加粗 |
Ctrl + 2 | 二级标题 | Ctrl + I | 字体倾斜 |
Ctrl + 3 | 三级标题 | Ctrl + U | 下划线 |
Ctrl + 4 | 四级标题 | Ctrl + Home | 返回顶部 |
Ctrl + 5 | 五级标题 | Ctrl + End | 返回底部 |
Ctrl + 6 | 六级标题 | Ctrl + T | 创建表格 |
Ctrl + L | 选中一行 | Ctrl + K | 创造超链接 |
Ctrl + D | 选择一个单词 | Ctrl + F | 搜索 |
Ctrl + E | 选中相同格式的文字 | Ctrl + H | 搜索并替换 |
Alt + Shift + 5 | 删除线 | Ctrl + Shift + I | 插入图片 |
(4)常用```代表代码输入框
``` : 代表代码输入框
(1)Linux名词概念:
1,Linux四大管理类型:内存管理,硬件设备管理,文件管理系统,软件程序管理
2,linux文件类型:管道文件、链接文件、普通文件、目录文件、套接字文件、块设备、字符设备
3,Linux一般由四个主要部分组成分别是内核、Shell、文件结构和实用工具:
Linux一般由四个主要部分组成分别是内核、Shell、文件结构和实用工具:
(1)内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序
(2)Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。
(3)文件结构是文件存放在磁盘等存储设备上的组织方法。主要体现在对文件和目录的组织上。
(4)标准的Linux系统都有一套叫做实用工具的程序,它们是专门的程序,例如编辑器、执行标准的计算操作等。
(2)常用命令
1.1.0 Linux
主要目录速查表
/:根目录,一般根目录下只存放目录,在 linux 下有且只有一个根目录,所有的东西都是从这里开始
当在终端里输入 /home,其实是在告诉电脑,先从 /(根目录)开始,再进入到 home 目录
/bin、/usr/bin:可执行二进制文件的目录,如常用的命令 ls、tar、mv、cat 等
/boot:放置 linux 系统启动时用到的一些文件,如 linux 的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub
/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount /dev/cdrom /mnt
/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有
/etc/inittab
/etc/fstab
/etc/init.d
/etc/X11
/etc/sysconfig
/etc/xinetd.d
/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下
~ 表示当前用户的家目录
~edu 表示用户 edu 的家目录
/lib、/usr/lib、/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助
/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下
/mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载
/opt:给主机额外安装软件所摆放的目录
/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的文件有:/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等
/root:系统管理员root的家目录
/sbin、/usr/sbin、/usr/local/sbin:放置系统管理员使用的可执行命令,如 fdisk、shutdown、mount 等。与 /bin 不同的是,这几个目录是给系统管理员 root 使用的命令,一般用户只能"查看"而不能设置和使用
/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv:服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内
/usr:应用程序存放目录
/usr/bin:存放应用程序
/usr/share:存放共享数据
/usr/lib:存放不能直接运行的,却是许多程序运行所必需的一些函数库文件
/usr/local:存放软件升级包
/usr/share/doc:系统说明文件存放目录
/usr/share/man:程序说明文件存放目录
/var:放置系统执行过程中经常变化的文件
/var/log:随时更改的日志文件
/var/spool/mail:邮件存放的目录
/var/run:程序或服务启动后,其 PID 存放在该目录下
1.1.1 返回上一级目录 cd
cd .. ->返回上一级目录
cd - ->返回上一步操作
cd / :返回首目录
序号 命令 对应英文 作用
01 ls list 查看当前文件夹下的内容
02 pwd print wrok directory 查看当前所在文件夹
03 cd [目录名] change directory 切换文件夹
04 touch [文件名] touch 如果文件不存在,新建文件
05 mkdir [目录名] make directory 创建目录
06 rm [文件名] remove 删除指定的文件名
07 clear clear 清屏
1.1.2 显示当前目录的所有文件包括隐藏 ls
ls -a ->列出目录所有文件,包含以.开始的隐藏文件
ls -a -all
ll
1.1.3 pwd mk rm指令的作用
pwd ->查看当前目录
mkdir 目录名 ->创建目录名
mkdir -p 目录名 ->当该目录不存在时则创建目录名
rm ->可以删除目录和文件 ##
(1)删除任何 .log 文件,删除前逐一询问确认:
rm -i *.log
(2)删除 test 子目录及子目录中所有档案删除,并且不用一一确认:
rm -rf test
(3)删除以 -f 开头的文件
rm -- -f*
(3)CP命令
将源文件复制至目标文件,或将多个源文件复制至目标目录。
注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中,如果不加 -i 参数,则不会提示,而是直接覆盖!
-i 提示
-r 复制目录及目录内所有项目
-a 复制的文件与原文件时间一样
-f 复制即使存在覆盖后也不提示
-s 一个链接(快捷方式
cp -rf 目录1 目录2/
(1)复制 a.txt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖。
cp -ai a.txt test
(2)为 a.txt 建议一个链接(快捷方式)
cp -s a.txt link_a.txt
(3)复制或者移动文件到文件夹(-rf )
cp -f laow.txt laow1/
cp -rf filename.txt laowang/
(4)查看所有用户完整命令
cat /etc/passwd
(4)文件权限修改
(1)rwx 等 777权限的指示
-rwxr-xr-- ->这个是文件的权限 因为第一个是-
dr--r--r-- ->这个是目录的权限 因为第一个是d
第一个是文件类型:d是目录 -是文件
rwx 这个三个是所有权权限
r-x 这个是同组用户权限
r-- 这个是其他用户的权限
r ->read 4
w ->write 2
x ->execute 1
文件修改权限
user : 代表的是所有者(user)拥有的权限
group :代表的是组群(group)拥有的权限
other :代表的是其他人(other)拥有的权限
+ :为该文件添加权限
- :为该文件删除该权限
= :设置该文件只有这个权限而删除其他权限
chmod u+x,u+w 文件名,chmod u+x,u+w,g+r,g+u 文件名,chmod u+x,u+w 文件名
修改文件或者目录所有者权限 ->
chown 用户名 文件/目录名称 ->chown xiaohong laowang1.txt
(2)chmod修改文件/目录权限
chmod u+x,u+w 文件名,chmod u+x,u+w,g+r,g+u 文件名,chmod u+x,u+w 文件名
修改文件或者目录所有者权限 ->
chown 用户名 文件/目录名称 ->chown xiaohong laowang1.txt
(3)chown修改文件/目录所有者
修改文件或者目录所有者权限 ->
chown 用户名 文件/目录名称 ->chown xiaohong laowang1.txt
(5)文件操作 增删改查
(1)文件创建合并和追加
```cat filename #一次显示整个文件. cat > filename #从键盘创建一个文件。 如果你想要使用 vi 来建立一个名为 runoob.txt 的文件时,你可以这样做: vim runoob.txt
只能创建新文件,不能编辑已有文件.
cat file1 file2 > file #将几个文件合并为一个文件
在工作目录下,建立一个名为 dir 的子目录: mkdir dir
同时创建子目录dir1,dir2,dir3: mkdir dir1 dir2 dir3
递归创建目录: mkdir -p linuxcool/dir
### (2)将文件 test.log 重命名为 test1.txt
mv test.log test1.txt
### (3)文件或目录删除
删除前逐一询问确认 rm -i test.txt.bz2
直接删除,不会有任何提示: rm -f test.txt.bz2
递归删除目录及目录下所有文件: mkdir /data/log 创建目录 rm -rf /data/log 删除目录下的文件
删除当前目录下所有文件 rm -rf 为通配符
清空系统中所有的文件(谨慎) rm -rf /*
### (4)文件删除和重命名和移动
将文件file_1重命名为file_2: mv file_1 file_2
将文件file移动到目录dir中 mv file /dir
将目录dir1移动目录dir2中(前提是目录dir2已存在,若不存在则改名): mv /dir1 /dir2
将目录dir1下的所有文件移动到当前目录下: mv /dir1/* .
(8)文件合并和追加
```(1)文件合并和追加
(1)文件合并和追加
(6)用户和组的权限
(1)用户和组的配置文件
passwd文件
位置:/etc/passwd-> cat /etc/passwd
对任何用户均可读。
作用:用于保存各用户的帐户信息。
shadow文件
位置:/etc/shadow->cat /etc/shadow
只对root用户可读
作用:保存各用户帐户的密码等信息,密码加密无法破解。
(2)用户和组的配置文件
group文件
位置:/etc/group--> cat /etc/group 更好
作用:保存各用户帐户的分组信息。
gshadow文件 ,组的账号信息
位置:/etc/ gshadow -> cat /etc/gshadow
作用:用于定义用户组口令、组管理员等信息。
(3)用户的添加和修改
useradd:添加新用户
格式:useradd [参数] 用户名
示例:# useradd zhang
# useradd -u 510 -g li -d /home/li
-s /bin/bsh -e 2014/12/31 zhang
-u:新账户的用户 ID
-d:新账户的主目录
-l:不要将此用户添加到最近登录和登录失败数据库
-g:新账户主组的名称或 ID
-s:新账户的登录 shell
-e:新账户的过期日期
-L:不要将此用户添加到最近登录和登录失败数据库
-U:创建与用户同名的组
usermod:修改已有用户帐户的属性
格式:usermod [参数] 用户名
参数:
-c:修改用户帐号的备注文字。
-d:修改用户登入时的目录。
-e:修改帐号的有效期限。
-f:改在密码过期后多少天即关闭该帐号。
-g:修改用户所属的群组。
-G:修改用户所属的附加群组。
-l:修改用户帐号名称。
-L:锁定用户密码,使密码无效。
-s:修改用户登入后所使用的shell。
-u:修改用户ID。
-U:解除密码锁定。
说明:usermod参数和useradd参数相同,不同示例:
示例:# usermod –l newname oldname
# usermod -L zhang 锁定用户
# usermod -U zhang 解锁用户
(4)用户的密码修改锁定和用户删除
passwd:设置用户帐号的口令
格式:passwd [参数] 用户名
说明:若不使用参数及不指定用户名,则修改当前用户自身口令。
-l:锁定已经命名的账户名称
-u:解开账户锁定状态
-x, --maximum=DAYS:密码使用最大时间(天)
-n, --minimum=DAYS:密码使用最小时间(天)
-d:删除使用者的密码
-S:检查指定使用者的密码认证种类
示例:$ passwd
# passwd zhang
# passwd -l zhang
# passwd -u zhang
# passwd -d zhang
userdel:删除指定的用户帐户
格式:userdel [-r] username
说明:若使用参数r则删除用户的同时删除用户所有相关的文件。
示例:# userdel -r zhang
(5)组帐户管理命令->cat /etc/group查询组用户
(1)groupadd 参数 用户组名->添加组用户
-g:指定新建用户组的gid;
-r:创建系统工作组,系统用户的组ID小于500;
-K:覆盖配置文件“/ect/login.defs”;
-o:允许添加组ID号不唯一的工作组。
实例:
groupadd -g 344 bqh
解释:创建一个id为344的bqh组。
(2)groupmod 参数 用户组名 -修改组
-g: GID 为用户组指定新的组标识号。
-o:与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n:新用户组 将用户组的名字改为新名字
实例
groupmod -g 356 -n bqh1 bqh
解释:将用户组名为bqh改为bqh1,且组gid改为356。
(3)groupdel 用户名->删除组用户
groupdel 用户名
(4)gpasswd 用户名->转移组用户和设置密码
-a, --add USER 向组 GROUP 中添加用户 USER
-d, --delete USER 从组 GROUP 中添加或删除用户
gpasswd -a 组用户 组名
- 不加任何参数,仅创建用户
示例:useradd myuser
此时用户的家目录是/home/myuser
who -u: 在线用户或者登录过的用户
whoami :目前当前在线的用户
(5)Linux下软件包简介
rpm包: 红帽包的管理系统
tar包: 压缩包
sh结尾的文件: shell文件的后缀名
help命令->查询命令的用法和参数的作用
命令 --help :查询命令的用法和参数的作用
cat --help
RPM的功能:安装、卸载、升级、查询、验证
RPM全称是RedHat Package Manager,即软件包管理器,是由RedHat公司提出的软件包管理标准,适于各种Linux系统,现已成为Linux中公认的软件包管理标准
RPM包的名称格式:name-version.type.rpm
示例:httpd-2.0.40-21.i386.rpm
httpd-2.0.40-21.src.rpm
RPM包的安装
安装RPM包的基本命令格式是:
rpm -ivh <RPM包名>
示例:
RPM包的删除
删除RPM包的基本命令格式是:
rpm -e <RPM包名>
查询系统中安装的所有RPM软件包:
rpm -qa
查询指定的软件包是否已安装
rpm -q <RPM包名>
查询包中文件的信息:
rpm -qp <RPM包文件名>
查询系统中已安装包的描述信息
rpm -qi <RPM包名>
查询系统中已安装包里所包含的文件
rpm -ql <RPM包名>
查询系统中指定文件所属的软件包
rpm -qf <文件名>
RPM包的升级
升级RPM包的基本命令格式是:
rpm -Uvh <RPM包名>
升级软件包是删除和安装组合。
RPM包的验证
含义:验证RPM包的工作是检查包中文件是否和安装的一只,包括校验码文件的大小,存取权限和属主属性都将进行校验。
验证RPM包的基本命令格式是:
rpm -V [参数]
示例:验证已安装的httpd软件包
# rpm -V httpd
验证包含文件/etc/passwd软件包
# rpm -Vf /etc/passwd
(7)YUM软件包的管理
YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。
yum最大的优势是可以去互联网上下载所需要的rpm包,然后自动安装。
(1) YUM的使用全解
基本配置文件:/etc/yum.conf
软件仓库配置文件:/etc/yum.repos.d/*.repo
日志文件:/var/log/yum.log。
(2)YUM的常用命令
格式:
yum [options] [command] [package ...]
其中:
[options]选项,包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。
[command]为所要进行的操作,
[package ...]是操作的对象
(1) 查询
查看所有软件仓库:
yum repolist all
查看可用的软件仓库:
yum repolist enabled
(3)YUM的查询 安装 更新 卸载
(1) 查询
查询指定的软件包安装情况:
yum list <软件包名>
(2) 查询指定的软件包详细信息:
yum info <软件包名>
(3) 安装
格式为:
yum install <软件包名或程序组名>
(4) 更新
更新指定的软件包:
yum update <软件包名>
(5) 删除指定的软件包:
yum remove <软件包名>
(6) 清除缓存目录下的软件包:
yum clean <软件包名>
1. 列出所有可更新的软件清单命令:yum check-update
2. 更新所有软件命令:yum update
3. 仅安装指定的软件命令:yum install <package_name>
4. 仅更新指定的软件命令:yum update <package_name>
5. 列出所有可安裝的软件清单命令:yum list
6. 删除软件包命令:yum remove <package_name>
7. 查找软件包命令:yum search <keyword>
8. 清除缓存命令:
yum clean packages: 清除缓存目录下的软件包
yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers
(8) TAR的软件包管理
(1) TAR包的基本知识
Tar是“tape archive”(磁带存档)的简称,tar命令是一个将很多文件进行存档的工具,现已成为Unix下标准的文件打包格式。
TAR包的名称格式:
“*.tar”-----表示普通的,非压缩的包;
“*.tar.gz”-----表示的是压缩的文件包。
TAR包的作用:
TAR包在Linux中主要用来安装第三方的程序,几乎所有的软件都有TAR包的发布。
获得TAR软件包:
获得TAR软件包要比获得一个RPM包更方便,可以通过Google,Baidu等搜索引擎查找“tar”或“tar.gz”软件包。
(2) TAR包的打包和压缩
(1)建立TAR包
有两种方式:一种是建立普通的TAR包,只打包,不压缩。
tar cvf <TAR包名> <文件或目录名>
参数说明:
其中c(Creat)指建立TAR包,v(Verify)表示执行命令时有更多提示信息,f(File)指定 TAR包的文件名。
另一种是打包并压缩,选项是“zcvf”,其中“z”代表使用“gzip”程序进行文件的压缩。
tar zcvf <TAR包名> <文件或目录名>
※所打包的文件一定要加上扩展名。
示例:tar zcvf a.tar.gz /home/a
对比:.tar和.tar.gz
(2)查询TAR包:
格式:
tar ztf <TAR包名>
参数说明:
查询的参数是“ztf”, 其中“z”同上,指查询压缩的TAR包,若无“z”则是普通的TAR包,“t”(Test)指查询TAR包,“f”指定 TAR包的文件名。
释放TAR包:
格式:(默认释放的路径是当前文件的路径)
tar zxvf <TAR包名>
参数说明:
它使用“zxvf”参数,其中“x”指释放(eXtract)。它也分为解非压缩和压缩包两种方式,若释放TAR包为非压缩的TAR包,则不需用参数“z”。
释放到指定路径中:
tar zxvf 包名 -C 目录名
yum -y install lrzsz:从本地上传文件到linux 服务器、 rz:弹出选择本地文件穿linux
(9) 网卡配置
设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务
BOOTPROTO=none
ONBOOT=yes (控制网卡是不是开机自启动)
BOOTPROTO=dhcp (启动协议,none 引导时不使用协议,static 静态分配地址, bootp 使用BOOTP协议,DCHP 使用区域为内自动分配IP的服务)
USERCTL=no (是否允许非root用户控制该设备,设置为no,只能用root用户更改)
IPADDR=192.168.52.130 (IP地址)
NETMASK=255.255.255.0(子网掩码,划分网络位和主机位置)
DNS=192.168.1.1 (域名解析服务,把域名解析成IP,也可以反过来)
DNS1=8.8.8.8 ( 第一个dns服务器)
DNS2=8.8.4.4 ( 第二个dns服务器)
BROADCAST (广播)
GETWAY=192.168.1.22(设置网关,访问的入口,路由器的地址,通过其出去上网,出口)
1.配置网卡地址及GW等后,需要重启网卡才能使网卡生效.
2.重启网卡 /etc/init.d/network restart or systemctl restart network
kill UID :结束进程
free命令
显示系统内存的使用情况,包括内存总量、已经使用内存数量,空闲内存数量等信息。
top命令
实时监控系统进程
环境中常用的功能:
排序 :P(CPU使用多少)、M(内存)、T(进程执行时间)。
监视指定用户:“u”键→“用户名”。
指定刷新时间:“#top –d 1”。
删除指定的进程:“k”。
查阅帮助:“?”或“h”。
退出top环境:“q”键或“Ctrl+c” 。
(10) 磁盘管理
df [-ahikHTm] [目录或文件名]
-a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
-k :以 KBytes 的容量显示各文件系统;
-m :以 MBytes 的容量显示各文件系统;
-h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
-H :以 M=1000K 取代 M=1024K 的进位方式;
-T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
-i :不用硬盘容量,而以 inode 的数量来显示
将容量结果以易读的容量格式显示出来
df -h
将系统内的所有特殊文件格式及名称都列出来
df -aT
(11) 服务进程管理
ps –ef
ps -axu
-a 显示所有用户进程 | -f 显示进程的详细信息 |
---|---|
-e 显示包括系统进程的所有进程 | -x 显示没有控制终端的进程 |
-l 显示进程的详细列表 | -u 显示用户名和启动时间等信息 |
(1) 系统服务管理启动,状态,服务,防火墙,
service服务状态控制 启动、停止或重新启动某个服务。其格式:
安装防火墙
yum install firewalld systemd -y
service 服务名 {status|start|stop|restart}
1)防火墙
1、firewalld的基本使用
启动: systemctl start mysqld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed
3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanen
10)linux下开启防火墙,允许通过的端口
设置Ftp账户
useradd ftpuser
passwd ftpuser
安装Ftp服务
yum -y install vsftpd
查看服务状态
systemctl status vsftpd
启动服务状态
systemctl start vsftpd
查看vsftpd服务进程ID
ps -ef |grep vsftpd
查看进程ID详细信息
netstat -nap |grep 12998
查看防火墙状态
systemctl status firewall
# 添加临时开放端口(例如:比如我修改ssh远程连接端口是21,则需要开放这个端口)
# firewall-cmd --add-port=21/tcp
# 添加永久开放的端口(例如:21端口)
# firewall-cmd --add-port=21/tcp --permanent
重启防火墙
# firewall-cmd --reload
# systemctl restart firewalld
getsebool -a |grep ftp
修改ftpd_full_access为开启状态
setsebool -P allow_ftpd_full_access on
1、查看防火墙状态
systemctl status firewalld
2、如果不是显示active状态,需要打开防火墙
systemctl start firewalld
3、# 查看所有已开放的临时端口(默认为空)
# firewall-cmd --list-ports
# 查看所有永久开放的端口(默认为空)
# firewall-cmd --list-ports --permanent
# 添加临时开放端口(例如:比如我修改ssh远程连接端口是223,则需要开放这个端口)
# firewall-cmd --add-port=223/tcp
# 添加永久开放的端口(例如:223端口)
# firewall-cmd --add-port=223/tcp --permanent
# 关闭临时端口
# firewall-cmd --remove-port=80/tcp
# 关闭永久端口
# firewll-cmd --remove-port=80/tcp --permanent
# 配置结束后需要输入重载命令并重启防火墙以生效配置
# firewall-cmd --reload
# systemctl restart firewalld
查看创建该表的sql语句
show create table table_name
mysql> show create table bdwp;
| bdwp | CREATE TABLE `bdwp` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`userip` text NOT NULL COMMENT '用户ip',
`filename` text NOT NULL COMMENT '文件名',
`size` text NOT NULL COMMENT '文件大小',
`md5` text NOT NULL COMMENT '文件效验码',
`path` text NOT NULL COMMENT '文件路径',
`server_ctime` text NOT NULL COMMENT '文件创建时间',
`realLink` text NOT NULL COMMENT '文件下载地址',
`ptime` datetime NOT NULL COMMENT '解析时间',
`paccount` int(11) NOT NULL COMMENT '解析账号id',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4
案例1 Linux安装配置MySQL详细步骤
MySQL 推荐使用 RPM 包进行 Linux 平台下的安装,因为 RPM 包的安装和卸载都很方便,通过简单的命令就可以实现。本节主要介绍 Linux 下如何使用 RPM 包安装和配置 MySQL。
本节的安装环境为 CentOS 6.5,选用 el6 的安装包。读者应根据自己的系统来选择相对应的安装包,例如:CentOS 7 应该选用 el7 安装包。如果安装包对应的系统版本不正确,安装时会出现有关 glibc 的依赖错误。
下面通过 RPM 包进行安装,具体操作步骤如下:
步骤 1):进入官方下载页面(http://dev.mysql.com/downloads/mysql)选择要下载的包(可直接点击下方链接进行下载)。
- mysql-community-common-5.7.29-1.el6.x86_64.rpm
- mysql-community-libs-5.7.29-1.el6.x86_64.rpm
- mysql-community-client-5.7.29-1.el6.x86_64.rpm
- mysql-community-server-5.7.29-1.el6.x86_64.rpm
步骤 2):下载完成后,切换到 root 用户。按照依赖关系依次安装 rpm 包,依赖关系依次为 common→libs→client→server。使用命令rpm -ivh {-file-name}
进行安装操作。
rpm -ivh mysql-community-common-5.7.29-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.29-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.29-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.29-1.el6.x86_64.rpm
ivh 中,i-install 参数表示安装后面的一个或多个 RPM 软件包;v-verbose 参数表示安装过程中显示详细的信息;h-hash 参数表示使用“#”来显示安装进度。
在 Linux 操作系统下安装 MySQL 时,一定要注意权限问题。安装 RPM 软件包时,需要使用 root 权限,否则会提示权限不够。且安装完成后,也需要使用 root 权限启动和关闭 MySQL 服务。
步骤 3):通过以下命令可以启动 MySQL 数据库,但是必须使用 root 权限。
service mysql start
提示:从 MySQL 5.0 开始,MySQL 的服务名改为 mysql,而不是 4.* 的 mysqld。
MySQL 服务的操作命令是:
service mysql start | stop | restart | status
以上几个参数的意义如下:
- start:启动 MySQL 服务
- stop:停止 MySQL 服务
- restart:重启 MySQL 服务
- status:查看 MySQL 服务状态
步骤 4):服务启动后,查找 root 初始随机密码(如果没有初始密码,直接输入用户名 root 登录即可)
cat /var/log/mysqld.log | grep 'temporary password is generated'
步骤 5):安装成功后,使用以下命令登录 MySQL。
mysql -uroot -p
如果看到以下欢迎信息,说明登录成功,接下来就可以对 MySQL 数据库进行操作了。
[root@localhost ~]# mysql -uroot -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1
Server version: 5.7.29 MySQL Community Server (GPL)
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
以上说明性语句介绍如下:
- Commands end with; org:说明 mysql 命令行下的命令是以分号(;)或“g”来结束的,遇到这个结束符就开始执行命令。
- Your MySQL connection id is 1:id 表示 MySQL 数据库的连接次数,这里为 1,说明是首次登录。
- Server version: 5. 7.29-log MySQL Community Server(GPL):Server version 后面说明数据库的版本,这个版本为 5.7.29。Community 表示该版本是社区版。
- Type 'help;' or 'h' for help:表示输入”help;“或者”h“可以看到帮助信息。
- Type 'c' to clear the current input statement:表示遇到”c“就清除前面的命令。
提示:当窗口中出现如上图所示的说明信息,命令提示符变为“mysql>”时,表明已经成功登录 MySQL 服务器,可以开始对数据库进行操作了。
步骤 6):可使用以下命令修改密码
set password='testroot';
使用 RPM 包安装时,系统不会提示各种文件安装在哪个文件夹下。下面介绍每个主要的文件在什么目录下,MySQL 服务器目录以及子目录如下表所示:
文件夹 | 文件夹内容 |
---|---|
/usr/bin | 客户端和脚本(mysqladmin、mysqldump 等命令) |
/usr/sbin | mysqld 服务器 |
/var/lib/mysql | 日志文件、socket 文件和数据库 |
/usr/share/info | 信息格式的手册 |
/usr/share/man | UNIX 帮助页 |
/usr/include/mysql | 头文件 |
/usr/lib/mysql | 库 |
/usr/share/mysql | 错误消息、字符集、安装文件和配置文件等 |
/etc/rc.d/init.d/ | 启动脚本文件的 mysql 目录,可以用来启动和停止 MySQL 服务 |
步骤 7):配置 MySQL 服务,将 /usr/share/mysql/ 或 /usr/share/ 文件夹下的某一个后缀名为 cnf 的文件拷贝到 /etc/ 文件夹下,并且改名为 my.cnf。使用 vi 编辑器来编辑 my.cnf(我们在《my.cnf配置文件详解》一节介绍了 my.cnf 配置文件中各参数的具体意义)。命令如下:
cp /usr/share/mysql/my-large.cnf /etc/my.cnf
vi /etc/my.cnf
第一行命令可以完成复制和改名的工作,第二行命令可以编辑 my.cnf。
注意:使用 vi 进入 my.cnf 文件后,按 i 或 a 键进行编辑。按 Esc 键就可以退出编辑状态,转为进入命令状态。如果要保存修改的数据,输入:w
即可,如果不希望保存而直接退出,输入:q!
即可。
编辑并保存 my.cnf 文件后,必须重新启动 MySQL 服务,这样 my.cnf 中的配置才会起作用。
版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!
常见资源合集和破解 fmvvvteih...