linux core無權限,linux – 為什么編輯core_pattern受限制?

當我試圖為故意崩潰的程序生成核心文件時,最初的核心文件生成似乎被abrt-ccpp阻礙了.所以我嘗試用vim手動編輯/ proc / sys / kernel / core_pattern:

> sudo vim /proc/sys/kernel/core_pattern

當我試圖保存文件時,vim報告了這個錯誤:

"/proc/sys/kernel/core_pattern" E667: Fsync failed

我認為這是一個權限問題,所以我嘗試更改權限:

> sudo chmod 666 /proc/sys/kernel/core_pattern

chmod: changing permissions of '/proc/sys/kernel/core_pattern\': Operation not permitted

最后,根據this post,我嘗試了這個:

>sudo bash -c 'echo /home/user/foo/core.%e.%p > /proc/sys/kernel/core_pattern'

這很有效.

基于工作解決方案,我也試過這些,但失敗了:

> echo "/home/user/foo/core.%e.%p" > /proc/sys/kernel/core_pattern

-bash: /proc/sys/kernel/core_pattern: Permission denied

>

> sudo echo "/home/user/foo/core.%e.%p" > /proc/sys/kernel/core_pattern

-bash: /proc/sys/kernel/core_pattern: Permission denied

題:

為什么編輯,修改和重定向到文件/ proc / sys / kernel / core_pattern的echo輸出都失敗了,只有注意到的sudo bash的調用才能覆蓋/編輯文件?

題:

具體來說,嘗試在上面的失敗嘗試中調用sudo:為什么它們會失敗?我認為sudo使用root權限執行了后續命令,我認為這可以讓你在Linux中做任何事情.

解決方法:

procfs中的條目由特殊代碼管理.在/ proc / sys(proc_sys_setattr)下設置文件權限和所有權的代碼拒絕使用EPERM更改權限和所有權.因此無法更改這些文件的權限或所有權,完全停止.這些更改未實現,因此root無效.

當您嘗試以非root用戶身份進行編寫時,會收到權限錯誤.即使使用sudo echo“/home/user/foo/core.%e.%p”> / proc / sys / kernel / core_pattern,您嘗試以非root用戶身份編寫:sudo以root身份運行echo,但重定向發生在執行sudo的shell中,并且該shell沒有提升權限.使用sudo bash -c’…> …’,重定向在由sudo啟動并以root身份運行的bash實例中執行,因此寫入成功.

必須允許root設置kernel.core_pattern sysctl的原因是它允許指定命令,并且由于這是一個全局設置,因此任何用戶都可以執行此命令.事實上,所有sysctl設置的情況都是不同程度的:它們都是全局設置,因此只有root才能更改它們. kernel.core_pattern只是一個特別危險的案例.

標簽:linux,permissions,sudo,sysctl,proc

來源: https://codeday.me/bug/20190810/1639812.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392171.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392171.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392171.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

nsa構架_我如何使用NSA的Ghidra解決了一個簡單的CrackMe挑戰

nsa構架by Denis Nu?iu丹尼斯努尤(Denis Nu?iu) 我如何使用NSA的Ghidra解決了一個簡單的CrackMe挑戰 (How I solved a simple CrackMe challenge with the NSA’s Ghidra) Hello!你好! I’ve been playing recently a bit with Ghidra, which is a reverse engi…

分布與并行計算—生產者消費者模型隊列(Java)

在生產者-消費者模型中&#xff0c;在原有代碼基礎上&#xff0c;把隊列獨立為1個類實現&#xff0c;通過公布接口&#xff0c;由生產者和消費者調用。 public class Consumer implements Runnable {int n;CountDownLatch countDownLatch;public Consumer(BlockingQueue<In…

python 日志內容提取

問題&#xff1a;如下&#xff0c;一個很大的日志文件&#xff0c;提取 start: 到 end: 標志中間的內容 日志文件a.log xxxxx yyyyy start: start: hahahaha end: start: hahahahha end: ccccccc kkkkkkk cdcdcdcd start: hahahaha end: code import reisfindFalse with open(&…

同一服務器部署多個tomcat時的端口號修改詳情

2019獨角獸企業重金招聘Python工程師標準>>> 同一服務器部署多個tomcat時&#xff0c;存在端口號沖突的問題&#xff0c;所以需要修改tomcat配置文件server.xml&#xff0c;以tomcat7為例。 首先了解下tomcat的幾個主要端口&#xff1a;<Connector port"808…

linux優盤驅動目錄,Linux U盤加載陣列卡驅動步驟(.dd或img).doc

Linux U盤加載陣列卡驅動步驟(.dd或img)如果沒有Linux的機器,可以使用安裝光盤的Linux環境&#xff1a;將?U?盤完全慢速格式化&#xff0c;將驅動拷貝到U盤&#xff0c;將U盤插在服務器上&#xff0c;用Linux安裝光盤第一張啟動到圖形安裝界面&#xff0c;按Ctrl&#xff0b;…

第一章-從雙向鏈表學習設計

鏈表學習鏈表是一種動態的數據結構使用節點作為鏈表的基本單位存儲在節點包括數據元素和節點指針一個完整的數據鏈表應包括轉載于:https://www.cnblogs.com/cjxltd/p/7125747.html

