Intellij IDEA快捷键大全汇总(Windows)

Ctrl

 

快捷键 介绍
Ctrl + F 在当前文件进行文本查找 (必备)
Ctrl + R 在当前文件进行文本替换 (必备)
Ctrl + Z 撤销 (必备)
Ctrl + Y 删除光标所在行 或 删除选中的行 (必备)
Ctrl + X 剪切光标所在行 或 剪切选择内容
Ctrl + C 复制光标所在行 或 复制选择内容
Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面 (必备)
Ctrl + W 递进式选择代码块。可选中光标所在的单词或段落,连续按会在原有选中的基础上再扩展选中范围 (必备)
Ctrl + E 显示最近打开的文件记录列表
Ctrl + N 根据输入的 类名 查找类文件
Ctrl + G 在当前文件跳转到指定行处
Ctrl + J 插入自定义动态代码模板
Ctrl + P 方法参数提示显示
Ctrl + Q 光标所在的变量 / 类名 / 方法名等上面(也可以在提示补充的时候按),显示文档内容
Ctrl + U 前往当前光标所在的方法的父类的方法 / 接口定义
Ctrl + B 进入光标所在的方法/变量的接口或是定义出,等效于 Ctrl + 左键单击
Ctrl + K 版本控制提交项目,需要此项目有加入到版本控制才可用
Ctrl + T 版本控制更新项目,需要此项目有加入到版本控制才可用
Ctrl + H 显示当前类的层次结构
Ctrl + O 选择可重写的方法
Ctrl + I 选择可继承的方法
Ctrl + + 展开代码
Ctrl + – 折叠代码
Ctrl + / 注释光标所在行代码,会根据当前不同文件类型使用不同的注释符号 (必备)
Ctrl + [ 移动光标到当前所在代码的花括号开始位置
Ctrl + ] 移动光标到当前所在代码的花括号结束位置
Ctrl + F1 在光标所在的错误代码出显示错误信息
Ctrl + F3 调转到所选中的词的下一个引用位置
Ctrl + F4 关闭当前编辑文件
Ctrl + F8 在 Debug 模式下,设置光标当前行为断点,如果当前已经是断点则去掉断点
Ctrl + F9 执行 Make Project 操作
Ctrl + F11 选中文件 / 文件夹,使用助记符设定 / 取消书签
Ctrl + F12 弹出当前文件结构层,可以在弹出的层上直接输入,进行筛选
Ctrl + Tab 编辑窗口切换,如果在切换的过程又加按上delete,则是关闭对应选中的窗口
Ctrl + Enter 智能分隔行
Ctrl + End 跳到文件尾
Ctrl + Home 跳到文件头
Ctrl + Space 基础代码补全,默认在 Windows 系统上被输入法占用,需要进行修改,建议修改为 Ctrl + 逗号 (必备)
Ctrl + Delete 删除光标后面的单词或是中文句
Ctrl + BackSpace 删除光标前面的单词或是中文句
Ctrl + 1,2,3…9 定位到对应数值的书签位置
Ctrl + 左键单击 在打开的文件标题上,弹出该文件路径
Ctrl + 光标定位 按 Ctrl 不要松开,会显示光标所在的类信息摘要
Ctrl + 左方向键 光标跳转到当前单词 / 中文句的左侧开头位置
Ctrl + 右方向键 光标跳转到当前单词 / 中文句的右侧开头位置
Ctrl + 前方向键 等效于鼠标滚轮向前效果
Ctrl + 后方向键 等效于鼠标滚轮向后效果

Alt

 

