出现firewall-cmd: error: unrecognized arguments: --port=1020/tcp --description=Nis-1020报错
时间: 2024-09-16 19:04:38 浏览: 48
grpc-firewall-bypass:启动与位于防火墙后的gRPC服务器的连接(https
如果当你尝试使用 `firewall-cmd --permanent --add-service=skills-nis --port=1020/tcp --description=Nis-1020` 这样的命令时遇到 `error: unrecognized arguments` 报错,这通常意味着你在使用firewalld时遇到了一些语法错误或者是过时的版本问题。以下是几种可能的情况及解决方案:
1. **语法错误**:检查一下是否漏掉了 `--permanent` 或者 `-c`(表示永久性的改变)选项。对于添加服务和端口描述,正确的命令可能是:
```bash
sudo firewall-cmd --permanent --add-service=skills-nis --permanent --port=1020/tcp --description=Nis-1020
```
或者
```bash
sudo firewall-cmd -c --add-service=skills-nis --add-port=1020/tcp --service-description=Nis-1020
```
2. **版本兼容性**:检查firewalld的版本,因为有些功能可能在旧版本中不可用。确保你运行的是较新版本,可以通过 `firewall-cmd --version` 查看。某些特性可能需要在更新到最新版后才能正常工作。
3. **权限问题**:确保你以管理员 (`sudo`) 权限运行 `firewall-cmd`,因为更改防火墙策略通常是系统级的操作。
4. **服务名错误**:确认 `skills-nis` 是否是一个已知的服务名字。如果不是内置服务,需要先通过 `systemctl enable skills-nis` 或手动创建一个服务文件。
如果以上都不是问题,你可以尝试重启firewalld服务看看是否能解决问题:
```bash
sudo systemctl restart firewalld
```
阅读全文