linux sudo環境變數設置

来源:http://www.cnblogs.com/chinazhonghao/archive/2016/05/27/5534149.html
-Advertisement-
Play Games

這是第一次在博客園中寫自己的隨筆,也是第一次使用Markdown的編輯環境,值得紀念一下!希望在以後學習linux的道路上能多多記錄自己的學習心得和遇到問題的解決方法,朝著運維的方向邁出堅實的腳步。 問題描述 最近在編譯一個開源軟體時,在好不容易配置好各種編譯環境之後,由於各種許可權問題還是無法正常進 ...


這是第一次在博客園中寫自己的隨筆,也是第一次使用Markdown的編輯環境,值得紀念一下!希望在以後學習linux的道路上能多多記錄自己的學習心得和遇到問題的解決方法,朝著運維的方向邁出堅實的腳步。

問題描述

最近在編譯一個開源軟體時,在好不容易配置好各種編譯環境之後,由於各種許可權問題還是無法正常進行編譯,所以索性切換到root用戶下進行編譯,這時自然不存在所謂的無許可權問題了。但是有時候並不想在root用戶和普通用戶來回切換,說白了就是懶得輸入root用戶的密碼,太長了。於是就想到了sudo命令,但是關鍵問題就出來了,切換到root用戶下能正常編譯,使用sudo命令竟然無法編譯,提示錯誤為相關的編譯器沒有找到,這種問題對於我這種linux的小白來說有點困難,畢竟使用root用戶是可以編譯通過的。好了以下詳細記錄自己解決問題的辦法吧。

環境變數配置

  1. 對於全局環境變數配置使用/etc/bash.bashrc/etc/profile兩個文件,這兩個文件中存放了全局的環境變數。也就是說是所用用戶共用的環境變數。當然讓我困惑的也正是這一點。
  2. 對於局部環境變數,也就是針對每個用戶的環境變數,在每個用戶家目錄下麵都有兩個隱藏文件分別是.bashrc.profile,這兩個文件中記錄了,該用戶專屬的環境變數,當然如果在全局環境變數和局部環境變數中都定義了同一個環境變數的情況下,就會出現環境變數路徑重覆的情況,不過好像也沒有什麼大的問題。
  3. 在執行sudo命令的時候,我以為由於環境變數是配置的全局環境中的,所以應該不用管環境變數的問題。帶著這個問題去百度了一下找到了有關問題的解釋su和sudo的區別,但是關於這篇文章中說的sudo使用的是root的環境變數,我在root的家目錄下的.profile文件中添加了需要的路徑,但是並沒有解決問題,關於這點還帶進一步學習啊。其實對於linux的相關文檔讀的太少了,有待加強。原來sudo使用的是自己的環境變數,於是繼續找答案,在sudo環境變數傳遞中找到了一點思路。但是使用該方法也沒有解決問題,可能是自己人品太差了。最後只能使用殺手鐧了,在secure_path中添加了需要的路徑,這次終於編譯通過了。

結論

  1. linux主要作為一個伺服器使用,為了保證系統的安全性和給予用戶足夠的許可權執行相關操作,採取的sudo命令使用自己的環境變數也是很有道理的。還是以前對於sudo命令理解的太淺了,經過這回問題的解決,也算是學習了好多,加深了對於sudo命令使用的認識。
  2. 就一個看似很小的環境變數的問題在linux中竟然能引發這多一連串的問題,看來學習linux還有很漫長的道路要走啊,希望自己能每天都進步一點,最終能實現自己linux運維和開發的目標。

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 說明:轉自,http://www.cnblogs.com/ycsfwhh/archive/2012/08/07/2626597.html 本人親測方法1有效,方法2待驗證 下載GPL版本安裝 MySQL Community Edition(GPL) Community (GPL) Downloads ...
  • oracle要直接對文件進行讀寫必須先創建一個DIRECTORY。 語法如下: 可以通過如下SQL查看已經創建的DIRECTORY 創建後如果要對該路徑下文件進行讀寫,必須授權。 代碼如下: 查詢DIRECTORY的讀寫許可權,SQL如下: 刪除DIRECTORY。 代碼如下 ...
  • 我們使用DDL的"CREATE USER"語句創建用戶,新的SQL用戶不允許訪問屬於其他SQL用戶的表,也不能立即創建自己的表,它必須被授權。可以授予的許可權包括以下幾組: 1.列許可權:和表中的一個具體列相關 2.表許可權:和一個具體數據表中所有數據相關 3.資料庫許可權:和一個具體資料庫中所有數據表相關 ...
  • 第一種隔離模型: Guest1和Guest2都為虛擬機。 首先要瞭解在linux中的虛擬機的網卡都包含前半段和後半段,前半段在虛擬機上,後半段在宿主機上,這裡以centos6為例,上圖 eth0為Guest1虛擬機上的網卡,對應的後半段為vnet0,在Guest1上所有發往eth0的數據就直接發往v ...
  • 1. 登錄併進入你常用的用戶名下,查看其主目錄 命令: # su xxx $ cd xxx $ ls -a 2.查看並建立目錄和文件 首先看你的主目錄~/ 下是否有.vimrc文件,沒有就輸入指令 $ touch .vimrc 新建該文件 在主目錄下新建目錄 .vim,併進入.vim目錄,建立plu ...
  • 虛擬機備份轉移後,網路啟動異常,提示“SIOCSIFADDR: No such device” he problem lies in the fact that ethernet MAC addresses are cached. You need to remove a file to clear ...
  • .gz 由gzip壓縮工具壓縮的文件 .bz2 由bzip2壓縮工具壓縮的文件 .tar 由tar打包程式打包的文件 .tar.gz 先由tar打包,gzip壓縮 .tar.bz2 先由tar打包,bzip2壓縮 1:gzip 壓縮文件 此命令不能壓縮目錄 gzip +文件 在當前位置壓縮該文件 g ...
  • 手動安裝交叉編譯工具鏈: 第一步:準備事先下載好的安裝包 :arm-2009q3.tar.br2(下載地址:https://yunpan.cn/OcSEWQvsjFgntk 訪問密碼 311e)將安裝包放到虛擬機的共用文件夾下 在linux中,用戶自己裝程式一般裝在/usr/local 下 /bin ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...