最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java在linux系統(tǒng)下開機啟動無法使用sudo命令的原因及解決辦法

 更新時間:2013年08月29日 08:48:16   作者:  
每次開機自動啟動的java進程,頁面上的關機按鈕都無法實現(xiàn)關機功能,但是此時如果以chb賬號通過ssh登錄該服務器,手動殺掉tomcat進程,然后再重新啟動tomcat,頁面上的關機按鈕就有效了

操作系統(tǒng):centos 5.2
場景描述:
我們有一個WEB工程,客戶要求使用普通用戶(例如chb)運行,然后在頁面上有個按鈕,點擊之后可以關機

實現(xiàn)方式:
1. JAVA代碼:

復制代碼 代碼如下:

        public static boolean shutDownForLinux() {
                try {
                        Runtime.getRuntime().exec("sudo /sbin/poweroff");
                } catch (IOException e) {
                        return false;
                }
                return true;
        }

2. 修改/etc/sudoers,在末尾增加如下信息:
chb ALL=NOPASSWD:/sbin/reboot,/sbin/poweroff

3.設置開機自動啟動tomcat,修改/etc/rc.d/rc.local,在末尾增加如下:
su chb -c "/opt/tomcat/bin/startup.sh"

問題描述:
每次開機自動啟動的java進程,頁面上的關機按鈕都無法實現(xiàn)關機功能,但是此時如果以chb賬號通過ssh登錄該服務器,手動殺掉tomcat進程,然后再重新啟動tomcat,頁面上的關機按鈕就有效了。各位知道這是為什么嗎?是否和sudo加載順序有關?或者和chb用戶shell環(huán)境有關?

問題分析:
通過分析開機啟動的JAVA進程和手動啟動的JAVA進程,發(fā)現(xiàn)tty是不同的,接著再去google sudo和tty的關系,發(fā)現(xiàn)sudo默認是需要tty的,系統(tǒng)開機啟動,沒有tty,而我們通過ssh客戶端登錄服務器,殺掉tomcat,再重新啟動tomcat,這時候可以獲得tty為pts,因此可以使用sudo命令

解決方法:
通過修改/etc/sudoers文件,將
     Defaults requiretty
注釋掉即可

相關文章

  • java根據負載自動抓取jstack?dump詳情

    java根據負載自動抓取jstack?dump詳情

    這篇文章主要介紹了java根據負載自動抓取jstack?dump詳情,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Java9新特性Stream流API優(yōu)化與增強

    Java9新特性Stream流API優(yōu)化與增強

    這篇文章主要為大家介紹了Java9新特性Stream流API優(yōu)化與增強的用法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進步,早日升職加薪
    2022-03-03
  • RabbitMQ中的Channel和Exchange詳解

    RabbitMQ中的Channel和Exchange詳解

    這篇文章主要介紹了RabbitMQ中的Channel和Exchange詳解,創(chuàng)建和銷毀TCP連接很耗時,打開太多TCP連接,耗操作系統(tǒng)資源,并發(fā)量大到一定程度,系統(tǒng)的吞吐量會降低,使用一個connection多channel的方式,可以提升連接的利用率,需要的朋友可以參考下
    2023-08-08
  • 實例講解Java處理PDF圖章的方法

    實例講解Java處理PDF圖章的方法

    在本篇文章里小編給大家分享了關于Java處理PDF圖章的方法,對此有需要的朋友們可以學習下。
    2019-02-02
  • java高并發(fā)的并發(fā)級別詳解

    java高并發(fā)的并發(fā)級別詳解

    這篇文章主要介紹了java高并發(fā)的并發(fā)級別,內容十分豐富,在這里分享給大家,需要的朋友可以參考,希望能夠給你帶來幫助
    2021-10-10
  • 一文詳解Java中的類加載機制

    一文詳解Java中的類加載機制

    Java虛擬機把描述類的數(shù)據從Class文件加載到內存,并對數(shù)據進行校驗、轉換解析和初始化,最終形成可以被虛擬機直接使用的Java類型,這個過程被稱作虛擬機的類加載機制。本文將詳解Java的類加載機制,需要的可以參考一下
    2022-05-05
  • Java基礎精講方法的使用

    Java基礎精講方法的使用

    方法,也稱函數(shù),如果想要重復一段或者多段代碼塊的使用,可以將這些代碼封裝成一個方法,方法具體表現(xiàn)為某種行為,使用方法可以提高代碼的復用性
    2022-05-05
  • Mybatis-plus如何更新Null字段詳解

    Mybatis-plus如何更新Null字段詳解

    MyBatis-plus在進行更新操作時不會更新傳入實體中為null或默認值屬性字段,只更新不為null的值、非默認值的屬性字段,這篇文章主要給大家介紹了關于Mybatis-plus如何更新Null字段的相關資料,需要的朋友可以參考下
    2023-07-07
  • IDEA 搭建maven 安裝、下載、配置的圖文教程詳解

    IDEA 搭建maven 安裝、下載、配置的圖文教程詳解

    這篇文章主要介紹了IDEA 搭建maven 安裝、下載、配置,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • jquery uploadify和apache Fileupload實現(xiàn)異步上傳文件示例

    jquery uploadify和apache Fileupload實現(xiàn)異步上傳文件示例

    這篇文章主要介紹了jquery uploadify和apache Fileupload實現(xiàn)異步上傳文件示例,需要的朋友可以參考下
    2014-05-05

最新評論

邵东县| 楚雄市| 栾城县| 泾源县| 咸阳市| 灌南县| 磴口县| 轮台县| 雷山县| 天柱县| 祥云县| 托克托县| 扶风县| 新巴尔虎左旗| 涿州市| 黑山县| 乌苏市| 资溪县| 福贡县| 金川县| 北票市| 东莞市| 喀喇沁旗| 东乌珠穆沁旗| 当雄县| 扶沟县| 濉溪县| 黄龙县| 邹平县| 如皋市| 宁都县| 泰州市| 邹城市| 治县。| 博兴县| 阜平县| 涟水县| 那曲县| 新竹县| 鄂托克前旗| 阳东县|