twitter 數據集處理_Twitter數據清理和數據科學預處理

twitter 數據集處理In the past decade, new forms of communication, such as microblogging and text messaging have emerged and become ubiquitous. While there is no limit to the range of information conveyed by tweets and texts, often these short messages are …

ios 動態化視圖_如何在iOS應用中使高度收集視圖動態化

ios 動態化視圖by Payal Gupta通過Payal Gupta 如何在iOS應用中使集合視圖的高度動態化 (How to make height of collection views dynamic in your iOS apps) 充滿活力&#xff0c;就像生活一樣… (Be dynamic, just like life…) Table views and collection views have alw…

新開通博客

新開通博客&#xff0c;希望兄弟們積極更新。 轉載于:https://www.cnblogs.com/ydhliphonedev/archive/2011/07/28/2119720.html

思維導圖分析http之http協議版本

1.結構總覽 在http協議這一章&#xff0c;我將先后介紹上圖六個部分&#xff0c;本文先介紹http的協議版本。 2.http協議版本 http協議的歷史并不長&#xff0c;從1991的0.9版本到現在(2017)僅僅才20多年&#xff0c;算算下來,http還是正處青年&#xff0c;正是大好發展的好時光…

分布與并行計算—生產者消費者模型RabbitMQ(Java)

連接工具 public class ConnectionUtil {public static final String QUEUE_NAME"firstQueue";private static final String RABBIT_HOST "11";private static final String RABBIT_USERNAME "";private static final String RABBIT_PASSWORD…

飛騰 linux 內核,FT2004-Xenomai

移植Xenomai到基于飛騰FT2004 CPU的FT Linux系統1 目前飛騰FT2000/4相關設備驅動還沒有開源&#xff0c;需要先聯系飛騰軟件生態部獲取FT Linux源代碼2 如需在x86交叉編譯arm64內核&#xff0c;推薦使用Linaro gcc編譯器&#xff0c;鏈接如下&#xff1a;https://releases.lina…

使用管道符組合使用命令_如何使用管道的魔力

使用管道符組合使用命令Surely you have heard of pipelines or ETL (Extract Transform Load), or seen some method in a library, or even heard of any tool to create pipelines. However, you aren’t using it yet. So, let me introduce you to the fantastic world of…

關于網頁授權的兩種scope的區別說明

關于網頁授權的兩種scope的區別說明 1、以snsapi_base為scope發起的網頁授權&#xff0c;是用來獲取進入頁面的用戶的openid的&#xff0c;并且是靜默授權并自動跳轉到回調頁的。用戶感知的就是直接進入了回調頁&#xff08;往往是業務頁面&#xff09; 2、以snsapi_userinfo為…

安卓流行布局開源庫_如何使用流行度在開源庫之間進行選擇

安卓流行布局開源庫by Ashish Singal通過Ashish Singal 如何使用流行度在開源庫之間進行選擇 (How to choose between open source libraries using popularity) Through my career as a product manager, I’ve worked closely with engineers to build many technology prod…

TCP/IP分析(一) 協議概述

各協議層分工明確 轉載于:https://www.cnblogs.com/HonkerYblogs/p/11247604.html

window 下分linux分區,如何在windows9x下訪問linux分區

1. 簡 介Linux 內 核 支 持 眾 多 的 文 件 系 統 類 型, 目 前 它 可 以 讀 寫( 至 少 是 讀) 大 部 分 的 文 件 系 統.Linux 經 常 與Microsoft Windows 共 存 于 一 個 系 統 或 者 硬 盤 中.Linux 對windows9x/NT 的 文 件 系 統 支 持 的 很 好, 反 之 你 想 在windows 下…

C# new關鍵字和對象類型轉換(雙括號、is操作符、as操作符)

一、new關鍵字 CLR要求所有的對象都通過new來創建,代碼如下: Object objnew Object(); 以下是new操作符做的事情 1、計算類型及其所有基類型(一直到System.Object,雖然它沒有定義自己的實例字段)中定義的所有實例字段需要的字節數.堆上每個對象都需要一些額外的成員,包括“類型…

JDBC01 利用JDBC連接數據庫【不使用數據庫連接池】

目錄&#xff1a; 1 什么是JDBC 2 JDBC主要接口 3 JDBC編程步驟【學渣版本】 5 JDBC編程步驟【學神版本】 6 JDBC編程步驟【學霸版本】 1 什么是JDBC JDBC是JAVA提供的一套標準連接數據庫的接口&#xff0c;規定了連接數據庫的步驟和功能&#xff1b;不同的數據庫提供商提供了一…

leetcode 778. 水位上升的泳池中游泳(并查集)

在一個 N x N 的坐標方格 grid 中&#xff0c;每一個方格的值 grid[i][j] 表示在位置 (i,j) 的平臺高度。 現在開始下雨了。當時間為 t 時&#xff0c;此時雨水導致水池中任意位置的水位為 t 。你可以從一個平臺游向四周相鄰的任意一個平臺&#xff0c;但是前提是此時水位必須…