默认情况下Linux的1024以下端口是只有root用户才有权限占用,我们的tomcat,apache,nginx等等程序如果想要用普通用户来占用80端口的话就会抛出java.net.BindException: Permission denied:80的异常。
解决办法有两种:
1.使用非80端口启动程序,然后再用iptables做一个端口转发。
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
用root用户直接去执行就可以了!
2.假设我们需要启动的程序是nginx,那么这么做也可以达到目的。
一开始我们查看nginx的权限描述:
-rwxr-xr-x 1 nginx dev 2408122 Sep 5 16:01 nginx
这个时候必然是无法正常启动的。
首先修改文件所属用户为root:
chown root nginx
然后再加上s权限:
chmod u+s nginx
再次查看权限描述的时候:
-rwsr-xr-x 1 root root 2408122 Sep 5 16:01 nginx
这样就能启动了。
- 浏览: 354853 次
- 性别:
- 来自: 沈阳
文章分类
- 全部博客 (371)
- JAVA-多线程 (32)
- JAVA-基础 (27)
- JAVA-容器 (6)
- JAVA-IO (2)
- JAVA-NIO (7)
- 其它 (6)
- OOD (22)
- struts 2.3.16 (19)
- 表达式引擎 (2)
- 日志 (7)
- FreeMarker (0)
- json (0)
- maven (2)
- 设计 (4)
- mysql (6)
- 工作流 (0)
- MyBatis (4)
- junit (3)
- HTML5 (3)
- javascript (5)
- angularjs (6)
- 前端页面 (3)
- uml (1)
- redis (15)
- Kafka (0)
- zookeeper (4)
- ubuntu (1)
- bootstrap (0)
- H2 (1)
- spring (12)
- jquery (3)
- 异常 (3)
- android (3)
- cordova (6)
- ionic (16)
- linux (23)
- postgresql (3)
- nginx (15)
- css (11)
- tomcat (4)
- phone (1)
- zeromq (0)
- mongodb (3)
- JVM (25)
- netty (12)
- HBase (3)
- 分布式 (12)
- java-jdbc (2)
- thrift (5)
- RPC (2)
- JAVA-AOP (1)
- 消息队列 (1)
- jetty (3)
- kryo (1)
- 笔记 (7)
- gradle (2)
- Hystrix (4)
- solr (4)
- docker (1)
- 视频 (5)
最新评论
-
sanrenxing_1:
GoEasy 实时推送支持IE6-IE11及大多数主流浏览器的 ...
极光推送(JPUSH)--- 消息推送 -
QuarterLifeForJava:
如果带有中文路径的话要写为:
URLDecoder.decod ...
获取类根路径及jar包路径 -
whyxy007:
请问楼主放上去的这张图就是最后需要安装的所有的包吗?还是说需要 ...
cordova 开发环境搭建
发表评论
-
centOS7永久关闭防火墙(防火墙的基本使用)
2019-08-17 21:27 472转自:https://blog.csdn.net/sh ... -
Linux top命令的用法详细详解(转)
2018-02-23 10:45 781转自:https://www.cnblogs.com/ ... -
Linux命令详解----iostat(转)
2018-02-23 09:14 392转自:https://www.cnblogs.com/xiu ... -
Linux vmstat命令实战详解(转)
2018-02-22 17:05 437转自:https://www.cnblogs.com/gg ... -
理解load average和cpu使用率(转)
2017-07-03 15:32 1455转自:https://my.oschina.net/l ... -
进程监控及重启
2017-01-19 14:51 614#!/bin/sh while: do ... -
Linux 内存查看
2017-01-09 17:11 469转自:http://www.cnblogs.com/chen ... -
ln 软链接目录
2016-12-26 23:10 577ln -s 源目录名 -t 目标目录名 ... -
curl 使用(转)
2016-12-26 18:19 514转自:http://www.cnblogs.com/z-sm ... -
Linux下各种批量替换文件的方法(转)
2016-12-13 10:03 390转自:http://www.2 ... -
(转)什么是FTP的Passive模式和Active模式
2016-11-28 16:23 876什么是FTP的Passive模式和Active模式 ... -
安装 ftp客户端, telnet命令
2016-11-26 09:35 814redhat 安装ftp 客户端 yum insta ... -
查看端口对应的进程
2016-11-15 10:45 634cd /proc for i in *; do echo ... -
批量杀进程
2016-07-23 21:02 631ps -ef|grep tail|grep -v gr ... -
普通用户拥有ROOT权限
2015-11-19 16:19 696vi etc/passwd sam:x:200:50:Sa ... -
chage --修改帐号和密码的有效期限
2015-11-06 10:01 2429修改帐号和密码的有效期限 # ch ... -
linux Resource temporarily unavailable
2015-10-29 17:09 1190linux 系统报错: Resource temporar ... -
redhat 字符集设置
2015-07-27 16:41 951vi .bashrc export LANG=zh_CN.UT ... -
dd命令测磁盘读写速度 (转)
2015-06-16 20:59 740time有计时作用,dd用于复制,从if读出,写到of。if ... -
iostat 命令(转)
2015-06-16 20:56 703转自:http://blog.csd ...
相关推荐
在 Linux 下,默认情况下1024 以下的端口是要在 root 下才能使用的,在其他用户下,如果尝试使用将会报错。在有的时候,我们可能考虑程序运行在 root 帐户下,但这可能会给 Linux 系统带来安全风险。那如何能够让非 ...
如果项目需要在80端口运行,可能需要使用root权限或调整用户权限设置。 5. **防火墙配置**:Linux服务器的防火墙(如firewalld)必须配置为允许80端口的TCP流量。通过`systemctl status firewalld`检查防火墙状态,...
/bin/bash port=”80″ restart=”/etc/init.d/httpd restart” EMAIL=”/bin/echo selboo | mutt -s “重新启动httpd” root@selboo.com.cn” netstat -ln |awk ‘/^tcp/ {print $4}’ |grep -q “:$port$” || { #...
在Linux系统中,Apache Tomcat是一个广泛使用的Java应用服务器,用于部署和运行Web应用程序。默认情况下,Tomcat监听8080端口提供服务。然而,80端口是HTTP协议的标准端口,大多数用户习惯直接输入域名而不指定端口...
由于系统保留了低于1024的端口供root用户使用,所以非root用户在尝试绑定这些端口时会遇到权限问题。为了解决这个问题,我们可以利用set UID位来允许非root用户启动服务。 对于Apache,首先切换到root用户,然后...
"CentOS查询端口占用和清除端口占用的程序" 在 CentOS 系统中,查询端口占用和清除端口占用的程序是一种非常重要的维护操作。通过这种操作,我们可以快速地查询到占用某个端口的进程,从而清除其占用,释放系统资源...
然而,如果ROOT用户的密码丢失或遗忘,可能会导致无法正常管理系统,这时就需要使用"NC-ROOT用户重置工具"来恢复访问。 "superadmin.exe"和"superadmin.xml"是这个压缩包内的两个关键文件。"superadmin.exe"通常是...
- **(1) 使用root用户登录系统**:首先需要以root身份登录Linux系统,这是因为root拥有最高权限,能够执行系统级的操作。 - **(2) 切换到命令行界面**:通过`init 3`命令将系统切换至纯命令行模式,之后可以通过`Alt...
在Linux系统中,出于安全考虑,通常不建议使用root用户来部署Web应用。因此,第一步是创建一个新的普通用户用于部署和管理应用。 ##### 2.1 创建用户 ``` useradd -d /ucenter ucenter ``` - `useradd`:用于创建...
3. **设置权限**:为了让非root用户也能访问设备,可能需要修改设备节点的权限,例如使用`chmod`命令。 4. **配置终端工具**:选择一个终端仿真器,如`minicom`,配置波特率、数据位、停止位、校验位等参数,然后...
命令设置 root 用户权限,并开放防火墙端口号。 8. MySQL 目录结构 MySQL 的目录结构包括数据库目录 /var/lib/mysql/,配置文件目录 /usr/share/mysql/,命令目录 /usr/bin/,日志文件目录 /var/log/mysqld.log ...
使用`mysql -u root`命令以root用户身份登录MySQL。 4. **修改root用户的密码** 登录后执行以下命令更新root用户的密码: ```sql UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='root'; ...
本文将详细讲解Linux_telnet服务的开启步骤,包括安装telnet软件包、启动telnet服务、测试telnet服务、设置telnet端口、telnet服务限制、telnet root用户的登入等内容。 一、安装telnet软件包 在Linux操作系统中,...
Telnet 服务是一种远程登录服务,允许用户从远程主机登录到 Linux 服务器。下面将详细介绍如何开启 Linux 的 Telnet 服务。 一、基本概念 Linux 提供服务是由运行在后台的守护程序(daemon)来执行的。守护进程的...
- **非root用户启动WebLogic**:若WebLogic尝试使用低级别端口(如80端口)监听,而非root用户启动会遇到权限问题。解决方法是使用root用户启动WebLogic或更改监听端口号。 以上知识点覆盖了从环境搭建、软件安装、...
默认情况下,不允许root用户直接使用telnet登录Linux主机。可以使用以下方法来允许root用户登录: [root@wljs root]# vi /etc/pam.d/login #auth required pam_securetty.so 将这一行加上注释! 或者: [root@...
dev 174 8.7 使用lm-sensors监控硬件 174 8.8 spi总线 174 8.9 1-wire总线 176 8.10 调试 176 8.11 查看源代码 176 第9章 pcmcia和cf 179 9.1 pcmcia/cf是什么 179 9.2 linux-pcmcia子系统 181 9.3 主机...
在Android系统中,根权限(Root权限)是一个高级权限,允许用户访问并修改系统的底层文件和设置。这对于开发者和高级用户来说非常重要,因为可以进行深度定制、安装自定义ROM、优化性能或者执行需要系统级访问的应用...