说明:本资料来源于平时工作收集及整理于网络资料
- Ubuntu安装源命令: apt-get
-
yum常用命令
- 列出所有可更新的软件清单命令:yum check-update
- 更新所有软件命令:yum update
- 仅安装指定的软件命令:yum install
- 仅安装指定的软件命令:yum install
- 仅更新指定的软件命令:yum update
- 仅更新指定的软件命令:yum update
- 列出所有可安裝的软件清单命令:yum list
- 删除软件包命令:yum remove
- 删除软件包命令:yum remove
- 查找软件包命令:yum search
- 查找软件包命令:yum search
列出所有可更新的软件清单命令:sudo apt update
- 升级软件包:sudo apt upgrade列出可更新的软件包及版本信息:apt list —upgradeable升级软件包,升级前先删除需要更新软件包:sudo apt full-upgrade
- 安装指定的软件命令:sudo apt install
安装多个软件包:sudo apt install - 更新指定的软件命令:sudo apt update
- 显示软件包具体信息,例如:版本号,安装大小,依赖关系等等:sudo apt show
- 删除软件包命令:sudo apt remove
- 清理不再使用的依赖和库文件: sudo apt autoremove
- 移除软件包及配置文件: sudo apt purge
- 查找软件包命令: sudo apt search
- 列出所有已安装的包:apt list —installed
- 列出所有已安装的包的版本信息:apt list —all-versions
- 删除apt缓存 sudo apt-get autoclean
Vmware和主机交互
Ubuntu
sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools
sudo apt-get install open-vm-tools-desktop
CentOS
sudo yum autoremove open-vm-tools
sudo yum install open-vm-tools
sudo yum install open-vm-tools-desktop
systemdctl
查systemd可管理的服务
systemctl list-units --type=service
或者
systemctl --type=service
查已加载且开机自启服务
systemctl list-units --type=service --state=active
或者
systemctl --type=service --state=active
查所有正在运行的服务
systemctl list-units --type=service --state=running
或者
systemctl --type=service --state=running
启动某服务
systemctl start sshd.service
重启某服务
systemctl restart sshd.service
关闭某服务
systemctl stop sshd.service
查看某服务状态
systemctl status sshd.service
查是否开机启动
systemctl is-enable sshd.service
查是否在启动状态
systemctl is-active sshd.service
重载某服务
reload也叫平滑重启,正在连接的用户是没有感觉的,只有当用户再次连接时,会启用新的配置。
systemctl reload sshd.service
设置某服务开机启动
systemctl enable sshd.service
设置某服务开机不启动
systemctl disable sshd.service
重载systemd服务列表
systemctl daemon-reload
目录文件
修改主机名
vi /etc/hostname
配置IP
# 存放目录
cd /etc/sysconfig/network-scripts/
# 编辑某一配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens160
配置好后,需要重启网卡服务
systemctl restart network
配置SSH
cd /etc/ssh
vim /etc/ssh/sshd_config
对配置文件进行如下修改
Port 22 # 默认使用22端口,也可以自行修改为其他端口,但登录时要打上端口号
#ListenAddress # 指定提供ssh服务的IP,这里我注释掉。
PermitRootLogin # 禁止以root远程登录
PasswordAuthentication yes # 启用口令验证方式
PermitEmptyPassword # 禁止使用空密码登录
LoginGraceTime 1m # 重复验证时间为1分钟
MaxAuthTimes 3 # 最大重试验证次数
# 保存修改好的配置,退出。
重启服务sshd
systemctl restart sshd.service
用户信息文件
cd /etc/passwd
日志文件的管理文件
众所周知,Linux中的日志文件,存放在/var/log,但是管理这个文件的文件,存放在哪里呢?
这个管理日志文件的文件,可以决定,日志文件存放的位置,可以完成日志服务器的搭建,等等功能。
当我们要对日志进行管理的时候,需要进入到一个目录这个目录就是
/etc/rsyslog.conf
DNS的管理文件
# 主配置文件:
/etc/named.conf
# 区域配置文件:
/var/named/named.empty
/etc目录
/etc/rc.local 存放开机自启动内容的文件。chkconfig -一般用来管理yum/rpm包装的服务。
/etc/fstab 开机自动挂载文件
/etc/inittab 运行级别的配置文件
/etc/profile 环境变量配置文件
/etc/bashrc 配置命令别名
/etc/motd 登陆系统后显示文件内容
/etc/issue /etc/issue.net 登陆系统前显示
/etc/locale.conf 字符集配置文件
/etc/passwd 账号信息文件
/etc/shadow 账号密码信息文件
/etc/sudoers 可以执行sudo命令的配置文件(权限提升)
/etc/rsyslog.conf 日志设置文件,限C6.X
/var目录
/var/log/messages 默认的系统日志文件,非常重要
/var/log/secure 记录系统登陆信息
/var/spool/cron/root 定时任务crontab的默认路径,按用户名命令的文件。
/var/spool/clientmqueqe sendmail临时文件目录,需定时清理clientmqueue目录垃圾文件防止占满磁盘空间。
/proc目录
/proc 虚拟目录,是内存的映射,内核和进程的虚拟文件系统目录
/proc/version 内核版本
/proc/cupinfo 关于处理器的信息,如类型,型号和性能等
/proc/meminfo 系统内存信息
/proc/interrupts 正在使用的中断。
/proc/loadavg 系统负载的信息。
/usr目录
/usr/local 自编译安装软件存放目录
/usr/src 内核源码存放目录
/dev目录
/dev/sda磁盘
/dev/urandom (生成输出随机内容文件)
/dev/urandom 生成随机内容 tr + head
/dev/zero 不断输出信息
/dev/null (黑洞 把东西放进去就没了)
/dev/urandom 生成输出随机内容
系统相关
shutdown -h now:表示立即关机
shutdown -h 1:表示1分钟后关机
shutdown -r now:表示立即重启
logout:注销用户,在 xshell 上面有效
修改主机名
# 查看主机名称
hostname
# 设置主机名称(临时生效,重启后失效)
hostname Anolisos8.4.1
vi /etc/hostname
退出vim并保存后,重启。
查服务器时间
date
设定系统日期时间
date -s “日期、时间字符串”
date -s "2022-03-07 09:00:00"
目录相关
cd
cd 进入用户主目录
cd ~ 进入用户主目录
cd - 返回进入此目录之前所在目录
cd .. 返回上一级目录
cd ../.. 返回上两级目录
cd !$ 把上个命令的参数作为cd参数使用
cd / 进入根目录
cd . 当前目录
cd /(目录名)改变工作目录
切换目录
cd
回到家目录
cd ~
回到上一级目录
cd ...
显示当前目录
ll
![VBP09DCWDBE$${)M{5OB%I.png
mkdir
tree
文件相关
新建文件
touch test.txt
删除文件
rm test.txt
Vim相关
命令模式:
用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。
以下是常用的几个命令:
- i 切换到输入模式,以输入字符。
- x 删除当前光标所在处的字符。
- : 切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。
命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。
输入模式
在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键:
- 字符按键以及Shift组合,输入字符
- ENTER,回车键,换行
- BACK SPACE,退格键,删除光标前一个字符
- DEL,删除键,删除光标后一个字符
- 方向键,在文本中移动光标
- HOME/END,移动光标到行首/行尾
- Page Up/Page Down,上/下翻页
- Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
-
底线命令模式
在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号): q 退出程序
- w 保存文件
按ESC键可随时退出底线命令模式。
简单的说,我们可以将这三个模式想成底下的图标来表示:
图片来源于
IP相关
查看公有IP
curl http://ifconfig.io
curl ident.me
或者其他的命令
curl ipinfo.io/ip/
curl api.ipify.org
dig ANY +short @resolver2.opendns.com myip.opendns.com
查看私有IP
系统命令
在Linux中,一般情况下没有安装任何工具包的情况下可以通过ip addr或者ip a 或者ip address来查看本机的ip地址
ip addr
ip a
ip address
net-tools
ifconfig -a
hostname
hostname -I | awk '{print $1}'
ip route
ip route get 1.2.3.4 | awk '{print $7}'
nmcli
nmcli -p device show
端口相关
列出所有端口
netstat -npl
查看端口状态
netstat -nap
检查端口被占用情况
netstat -lnp|grep 88
查看进程详细信息
ps 24525
启动端口
写入修改
保存修改
重启防火墙,修改生效
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 写入修改
/etc/init.d/iptables save 保存修改
service iptables restart 重启防火墙,修改生效
vi /etc/sysconfig/iptables 打开配置文件加入如下语句:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
关闭端口
/sbin/iptables -I INPUT -p tcp --dport 80 -j DROP 写入修改
/etc/init.d/iptables save 保存修改
service iptables restart 重启防火墙,修改生效
vi /etc/sysconfig/iptables 打开配置文件加入如下语句:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j DROP
设置端口
web api预使用8001端口,需要对外开放8001端口,端口配置步骤如下:
防火墙相关命令
# 查看防火墙状态
systemctl status firewalld
# 启动防火墙
systemctl start firewalld
# 重新启动防火墙
firewall-cmd --reload
# 关闭防火墙命令:
systemctl stop firewalld
开放端口
firewall-cmd --zone=public --add-port=8001/tcp --permanent
重启防火墙
firewall-cmd --reload
- 命令含义:
– zone #作用域
– add-port=1935/tcp #添加端口,格式为:端口/通讯协议
– permanent #永久生效,没有此参数重启后失效查看端口状态
firewall-cmd --query-port=8001/tcp
yes 表示已开启 no表示未开启
配置好开放的端口后,建议重新关闭并停止防火墙服务。systemctl stop firewalld
解压命令
tar 解压
tar -zxvf Python-2.7.5.tgz
tar 压缩
tar -zcvf abcde.tar.gz abcdeFile/
zip 解压
unzip mydata.zip -d mydatabak
解压并覆盖
解压OA.SyncData.Core.zip到/root/DataSync/OA.SyncData.Core
- cd /root/DataSync/OA.SyncData.Core
- 执行 unzip -o OA.SyncData.Core.zip -d /root/DataSync
unzip -o OA.SyncData.Core.zip -d /root/DataSync
zip 压缩
zip -r mydata.zip mydata
合并压缩
zip mydata.zip mydata01 mydata02.txt
直接解压
unzip mydata.zip
查看压缩包内容
unzip -v mydata.zip
主要参数
-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P<密码>:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID远程连接
安装ssh
sudo apt-get update
sudo apt-get install openssh-server
cent OS
sudo yum update
sudo yum install openssh-server
查看IP
ip address
开启sshp
sudo service sshd start
查看sshp服务
service sshd status
修改sshd的配置
在文件后面添加:sudo vim /etc/ssh/sshd_config
如果希望能使用root用户登录,则还需要增加一行AllowUsers 用户名(多用户时,用空格分隔的用户名)
退出并保存vim,:qwPermitRootLogin yes
编译打包
编译linux-arm64
dotnet publish -r linux-arm64 -c Debug --nologo --self-contained