快捷键 介绍
Alt + ` 显示版本控制常用操作菜单弹出层
Alt + Q 弹出一个提示,显示当前类的声明 / 上下文信息
Alt + F1 显示当前文件选择目标弹出层,弹出层中有很多目标可以进行选择
Alt + F2 对于前面页面,显示各类浏览器打开目标选择弹出层
Alt + F3 选中文本,逐个往下查找相同文本,并高亮显示
Alt + F7 查找光标所在的方法 / 变量 / 类被调用的地方
Alt + F8 在 Debug 的状态下,选中对象,弹出可输入计算表达式调试框,查看该输入内容的调试结果
Alt + Home 定位 / 显示到当前文件的 Navigation Bar
Alt + Enter IntelliJ IDEA 根据光标所在问题,提供快速修复选择,光标放在的位置不同提示的结果也不同 (必备)
Alt + Insert 代码自动生成,如生成对象的 set / get 方法,构造函数,toString() 等
Alt + 左方向键 按左方向切换当前已打开的文件视图
Alt + 右方向键 按右方向切换当前已打开的文件视图
Alt + 前方向键 当前光标跳转到当前文件的前一个方法名位置
Alt + 后方向键 当前光标跳转到当前文件的后一个方法名位置
Alt + 1,2,3…9 显示对应数值的选项卡,其中 1 是 Project 用得最多

Shift

 

快捷键 介绍
Shift + F1 如果有外部文档可以连接外部文档
Shift + F2 跳转到上一个高亮错误 或 警告位置
Shift + F3 在查找模式下,查找匹配上一个
Shift + F4 对当前打开的文件,使用新Windows窗口打开,旧窗口保留
Shift + F6 对文件 / 文件夹 重命名
Shift + F7 在 Debug 模式下,智能步入。断点所在行上有多个方法调用,会弹出进入哪个方法
Shift + F8 在 Debug 模式下,跳出,表现出来的效果跟 F9 一样
Shift + F9 等效于点击工具栏的 Debug 按钮
Shift + F10 等效于点击工具栏的 Run 按钮
Shift + F11 弹出书签显示层
Shift + Tab 取消缩进
Shift + ESC 隐藏当前 或 最后一个激活的工具窗口
Shift + End 选中光标到当前行尾位置
Shift + Home 选中光标到当前行头位置
Shift + Enter 开始新一行。光标所在行下空出一行,光标定位到新行位置
Shift + 左键单击 在打开的文件名上按此快捷键,可以关闭当前打开文件
Shift + 滚轮前后滚动 当前文件的横向滚动轴滚动

Ctrl + Alt

 

快捷键 介绍
Ctrl + Alt + L 格式化代码,可以对当前文件和整个包目录使用 (必备)
Ctrl + Alt + O 优化导入的类,可以对当前文件和整个包目录使用 (必备)
Ctrl + Alt + I 光标所在行 或 选中部分进行自动代码缩进,有点类似格式化
Ctrl + Alt + T 对选中的代码弹出环绕选项弹出层
Ctrl + Alt + J 弹出模板选择窗口,讲选定的代码加入动态模板中
Ctrl + Alt + H 调用层次
Ctrl + Alt + B 在某个调用的方法名上使用会跳到具体的实现处,可以跳过接口
Ctrl + Alt + V 快速引进变量
Ctrl + Alt + Y 同步、刷新
Ctrl + Alt + S 打开 IntelliJ IDEA 系统设置
Ctrl + Alt + F7 显示使用的地方。寻找被该类或是变量被调用的地方,用弹出框的方式找出来
Ctrl + Alt + F11 切换全屏模式
Ctrl + Alt + Enter 光标所在行上空出一行,光标定位到新行
Ctrl + Alt + Home 弹出跟当前文件有关联的文件弹出层
Ctrl + Alt + Space 类名自动完成
Ctrl + Alt + 左方向键 退回到上一个操作的地方 (必备)(注意与其他软件快捷键冲突)
Ctrl + Alt + 右方向键 前进到上一个操作的地方 (必备)(注意与其他软件快捷键冲突)
Ctrl + Alt + 前方向键 在查找模式下,跳到上个查找的文件
Ctrl + Alt + 后方向键 在查找模式下,跳到下个查找的文件

Ctrl + Shift

 

快捷键 介绍
Ctrl + Shift + F 根据输入内容查找整个项目 或 指定目录内文件 (必备)
Ctrl + Shift + R 根据输入内容替换对应内容,范围为整个项目 或 指定目录内文件 (必备)
Ctrl + Shift + J 自动将下一行合并到当前行末尾 (必备)
Ctrl + Shift + Z 取消撤销 (必备)
Ctrl + Shift + W 递进式取消选择代码块。可选中光标所在的单词或段落,连续按会在原有选中的基础上再扩展取消选中范围 (必备)
Ctrl + Shift + N 通过文件名定位 / 打开文件 / 目录,打开目录需要在输入的内容后面多加一个正斜杠 (必备)
Ctrl + Shift + U 对选中的代码进行大 / 小写轮流转换 (必备)
Ctrl + Shift + T 对当前类生成单元测试类,如果已经存在的单元测试类则可以进行选择
Ctrl + Shift + C 复制当前文件磁盘路径到剪贴板
Ctrl + Shift + V 弹出缓存的最近拷贝的内容管理器弹出层
Ctrl + Shift + E 显示最近修改的文件列表的弹出层
Ctrl + Shift + H 显示方法层次结构
Ctrl + Shift + B 跳转到类型声明处
Ctrl + Shift + I 快速查看光标所在的方法 或 类的定义
Ctrl + Shift + A 查找动作 / 设置
Ctrl + Shift + / 代码块注释 (必备)
Ctrl + Shift + [ 选中从光标所在位置到它的顶部中括号位置
Ctrl + Shift + ] 选中从光标所在位置到它的底部中括号位置
Ctrl + Shift + + 展开所有代码
Ctrl + Shift + – 折叠所有代码
Ctrl + Shift + F7 高亮显示所有该选中文本,按Esc高亮消失
Ctrl + Shift + F8 在 Debug 模式下,指定断点进入条件
Ctrl + Shift + F9 编译选中的文件 / 包 / Module
Ctrl + Shift + F12 编辑器最大化
Ctrl + Shift + Space 智能代码提示
Ctrl + Shift + Enter 自动结束代码,行末自动添加分号 (必备)
Ctrl + Shift + Backspace 退回到上次修改的地方
Ctrl + Shift + 1,2,3…9 快速添加指定数值的书签
Ctrl + Shift + 左方向键 在代码文件上,光标跳转到当前单词 / 中文句的左侧开头位置,同时选中该单词 / 中文句
Ctrl + Shift + 右方向键 在代码文件上,光标跳转到当前单词 / 中文句的右侧开头位置,同时选中该单词 / 中文句
Ctrl + Shift + 左方向键 在光标焦点是在工具选项卡上,缩小选项卡区域
Ctrl + Shift + 右方向键 在光标焦点是在工具选项卡上,扩大选项卡区域
Ctrl + Shift + 前方向键 光标放在方法名上,将方法移动到上一个方法前面,调整方法排序
Ctrl + Shift + 后方向键 光标放在方法名上,将方法移动到下一个方法前面,调整方法排序

Alt + Shift

 

快捷键 介绍
Alt + Shift + N 选择 / 添加 task
Alt + Shift + F 显示添加到收藏夹弹出层
Alt + Shift + C 查看最近操作项目的变化情况列表
Alt + Shift + F 添加到收藏夹
Alt + Shift + I 查看项目当前文件
Alt + Shift + F7 在 Debug 模式下,下一步,进入当前方法体内,如果方法体还有方法,则会进入该内嵌的方法中,依此循环进入
Alt + Shift + F9 弹出 Debug 的可选择菜单
Alt + Shift + F10 弹出 Run 的可选择菜单
Alt + Shift + 左键双击 选择被双击的单词 / 中文句,按住不放,可以同时选择其他单词 / 中文句
Alt + Shift + 前方向键 移动光标所在行向上移动
Alt + Shift + 后方向键 移动光标所在行向下移动

Ctrl + Shift + Alt

 

快捷键 介绍
Ctrl + Shift + Alt + V 无格式黏贴
Ctrl + Shift + Alt + N 前往指定的变量 / 方法
Ctrl + Shift + Alt + S 打开当前项目设置
Ctrl + Shift + Alt + C 复制参考信息

其他

 

快捷键 介绍
F2 跳转到下一个高亮错误 或 警告位置 (必备)
F3 在查找模式下,定位到下一个匹配处
F4 编辑源
F7 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中
F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内
F9 在 Debug 模式下,恢复程序运行,但是如果该断点下面代码还有断点则停在下一个断点上
F11 添加书签
F12 回到前一个工具窗口
Tab 缩进
ESC 从工具窗口进入代码文件窗口
连按两次Shift 弹出 Search Everywhere 弹出层

 

常见TCP和UDP端口列表列表参考

端口号小于256的一般为常用端口号。其中常用的保留TCP端口号有HTTP 80、FTP 20/21、Telnet 23、SMTP 25、DNS 53等;常用的保留UDP端口号有DNS 53、BootP 67(server)/ 68(client)、TFTP 69、SNMP 161等。

TCP与UDP段结构中端口地址都是16比特,可以有在0-65535范围内的端口号。任何TCP/IP实现所提供的服务都用1-1023之间的端口号,是由ICANN来管理的。端口号从1024-49151是被注册的端口号,被IANA指定为特殊服务使用。从49152-65535是动态或私有端口号。

著名端口

端口号码 / 层 名称 注释
1 tcpmux TCP 端口服务多路复用
5 rje 远程作业入口
7 echo Echo 服务
9 discard 用于连接测试的空服务
11 systat 用于列举连接了的端口的系统状态
13 daytime 给请求主机发送日期和时间
17 qotd 给连接了的主机发送每日格言
18 msp 消息发送协议
19 chargen 字符生成服务;发送无止境的字符流
20 ftp-data FTP 数据端口
21 ftp 文件传输协议(FTP)端口;有时被文件服务协议(FSP)使用
22 ssh 安全 Shell(SSH)服务
23 telnet Telnet 服务
25 smtp 简单邮件传输协议(SMTP)
37 time 时间协议
39 rlp 资源定位协议
42 nameserver 互联网名称服务
43 nicname WHOIS 目录服务
49 tacacs 用于基于 TCP/IP 验证和访问的终端访问控制器访问控制系统
50 re-mail-ck 远程邮件检查协议
53 domain 域名服务(如 BIND)
63 whois++ WHOIS++,被扩展了的 WHOIS 服务
67 bootps 引导协议(BOOTP)服务;还被动态主机配置协议(DHCP)服务使用
68 bootpc Bootstrap(BOOTP)客户;还被动态主机配置协议(DHCP)客户使用
69 tftp 小文件传输协议(TFTP)
70 gopher Gopher 互联网文档搜寻和检索
71 netrjs-1 远程作业服务
72 netrjs-2 远程作业服务
73 netrjs-3 远程作业服务
73 netrjs-4 远程作业服务
79 finger 用于用户联系信息的 Finger 服务
80 http 用于万维网(WWW)服务的超文本传输协议(HTTP)
88 kerberos Kerberos 网络验证系统
95 supdup Telnet 协议扩展
101 hostname SRI-NIC 机器上的主机名服务
102 iso-tsap ISO 开发环境(ISODE)网络应用
105 csnet-ns 邮箱名称服务器;也被 CSO 名称服务器使用
107 rtelnet 远程 Telnet
109 pop2 邮局协议版本2
110 pop3 邮局协议版本3
111 sunrpc 用于远程命令执行的远程过程调用(RPC)协议,被网络文件系统(NFS)使用
113 auth 验证和身份识别协议
115 sftp 安全文件传输协议(SFTP)服务
117 uucp-path Unix 到 Unix 复制协议(UUCP)路径服务
119 nntp 用于 USENET 讨论系统的网络新闻传输协议(NNTP)
123 ntp 网络时间协议(NTP)
137 netbios-ns 在红帽企业 Linux 中被 Samba 使用的 NETBIOS 名称服务
138 netbios-dgm 在红帽企业 Linux 中被 Samba 使用的 NETBIOS 数据报服务
139 netbios-ssn 在红帽企业 Linux 中被 Samba 使用的NET BIOS 会话服务
143 imap 互联网消息存取协议(IMAP)
161 snmp 简单网络管理协议(SNMP)
162 snmptrap SNMP 的陷阱
163 cmip-man 通用管理信息协议(CMIP)
164 cmip-agent 通用管理信息协议(CMIP)
174 mailq MAILQ
177 xdmcp X 显示管理器控制协议
178 nextstep NeXTStep 窗口服务器
179 bgp 边界网络协议
191 prospero Cliffod Neuman 的 Prospero 服务
194 irc 互联网中继聊天(IRC)
199 smux SNMP UNIX 多路复用
201 at-rtmp AppleTalk 选路
202 at-nbp AppleTalk 名称绑定
204 at-echo AppleTalk echo 服务
206 at-zis AppleTalk 区块信息
209 qmtp 快速邮件传输协议(QMTP)
210 z39.50 NISO Z39.50 数据库
213 ipx 互联网络分组交换协议(IPX),被 Novell Netware 环境常用的数据报协议
220 imap3 互联网消息存取协议版本3
245 link LINK
347 fatserv Fatmen 服务器
363 rsvp_tunnel RSVP 隧道
369 rpc2portmap Coda 文件系统端口映射器
370 codaauth2 Coda 文件系统验证服务
372 ulistproc UNIX Listserv
389 ldap 轻型目录存取协议(LDAP)
427 svrloc 服务位置协议(SLP)
434 mobileip-agent 可移互联网协议(IP)代理
435 mobilip-mn 可移互联网协议(IP)管理器
443 https 安全超文本传输协议(HTTP)
444 snpp 小型网络分页协议
445 microsoft-ds 通过 TCP/IP 的服务器消息块(SMB)
464 kpasswd Kerberos 口令和钥匙改换服务
468 photuris Photuris 会话钥匙管理协议
487 saft 简单不对称文件传输(SAFT)协议
488 gss-http 用于 HTTP 的通用安全服务(GSS)
496 pim-rp-disc 用于协议独立的多址传播(PIM)服务的会合点发现(RP-DISC)
500 isakmp 互联网安全关联和钥匙管理协议(ISAKMP)
535 iiop 互联网内部对象请求代理协议(IIOP)
538 gdomap GNUstep 分布式对象映射器(GDOMAP)
546 dhcpv6-client 动态主机配置协议(DHCP)版本6客户
547 dhcpv6-server 动态主机配置协议(DHCP)版本6服务
554 rtsp 实时流播协议(RTSP)
563 nntps 通过安全套接字层的网络新闻传输协议(NNTPS)
565 whoami whoami
587 submission 邮件消息提交代理(MSA)
610 npmp-local 网络外设管理协议(NPMP)本地 / 分布式排队系统(DQS)
611 npmp-gui 网络外设管理协议(NPMP)GUI / 分布式排队系统(DQS)
612 hmmp-ind HMMP 指示 / DQS
631 ipp 互联网打印协议(IPP)
636 ldaps 通过安全套接字层的轻型目录访问协议(LDAPS)
674 acap 应用程序配置存取协议(ACAP)
694 ha-cluster 用于带有高可用性的群集的心跳服务
749 kerberos-adm Kerberos 版本5(v5)的“kadmin”数据库管理
750 kerberos-iv Kerberos 版本4(v4)服务
765 webster 网络词典
767 phonebook 网络电话簿
873 rsync rsync 文件传输服务
992 telnets 通过安全套接字层的 Telnet(TelnetS)
993 imaps 通过安全套接字层的互联网消息存取协议(IMAPS)
994 ircs 通过安全套接字层的互联网中继聊天(IRCS)
995 pop3s 通过安全套接字层的邮局协议版本3(POPS3)

UNIX 特有的端口

以下端口是 UNIX 特有的,涉及了从电子邮件到验证不等的服务。在方括号内的名称(如 [service])是服务的守护进程名称或它的常用别名。

端口号码 / 层 名称 注释
512/tcp exec 用于对远程执行的进程进行验证
512/udp biff [comsat] 异步邮件客户(biff)和服务(comsat)
513/tcp login 远程登录(rlogin)
513/udp who [whod] 登录的用户列表
514/tcp shell [cmd] 不必登录的远程 shell(rshell)和远程复制(rcp)
514/udp syslog UNIX 系统日志服务
515 printer [spooler] 打印机(lpr)假脱机
517/udp talk 远程对话服务和客户
518/udp ntalk 网络交谈(ntalk),远程对话服务和客户
519 utime [unixtime] UNIX 时间协议(utime)
520/tcp efs 扩展文件名服务器(EFS)
520/udp router [route, routed] 选路信息协议(RIP)
521 ripng 用于互联网协议版本6(IPv6)的选路信息协议
525 timed [timeserver] 时间守护进程(timed)
526/tcp tempo [newdate] Tempo
530/tcp courier [rpc] Courier 远程过程调用(RPC)协议
531/tcp conference [chat] 互联网中继聊天
532 netnews Netnews
533/udp netwall 用于紧急广播的 Netwall
540/tcp uucp [uucpd] Unix 到 Unix 复制服务
543/tcp klogin Kerberos 版本5(v5)远程登录
544/tcp kshell Kerberos 版本5(v5)远程 shell
548 afpovertcp 通过传输控制协议(TCP)的 Appletalk 文件编制协议(AFP)
556 remotefs [rfs_server, rfs] Brunhoff 的远程文件系统(RFS)

注册的端口

列举了由网络和软件社区向 IANA 提交的要在端口号码列表中正式注册的端口。

端口号码 / 层 名称 注释
1080 socks SOCKS 网络应用程序代理服务
1236 bvcontrol [rmtcfg] Garcilis Packeten 远程配置服务器
1300 h323hostcallsc H.323 电话会议主机电话安全
1433 ms-sql-s Microsoft SQL 服务器
1434 ms-sql-m Microsoft SQL 监视器
1494 ica Citrix ICA 客户
1512 wins Microsoft Windows 互联网名称服务器
1524 ingreslock Ingres 数据库管理系统(DBMS)锁定服务
1525 prospero-np 无特权的 Prospero
1645 datametrics [old-radius] Datametrics / 从前的 radius 项目
1646 sa-msg-port [oldradacct] sa-msg-port / 从前的 radacct 项目
1649 kermit Kermit 文件传输和管理服务
1701 l2tp [l2f] 第2层隧道服务(LT2P) / 第2层转发(L2F)
1718 h323gatedisc H.323 电讯守门装置发现机制
1719 h323gatestat H.323 电讯守门装置状态
1720 h323hostcall H.323 电讯主持电话设置
1758 tftp-mcast 小文件 FTP 组播
1759 mtftp 组播小文件 FTP(MTFTP)
1789 hello Hello 路由器通信端口
1812 radius Radius 拨号验证和记帐服务
1813 radius-acct Radius 记帐
1911 mtp Starlight 网络多媒体传输协议(MTP)
1985 hsrp Cisco 热备用路由器协议
1986 licensedaemon Cisco 许可管理守护进程
1997 gdp-port Cisco 网关发现协议(GDP)
2049 nfs [nfsd] 网络文件系统(NFS)
2102 zephyr-srv Zephyr 通知传输和发送服务器
2103 zephyr-clt Zephyr serv-hm 连接
2104 zephyr-hm Zephyr 主机管理器
2401 cvspserver 并行版本系统(CVS)客户 / 服务器操作
2430/tcp venus 用于 Coda 文件系统(codacon 端口)的 Venus 缓存管理器
2430/udp venus 用于 Coda 文件系统(callback/wbc interface 界面)的 Venus 缓存管理器
2431/tcp venus-se Venus 传输控制协议(TCP)的副作用
2431/udp venus-se Venus 用户数据报协议(UDP)的副作用
2432/udp codasrv Coda 文件系统服务器端口
2433/tcp codasrv-se Coda 文件系统 TCP 副作用
2433/udp codasrv-se Coda 文件系统 UDP SFTP 副作用
2600 hpstgmgr [zebrasrv] HPSTGMGR;Zebra 选路
2601 discp-client [zebra] discp 客户;Zebra 集成的 shell
2602 discp-server [ripd] discp 服务器;选路信息协议守护进程(ripd)
2603 servicemeter [ripngd] 服务计量;用于 IPv6 的 RIP 守护进程
2604 nsc-ccs [ospfd] NSC CCS;开放式短路径优先守护进程(ospfd)
2605 nsc-posa NSC POSA;边界网络协议守护进程(bgpd)
2606 netmon [ospf6d] Dell Netmon;用于 IPv6 的 OSPF 守护进程(ospf6d)
2809 corbaloc 公共对象请求代理体系(CORBA)命名服务定位器
3130 icpv2 互联网缓存协议版本2(v2);被 Squid 代理缓存服务器使用
3306 mysql MySQL 数据库服务
3346 trnsprntproxy Trnsprnt 代理
4011 pxe 执行前环境(PXE)服务
4321 rwhois 远程 Whois(rwhois)服务
4444 krb524 Kerberos 版本5(v5)到版本4(v4)门票转换器
5002 rfe 无射频以太网(RFE)音频广播系统
5308 cfengine 配置引擎(Cfengine)
5999 cvsup [CVSup] CVSup 文件传输和更新工具
6000 x11 [X] X 窗口系统服务
7000 afs3-fileserver Andrew 文件系统(AFS)文件服务器
7001 afs3-callback 用于给缓存管理器回电的 AFS 端口
7002 afs3-prserver AFS 用户和组群数据库
7003 afs3-vlserver AFS 文件卷位置数据库
7004 afs3-kaserver AFS Kerberos 验证服务
7005 afs3-volser AFS 文件卷管理服务器
7006 afs3-errors AFS 错误解释服务
7007 afs3-bos AFS 基本监查进程
7008 afs3-update AFS 服务器到服务器更新器
7009 afs3-rmtsys AFS 远程缓存管理器服务
9876 sd 会话指引器
10080 amanda 高级 Maryland 自动网络磁盘归档器(Amanda)备份服务
11371 pgpkeyserver 良好隐私(PGP) / GNU 隐私卫士(GPG)公钥服务器
11720 h323callsigalt H.323 调用信号交替
13720 bprd Veritas NetBackup 请求守护进程(bprd)
13721 bpdbm Veritas NetBackup 数据库管理器(bpdbm)
13722 bpjava-msvc Veritas NetBackup Java / Microsoft Visual C++ (MSVC) 协议
13724 vnetd Veritas 网络工具
13782 bpcd Vertias NetBackup
13783 vopied Veritas VOPIED 协议
22273 wnn6 [wnn4] 假名/汉字转换系统
26000 quake Quake(以及相关的)多人游戏服务器
26208 wnn6-ds
33434 traceroute Traceroute 网络跟踪工具
注:
/etc/services中的注释如下:端口1236被注册为“bvcontrol”,但是它也被 Gracilis Packeten 远程配置服务器使用。正式名称被列为主要名称,未注册的名称被列为别名。
在/etc/services中的注释:端口 2600 到 2606 被 zebra 软件包未经注册而使用。主要名称是被注册的名称,被 zebra 使用的未注册名称被列为别名。
/etc/services 文件中的注释:该端口被注册为 wnn6,但是还在 FreeWnn 软件包中使用了未注册的“wnn4”。

数据报传递协议端口

显示了一个和数据报传递协议(DDP)有关的端口列表。DDP 在 AppleTalk 网络上被使用。

端口号码 / 层 名称 注释
1/ddp rtmp 路由表管理协议
2/ddp nbp 名称绑定协议
4/ddp echo AppleTalk Echo 协议
6/ddp zip 区块信息协议

Kerberos(工程 Athena/MIT)端口

和 Kerberos 网络验证协议相关的端口列表。在标记的地方,v5 代表 Kerberos 版本5协议。注意,这些端口没有在 IANA 注册。

端口号码 / 层 名称 注释
751 kerberos_master Kerberos 验证
752 passwd_server Kerberos 口令(kpasswd)服务器
754 krb5_prop Kerberos v5 从属传播
760 krbupdate [kreg] Kerberos 注册
1109 kpop Kerberos 邮局协议(KPOP)
2053 knetd Kerberos 多路分用器
2105 eklogin Kerberos v5 加密的远程登录(rlogin)

未注册的端口

一个未注册的端口列表。这些端口可能被安装在你的红帽企业 Linux 系统上的服务或协议使用,或者它们是在红帽企业 Linux 和运行其它操作系统的机器通信所必需的端口。

端口号码 / 层 名称 注释
15/tcp netstat 网络状态(netstat)
98/tcp linuxconf Linuxconf Linux 管理工具
106 poppassd 邮局协议口令改变守护进程(POPPASSD)
465/tcp smtps 通过安全套接字层的简单邮件传输协议(SMTPS)
616/tcp gii 使用网关的(选路守护进程)互动界面
808 omirr [omirrd] 联机镜像(Omirr)文件镜像服务
871/tcp supfileserv 软件升级协议(SUP)服务器
901/tcp swat Samba 万维网管理工具(SWAT)
953 rndc Berkeley 互联网名称域版本9(BIND 9)远程名称守护进程配置工具
1127 sufiledbg 软件升级协议(SUP)调试
1178/tcp skkserv 简单假名到汉字(SKK)日文输入服务器
1313/tcp xtel 法国 Minitel 文本信息系统
1529/tcp support [prmsd, gnatsd] GNATS 错误跟踪系统
2003/tcp cfinger GNU Finger 服务
2150 ninstall 网络安装服务
2988 afbackup afbackup 客户-服务器备份系统
3128/tcp squid Squid 万维网代理缓存
3455 prsvp RSVP 端口
5432 postgres PostgreSQL 数据库
4557/tcp fax FAX 传输服务(旧服务)
4559/tcp hylafax HylaFAX 客户-服务器协议(新服务)
5232 sgi-dgl SGI 分布式图形库
5354 noclog NOCOL 网络操作中心记录守护进程(noclogd)
5355 hostmon NOCOL 网络操作中心主机监视
5680/tcp canna Canna 日文字符输入界面
6010/tcp x11-ssh-offset 安全 Shell(SSH)X11 转发偏移
6667 ircd 互联网中继聊天守护进程(ircd)
7100/tcp xfs X 字体服务器(XFS)
7666/tcp tircproxy Tircproxy IRC 代理服务
8008 http-alt 超文本传输协议(HTTP)的另一选择
8080 webcache 万维网(WWW)缓存服务
8081 tproxy 透明代理
9100/tcp jetdirect [laserjet, hplj] Hewlett-Packard (HP) JetDirect 网络打印服务
9359 mandelspawn [mandelbrot] 用于 X 窗口系统的并行 Mandelbrot 生成程序
10081 kamanda 使用 Kerberos 的 Amanda 备份服务
10082/tcp amandaidx Amanda 备份服务
10083/tcp amidxtape Amanda 备份服务
20011 isdnlog 综合业务数字网(ISDN)登录系统
20012 vboxd ISDN 音箱守护进程(vboxd)
22305/tcp wnn4_Kr kWnn 韩文输入系统
22289/tcp wnn4_Cn cWnn 中文输入系统
22321/tcp wnn4_Tw tWnn 中文输入系统(台湾)
24554 binkp Binkley TCP/IP Fidonet 邮寄程序守护进程
27374 asp 地址搜索协议
60177 tfido Ifmail FidoNet 兼容邮寄服务
60179 fido FidoNet 电子邮件和新闻网络

横向对比 Gitea 与其它 Git 托管工具

这里列出了 Gitea 与其它一些 Git 托管工具之间的异同,以便确认 Gitea 是否能够满足您的需求。

请注意,此列表中的某些表项可能已经过时,因为我们并没有定期检查其它产品的功能是否有所更改。你可以前往 Github issue 来帮助我们更新过时的内容,感谢!

表格中的符号含义:

  • ✓ – 支持
  • ⁄ – 部分支持
  • ✘ – 不支持
  • ? – 不确定

主要特性

特性 Gitea Gogs GitHub EE GitLab CE GitLab EE BitBucket RhodeCode CE
开源免费
低资源开销 (RAM/CPU)
支持多种数据库
支持多种操作系统
升级简便
支持 Markdown
支持 Orgmode ?
支持 CSV ?
支持第三方渲染工具 ?
Git 驱动的静态 pages
Git 驱动的集成化 wiki
部署令牌
仓库写权限令牌
内置容器 Registry
外部 Git 镜像
FIDO U2F (2FA)
内置 CI/CD
子组织:组织内的组织

代码管理

特性 Gitea Gogs GitHub EE GitLab CE GitLab EE BitBucket RhodeCode CE
仓库主题描述
仓库内代码搜索
全局代码搜索
Git LFS 2.0
组织里程碑
细粒度用户角色 (例如 Code, Issues, Wiki)
提交人的身份验证 ?
GPG 签名的提交
拒绝未用通过验证的提交
仓库活跃度页面
分支管理
建立新分支
在线代码编辑
提交的统计图表

Issue 管理

特性 Gitea Gogs GitHub EE GitLab CE GitLab EE BitBucket RhodeCode CE
跟踪 Issue
Issue 模板
标签
跟踪时间
Issue 可有多个负责人
关联的 issues
私密 issues
评论反馈
锁定讨论
Issue 批量处理
Issue 看板
从 issues 创建分支
Issue 搜索
全局 Issue 搜索
Issue 依赖
通过 Email 创建工单
Service Desk

Pull/Merge requests

特性 Gitea Gogs GitHub EE GitLab CE GitLab EE BitBucket RhodeCode CE
Pull/Merge requests
Squash merging
Rebase merging
评论 Pull/Merge request 中的某行代码
指定 Pull/Merge request 的审核人
解决 Merge 冲突
限制某些用户的 push 和 merge 权限
回退某些 commits 或 merge request
Pull/Merge requests 模板
查看 Cherry-picking 的更改

第三方集成

特性 Gitea Gogs GitHub EE GitLab CE GitLab EE BitBucket RhodeCode CE
支持 Webhook
自定义 Git 钩子
集成 AD / LDAP
支持多个 LDAP / AD 服务
LDAP 用户同步
支持 OpenId 连接 ?
集成 OAuth 2.0(外部授权) ?
作为 OAuth 2.0 provider
二次验证 (2FA)
集成 Mattermost/Slack
集成 Discord
显示外部 CI/CD 的状态

centos中用crontab(计时器)运行定时任务详解

关于crontab

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语 chronos(χρ?νο?),原意是时间。
通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。

安装 crontab (现在大部分系统其实都已经预装了) :

[root@CentOS ~]# yum install vixie-cron
[root@CentOS ~]# yum install crontabs

 

说明:
vixie-cron软件包是cron的主程序;
crontabs软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。

cron 是linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:

/sbin/service crond start #启动服务
/sbin/service crond stop #关闭服务
/sbin/service crond restart #重启服务
/sbin/service crond reload #重新载入配置

 

查看crontab服务状态:

service crond status

手动启动crontab服务:

service crond start

其他命令:

#查看crontab服务是否已设置为开机启动,执行命令:
ntsysv

#加入开机自动启动:
chkconfig --level 35 crond on

#列出crontab文件
crontab -l

#编辑crontab文件
crontab -e

#删除crontab文件
$ crontab -r

#恢复丢失的crontab文件
#假设你在自己的$HOME目录下还有一个备份,那么可以将其拷贝到/var/spool/cron/<username>,其中<username >是用户名
#或者使用如下命令其中,<filename>是你在$HOME目录中副本的文件名
crontab <filename>

日志文件:/var/log/cron*

补充:

1、crontab相关命令

功能说明:设置计时器。

语  法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]

补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使用计时器的功能。

配置文件格式:Minute Hour Day Month DayOFWeek Command

参  数:
-e  编辑该用户的计时器设置。
-l  列出该用户的计时器设置。
-r  删除该用户的计时器设置。
-u<用户名称>  指定要设定计时器的用户名称。

2、crontab 配置文件格式

  基本格式 :
  *      *   *   *   *  command
  分   时  日  月  周   命令

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

# Use the hash sign to prefix a comment
# +—————- minute (0 – 59)
# | +————- hour (0 – 23)
# | | +———- day of month (1 – 31)
# | | | +——- month (1 – 12)
# | | | | +—- day of week (0 – 7) (Sunday=0 or 7)
# | | | | |
# * * * * * command to be executed

crontab文件的一些例子:

#每晚的21:30 重启apache
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
#每月1、10、22日的4 : 45重启apache
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#每周六、周日的1 : 10重启apache
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
#每天18 : 00至23 : 00之间每隔30分钟重启apache
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
#每星期六的11 : 00 pm重启apache
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
#晚上11点到早上7点之间,每隔一小时重启apache
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
#每一小时重启apache
* */1 * * * /usr/local/etc/rc.d/lighttpd restart
#每月的4号与每周一到周三的11点重启apache
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
#一月一号的4点重启apache
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
#每半小时同步一下时间
*/30 * * * * /usr/sbin/ntpdate 210.72.145.44

 

3、其他任务调度

cron默认配置了调度任务,分别为:hourly、daily、weekly、mouthly,默认配置文件为/etc/anacrontab

将需要执行的脚本放到相应的目录下即可,目录分别为:

/etc/cron.hourly

/etc/cron.daily

/etc/cron.weekly

/ect/cron.mouthly

rageframe 一款开源的内部文档管理系统

YII2+AdminLET开源通用后台管理系统源码

RageFrame 2.0

重量级全栖框架,为二次开发而生

前言

这是一款现代化、快速、高效、便捷、灵活、方便扩展的应用开发骨架。

RageFrame 创建于 2016 年 4 月 16 日,一个基于 Yii2 高级框架的快速开发引擎,目前正在成长中,目的是为了集成更多的基础功能,不再为相同的基础功能重复制造轮子,开箱即用,让开发变得更加简单。
2018 年 9 月 10 日 2.0 版本正式上线,经过 1.0 版本一年多的开源反馈磨合,以更加优秀的形态出现。对 1.0 的版本进行了重构优化完善,更好的面向开发者进行二次开发。2.3.x 版本更是优化了底层突出了服务层,分离业务逻辑,支持多商户。

特色

  • 极强的可扩展性,应用化,模块化,插件化机制敏捷开发。
  • 极致的插件机制,微核架构,良好的功能延伸性,功能之间是隔离,可定制性高,可以渐进式地开发,逐步增加功能,安装和卸载不会对原来的系统产生影响,强大的功能完全满足各阶段的需求,支持用户多端访问(后台、微信、Api、前台等)。
  • 极完善的 RBAC 权限控制管理、无限父子级权限分组、可自由分配子级权限,且按钮/链接/自定义内容/插件等都可加入权限控制。
  • 只做基础底层内容,不会在上面开发过多的业务内容,满足绝大多数的系统二次开发。
  • 多入口模式,多入口分为 Backend (后台)、Merchant (商户端)、Frontend (PC前端)、Html5 (手机端)、Console (控制台)、Api (对内接口)、OAuth2 Server (对外接口)、MerApi (商户接口)、Storage (静态资源),不同的业务,不同的设备,进入不同的入口。
  • 对接微信公众号且支持小程序,使用了一款优秀的微信非官方 SDK Easywechat 4.x,开箱即用,预置了绝大部分功能,大幅度的提升了微信开发效率。
  • 整合了第三方登录,目前有 QQ、微信、微博、GitHub 等等。
  • 整合了第三方支付,目前有微信支付、支付宝支付、银联支付,二次封装为网关多个支付一个入口一个出口。
  • 整合了 RESTful API,支持前后端分离接口开发和 App 接口开发,可直接上手开发业务。
  • 一键切换云存储,本地存储、腾讯 COS、阿里云 OSS、七牛云存储都可一键切换,且增加其他第三方存储也非常方便。
  • 全面监控系统报错,报错日志写入数据库,方便定位错误信息。支持直接钉钉提醒。
  • 快速高效的 Servises (服务层),遵循 Yii2 的懒加载方式,只初始化使用到的组件服务。
  • 丰富的表单控件(时间、日期、时间日期、日期范围选择、颜色选择器、省市区三级联动、省市区勾选、单图上传、多图上传、单文件上传、多文件上传、百度编辑器、百度图表、多文本编辑框、地图经纬度选择器、图片裁剪上传、TreeGrid、JsTree、Markdown 编辑器)和组件(二维码生成、Curl、IP地址转地区),快速开发,不必再为基础组件而担忧。
  • 快速生成 CURD ,无需编写代码,只需创建表设置路径就能出现一个完善的 CURD ,其中所需表单控件也是勾选即可直接生成。
  • 正常开发只需要开发商户端,没有 Saas 的时候商户端就是总后台,有了 Saas,商户端就是子后台
  • 完善的文档和辅助类,方便二次开发与集成。

版权信息

RageFrame 遵循 Apache2 开源协议发布,并提供免费使用。

本项目包含的第三方源码和二进制文件之版权信息另行标注。

版权所有Copyright © 2016-2020 by RageFrame www.rageframe.com

All rights reserved。

CentOS 7/8 编译安装 libzip 1.7.3

CentOS 7 源码安装 libzip 1.7.3,error: Please reinstall the libzip distributio 或 error: system libzip must be upgraded to version >= 0.11解决  错误。

1、准备编译环境

yum install openssl-devel bzip2 bzip2-devel

2、下载源码,并解压

wget https://libzip.org/download/libzip-1.7.3.tar.gz 
tar -zxf libzip-1.7.3.tar.gz 
cd libzip-1.7.3

备用下载地址:https://down.24kplus.com/linux/libzip/libzip-1.7.3.tar.gz

3、编译安装

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr .. 
make 
make install

如果提示 ,cmake: command not found需要先安装 cmake。

安装cmake3

yum install -y cmake3
sudo ln -sf /usr/bin/cmake3 /usr/bin/cmake

Gitlab权限诠释

Gitlab权限概念

用户具有不同的能力,具体取决于他们在特定组或项目中的访问级别。如果用户同时在组的项目和项目本身中,则使用最高权限级别。

在公共和内部项目中,不会强制实施Guest角色。所有用户都可以创建问题,发表评论,克隆或下载项目代码。

当成员离开团队时, 将自动取消分配所有分配的问题和合并请求。

GitLab 管理员获得所有权限。

权限

用户组的权限

用户组有这几种权限的概念:Guest、Reporter、Developer、Master、Owner
这个概念在设置用户组的时候会遇到,叫做:Add user(s) to the group,比如链接:http://192.168.1.111/admin/groups/组名称

下表完整的列出了Guest,Reporter,Developer,Master,Owner对应的权限。

行为 Guest Reporter Developer Master Owner
浏览组
编辑组
创建项目
管理组成员
移除组

角色
Gitlab定义了以下几个角色:

Gitlab用户在组中有五种权限:Guest、Reporter、Developer、Master、Owner

Guest:可以创建issue、发表评论,不能读写版本库
Reporter:可以克隆代码,不能提交,QA、PM可以赋予这个权限
Developer:可以克隆代码、开发、提交、push,RD可以赋予这个权限
Master:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心RD负责人可以赋予这个权限
Owner:可以设置项目访问权限 – Visibility Level、删除项目、迁移项目、管理组成员,开发组leader可以赋予这个权限
Gitlab中的组和项目有三种访问权限:Private、Internal、Public

Private:只有组成员才能看到
Internal:只要登录的用户就能看到
Public:所有人都能看到
开源项目和组设置的是Internal

Gitlab权限列表

这里要列一下权限分类,因为gitlab的成员权限不单单只有一种。

  • 项目成员角色
    • Guest – 客人
    • Reporter – 记者
    • Developer – 开发者
    • Master (11.0版本中已重命名为 Maintainer) – 维护者
    • Owner – 所有者
  • 组成员角色
    • Guest – 客人
    • Reporter – 记者
    • Developer – 开发者
    • Master (11.0版本中已重命名为 Maintainer) – 维护者
    • Owner – 维护者
  • GitLab CI-CD 角色
    • Guest, Reporter – 客人,记者
    • Developer – 开发者
    • Maintainer – 维护者
    • Admin – 管理员
  • 工作角色
    • Guest, Reporter – 客人,记者
    • Developer – 开发者
    • Maintainer – 维护者
    • Admin – 管理员

一般管理员邀请用户加入到项目里都需要分配权限,如下:

项目成员权限

注意:在GitLab 11.0中,Master已重命名为Maintainer。

Action Guest Reporter Developer Maintainer Owner
创建新问题
创建机密问题
查看机密问题
留言
查看相关问题
查看工作列表
查看工作日志
下载并浏览作业工件
查看维基页面
查看许可证管理报告
查看安全报告
查看项目代码
拉项目代码
下载项目
分配问题
分配合并请求
标签问题
标签合并请求
创建代码段
管理问题跟踪器
管理标签
查看提交状态
查看容器注册表
查看环境
查看合并请求列表
管理相关问题
锁定问题讨论
从漏洞创建问题
查看错误跟踪列表
锁定合并请求讨论
创建新环境
停止环境
管理/接受合并请求
创建新的合并请求
创建新分支
推送到未受保护的分支机构
强制推送到不受保护的分支机构
删除未受保护的分支
添加标签
写一个维基
取消并重试作业
创建或更新提交状态
更新容器注册表
删除容器注册表图像
创建/编辑/删除项目里程碑
查看已批准/列入黑名单的许可
使用安全仪表板
解除漏洞
应用代码更改建议
使用环境终端
运行Web IDE的交互式Web终端
添加新的团队成员
推送到受保护的分支
启用/禁用分支保护
为开发人员打开/关闭受保护的分支推送
启用/禁用标签保护
重写/删除Git标签
将部署密钥添加到项目中
配置项目挂钩
管理跑步者
管理工作触发器
管理变量
管理GitLab页面
管理GitLab Pages域和证书
删除GitLab页面
查看受访问控制保护的GitLab页面
管理集群
管理许可证政策
编辑评论(由任何用户发布)
管理错误跟踪
切换可见性级别
将项目转移到另一个名称空
删除项目
删除问题
删除页面
强行推动受保护的分支机构
删除受保护的分支
查看项目审核事件

组成员权限

Action Guest Reporter Developer Maintainer Owner
浏览组
编辑组
创建子组
在组中创建项目
管理小组成员
删除组
管理组标签
创建/编辑/删除组里程碑
查看组史诗
创建/编辑组史诗
删除组史诗
查看组审核事件

GitLab CI / CD权限

Action Guest, Reporter Developer Maintainer Admin
查看提交和工作
重试或取消工作
擦除作业工件和跟踪
删除项目
创建项目
更改项目配置
添加特定的跑步者
添加共享的运行者
查看系统中的事件
管理界面

工作权限

Action Guest, Reporter Developer Maintainer Admin
运行CI作业
从当前项目克隆源和LFS
从公共项目克隆源和LFS
从内部项目克隆源和LFS
私有项目的克隆源和LFS
推送源和LFS
从当前项目中提取容器图像
从公共项目中提取容器图像
从内部项目中提取容器图像
从私人项目中提取容器图像
将容器图像推送到当前项目
将容器图像推送到其他项目

以上是权限明细列表,在给成员分配权限时需要合理分配。

参考资料

https://docs.gitlab.com/ee/user/permissions.html

CentOS 7/8 安装 oniguruma 和 oniguruma-devel

CentOS 7/8 安装 onigurumaoniguruma-devel 。解决 configure: error: Package requirements (oniguruma) were not met: Package 'oniguruma', required by 'virtual:world', not found 问题。

CentOS 7 安装

yum -y install http://mirror.centos.org/centos-7/7.7.1908/cloud/x86_64/openstack-queens/oniguruma-6.7.0-1.el7.x86_64.rpm
yum -y install http://mirror.centos.org/centos-7/7.7.1908/cloud/x86_64/openstack-queens/oniguruma-devel-6.7.0-1.el7.x86_64.rpm

备用下载:

oniguruma:http://down.24kplus.com/linux/oniguruma/oniguruma-6.7.0-1.el7.x86_64.rpm
oniguruma-devel:http://down.24kplus.com/linux/oniguruma/oniguruma-devel-6.7.0-1.el7.x86_64.rpm

CentOS 8 安装

yum config-manager --set-enabled PowerTools
yum -y install oniguruma oniguruma-devel

uni-app优缺点

uni-app 是由DCloud公司开发,是一个使用 Vue.js 开发所有前端应用的框架,一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。目前拥有380万开发者,旗下uni-app有5万+案例、900款插件、并且被阿里小程序工具内置,所以选择用uni-app还算是比较放心的。

优点一:

uni-app是一套可以适用多端的开源框架,一套代码可以同时生成ios,Android,H5,微信小程序,支付宝小程序,百度小程序等。

优点二:

uni-app对前端开发人员比较友好,学习成本比较低,首先uni-app是基于vue.js的。其次封装的组件和微信小程序的组件一毛一样,所以对于现在的主流前端人员来说学习几乎0成本,如果你作为一个前端,没有接触过vue和微信小程序的话那建议你多去加加油了。

优点三:

uni-app使用HBX进行开发,HBX对于vue语法等支持可以说是比较完备了。使用HBX进行开发可以说是速度杠杠的。开发速度比较快,ps:虽然我是一个vscode党,但是也还是不得不说HBX做的也很不错了。个人挺喜欢的。

优点四:

uni-app拓展能力强,封装了H5+,支持nvue,也支持原生Android,ios开发。可以将原有的移动应用和H5应用改成uni-app应用。

优点五:

uni-app是DCloud出品的,属于国产,对于国产我们当然要支持一下啦!

缺点一:

uni-app问世的时间还比较短,有很多地方还不是完善,坑很多,如果不喜欢爬坑的朋友那就少用uni-app吧。

缺点二:

对于使用中的一些bug及问题,官方回应的不是很及时。不过可以加一下qq群或者去社区和其他uni-app开发者一起讨论。

红帽RHEL8和7有什么区别(Centos8与7参照redhat)

红帽RHEL8与RHEL7的区别

1. 红帽RHEL8和RHEL7功能区别对比

1.1 默认的文件系统

RHEL8与RHEL7都是采用XFS

1.2 RHEL8与RHEL7的内核版本分别是多少

关于内核版本,RHEL8和7的区别如下:
RHEL8采用4.18.0-x
RHEL7采用3.10-0-x

1.3 内核代码名字

关于内核代码,RHEL8和7的区别如下:

RHEL8采用2019-05-07 (Kernel Version 4.18.0-80)
RHE7采用2014-06-09 (Kernel Version 3.10.0-123)

1.4 标准/默认的仓库频道

关于仓库频道,RHEL8和7的区别如下:

RHEL8

Repo ID: rhel-8-for-x86_64-appstream-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 – AppStream (RPMs)

Repo ID: rhel-8-for-x86_64-baseos-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 – BaseOS (RPMs)

RHEL7

Repo ID: rhel-7-server-rpms
Repo Name: Red Hat Enterprise Linux 7 Server (RPMs)

1.5 网络时间同步

关于网络时间同步,RHEL8和7的区别如下:

RHEL8
只使用Chronyd,不支持NTP部署。

RHEL7
Chronyd与NTP两者都支持

 

1.6 支持最大的文件

关于支持最大的文件,RHEL8和7的区别如下:

RHEL8
XFS文件系统支持的最大文件大小已从500 TiB增加到1024 TiB。
(此最大文件大小仅适用于64位机器。Red Hat Enterprise Linux不支持32位机器上的XFS.)

RHEL7
最大. (单独) 文件大小= 500TiB
最大. 文件系统大小 = 500TiB

1.7 软件包管理

关于软件包管理,RHEL8和7的区别如下:

红帽8
包管理由DNF (YUMv4)完成。

yum4基于DNF技术,yum4命令提供了与早期版本中使用的Yum v3的向后兼容性。yum命令只是到dnf的一个符号链接。

红帽7
yum基于3.0.x版本

1.8 最大支持的内存

关于最大支持的内存,RHEL8和7的区别如下:

红帽8
24TB,64位架构

红帽7:
只支持12TB

1.9 默认的网络数据包过滤

关于默认的网络数据包过滤,RHEL8和7的区别如下:

RHEL8使用nftables取代了iptables框架

nftables是默认的网络包过滤,它取代了以前的iptables框架。firewalld守护进程现在使用nftables作为默认后端。

这将取代以前使用的“iptables”、“ip6tables”、“arptables”和“ebtables”工具。“nftables”确实为IPv4和IPv6协议提供了一个单一的框架。

而RHEL7 firewalld守护进程使用iptables作为其默认后端。

1.10 默认的数据库

关于默认的数据库,RHEL8和7的区别如下:

RHEL8默认支持的数据库:

  • MySQL 8.0
  • MariaDB 10.3
  • PostgreSQL 10 and PostgreSQL 9.6
  • Redis 5.0

MariaDB是Red Hat Enterprise Linux 7中MySQL的默认实现

1.11 支持的硬件架构

关于支持的硬件架构,RHEL8和7的区别如下:

RHEL8支持以下硬件架构

  • AMD and Intel 64-bit architectures
  • The 64-bit ARM architecture
  • IBM Power Systems, Little Endian
  • IBM Z

RHEL7支持以下硬件架构:

  • 64-bit AMD
  • 64-bit Intel
  • IBM POWER7
  • IBM System z

1.12 可供安装的ISO镜像类型

关于可供安装的ISO镜像类型,RHEL8和7的区别如下:

RHEL 8可以使用以下类型的ISO镜像安装:

  • Binary(二进制) DVD ISO
  • Boot ISO

在RHEL7中,可以使用以下可用的ISO镜像进行安装:

  • Boot ISO
  • Binary(二进制) DVD ISO
  • Supplementary(追加的) Binary DVD

1.13 默认情况下的Cockpit web控制台的安装状态

关于默认情况下的Cockpit web控制台的安装状态,RHEL8和7的区别如下:

在RHEL8中,Cockpit是默认安装和可用的。这将在非最小模式下自动安装,并在防火墙中启用所需端口。
Cockpit提供了一个增强的框架,可以用来访问/编辑/更改许多系统设置。这提供了通过web接口的访问,可以使用浏览器访问url地址http://:9090进行管理。

在RHEL7系统中,Cockpit默认情况下没有安装,需要通过启用extraoptional存储库通道来安装。

1.14 默认虚拟机管理

关于默认虚拟机管理,RHEL8和7的区别如下:

在RHEL8系统中,默认情况下,它由Cockpit管理。如果需要,还可以安装virt-manager。

而在RHEL7系统中virt-manager将用于基于KVM的虚拟系统管理。

1.15 RMP版本的改进

关于RMP版本的改进,RHEL8和7的区别如下:

Red Hat Enterprise Linux 8是用RPM 4.14发布的。现在,RPM在开始安装之前验证整个包的内容。

这有很多改进,其中一些值得注意的功能是:

  • debuginfo包可以并行安装
  • 支持弱依赖关系
  • 支持丰富的或布尔依赖
  • 支持封装文件超过4 GB的大小
  • 支持文件触发器

构建在RHEL8上的包在压缩负载上使用一个新的SHA-256散列。

而Red Hat Enterprise Linux 7是用RPM 4.11发布的。在RHEL7上,RPM实用程序在解压时验证单个文件的有效负载内容。

1.16 CUPS日志

关于CUPS日志,RHEL8和7的区别如下:

RHEL8所有类型的CUPS日志都与来自其他程序的日志一起集中记录在systemd journald守护进程中。要访问CUPS日志,请使用“journalctl -u CUPS”命令。
而RHEL7系统上,CUPS日志被存储中 /var/log/cups directory.

nobody用户替换nfsnobody
rhel8系统上,nobodynfsnobody用户和组合并到nobodyID(65534)中。

在Red Hat Enterprise Linux 7中,有:

  • ID为99的nobody用户和组
  • nfsnobody用户和组对的ID为65534,这也是默认的内核溢出ID。

1.17 默认版本的控制系统

关于默认版本的控制系统,RHEL8和7的区别如下:

RHEL 8提供以下版本控制系统:

  • Git 2.18
  • Mercurial 4.8
  • Subversion 1.10

并发版本系统(CVS)和版本控制系统(RCS)在RHEL8中都不可用。

而Red Hat Enterprise Linux 7与三个最流行的开源修订控制系统一起发布:Git、SVN和CVS。

1.18 编程语言版本

关于编程语言版本,RHEL8和7的区别如下:

RHEL8新版本编程语言

  • Python 3
  • PHP 7.2
  • Ruby 2.5
  • Node.js 10

而RHEL7支持以下编辑语言

  • Python 2 ( 2.7.X)
  • PHP 5.4
  • Ruby 2.0.0

1.19 关于容器技术的支持

关于容器技术的支持,RHEL8和7的区别如下:

Docker不包括在RHEL 8.0中。使用容器时,需要使用podman、buildah、skopeo和runc工具。
podman工具已经作为一个完全支持的特性发布了。
Docker和Docker Registry是Red Hat Enterprise Linux 7中的Extras订阅频道的一部分。

1.20 开发工具支持

关于开发工具支持,RHEL8和7的区别如下:

RHEL 8提供OpenJDK 11、OpenJDK 8、IcedTea-Web和各种Java工具,如Ant、Maven或Scala。
在RHEL7中,OpenJDK8用作默认的Java开发工具包(JDK),而Java 8用作默认的Java版本。

1.21 NFS配置对比

关于NFS配置对比,RHEL8和7的区别如下:

RHEL8的NFS配置文件是/etc/ NFS .conf
当从RHEL7升级时,Red Hat Enterprise Linux 8尝试自动将所有选项从/etc/sysconfig/nfs转换为/etc/nfs。并不再支持NFS / UDP。

而RHEL7中,默认的NFS配置文件是/etc/sysconfig/ NFS

1.22 默认的显示服务器

关于默认的显示服务器,RHEL8和7的区别如下:

在RHEL 8中,Gnome display Manager使用的默认显示服务器是Wayland
X.org服务器是RHEL 7中的默认显示服务器

2. RHEL8额外新功能新特性

2.1 elevator内核命令行参数被废弃

早期的RHEL版本中使用了elevator内核命令行参数来设置所有设备的磁盘调度程序。在RHEL 8中,该参数被弃用。
上游Linux内核已经取消了对elevator参数的支持,但是出于兼容性的原因,RHEL 8中仍然可以使用它。

2.2 网络脚本被废弃

在RHEL 8中,网络脚本在默认情况下不可用。有一个新版本的ifupifdown正在使用,这将需要NetworkManager守护进程运行,并在后端使用nmcli

如果需要早期的网络脚本,则必须安装“network-scripts”包。

2.3 新内核支持5级paging

在早期版本中,有4级分页实现,可以处理48/46位虚拟/物理地址,并且物理总线上限为64TB。在即将推出的Intel处理器中,这些限制已经扩展到57/52位的虚拟/物理内存寻址,具有128 PiB的虚拟地址空间和4 PB的物理内存容量。

2.4 Anaconda支持RHEL 8中的系统目标

以前,Anaconda没有向订阅管理器提供系统用途信息。在Red Hat Enterprise Linux 8.0中,您可以在安装期间使用Anaconda的system purpose窗口或Kickstart的syspurpose命令设置系统的预期目标。

2.5 CodeReady Linux构建器仓库

有一个CodeReady Linux构建器存储库,可用于所有RHEL订阅。这为开发人员提供了额外的包。CodeReady Linux构建器存储库中包含的包不支持生产使用。

2.6 改进版本的OpenSSH

OpenSSH的版本是7.8p1,与早期版本相比有很多改进。其中一些是:

  • 不再支持SSH version 1.
  • 默认不开启DNS支持.
  • 最小可接受RSA密钥大小设置为1024位.
  • 移除 ‘Blowfish’, ‘CAST’, ‘RC4’ ciphers.
  • 默认关闭DSA 公钥算法.

2.7 RHEL8中不支持数字用户名和组名

useraddgroupadd命令不允许用户名和组名完全由数字字符组成。这是RHEL7中不支持的特性,现在RHEL8完全不支持它。

2.8 默认情况下,securetty现在是禁用的

默认情况下禁用了securetty PAM模块,并且从RHEL8中删除了/etc/securetty文件。

2.9 改进的TCP网络栈

RHEL 8拥有TCP网络栈版本4.18,可以提供更高的性能、更好的可伸缩性和更稳定的性能。性能得到了提高,特别是在繁忙的TCP服务器与高进入连接速率。

除了新的TCP栈之外,还有两种新的TCP拥塞算法。在大多数情况下,BBR和NV可以提供比cubic更低的延迟和更好的吞吐量。

2.10 高可用性(HA)

在Red Hat Enterprise Linux 8中,pcs完全支持Corosync 3集群引擎和用于集群通信的Kronosnet (knet)网络抽象层。无法将集群节点从RHEL7就地升级到RHEL8。

2.11 lvmlockd取代了clvmd

用于管理共享存储逻辑卷的clvmd已被删除,取而代之的是lvmlockd(lvm lock 守护进程)

镜像下载地址

CentOS 8 下载:https://centos.org/download/

国内镜像下载:https://mirrors.tuna.tsinghua.edu.cn/centos/