Time of Update: 2018-12-04
Win32下可以通過DllMain來初始化和~初始化動態庫,而Linux下則沒有與之完全對應的函數,但可以通過一些方法類比它的部分功能。有人會說,很簡單,實現_init/_fini兩個函數就行了。好,我們來看看事實是不是這樣的。很多資料上都說可以利用_init/_fini來實現,而我從來沒有測試成功過,原因是這兩個函數都已經被gcc佔用了。比如:test.c#include <stdio.h>void _init(void){ printf("%s",
Time of Update: 2018-12-04
在Linux下有時候需要給一個網卡綁定多個IP,本文介紹在Redhat系列(redhat,Fedora Core,Centos)中的實現方法和一種在Gentoo等其他Linux中普遍適用的方法。 1、單網卡綁定多IP在Redhat系列中的實現方法 假設需要綁定多IP的網卡是eth0,請在/etc/sysconfig/network-scripts目錄裡面建立一個名為ifcfg-eth0:0的檔案, 內容範例為: DEVICE=”eth0:0″ IPADDR=”192.168.0.2″
Time of Update: 2018-12-04
前提:廢話不多講,無法跟蹤進入調試,講得再多也是廢話。如何進入調試?1.編譯加上 -g 選項2.執行 gdb a.out (注意:a.out一定要存在,或者是指定路徑,這樣gdb才能導入並進行詳細分析)3.查看源檔案並設置斷點(設置斷點可以設置函數斷點,比如 b myfuncname)4.執行,run arguments (需要加上a.out的參數) GDB 概述———— GDB 是 GNU 開源組織發布的一個強大的 UNIX 下的程式調試工具。或許,各位比較喜歡那種圖形介面方式的,像
Time of Update: 2018-12-04
1、子進程與父進程的關係:當子進程被建立的時候,與父進程幾乎是一樣的,它擁有與父進程一樣的地址空間,執行同樣的代碼(代碼的執行是從建立子進程的系統調用的下一條指令開始的)。但是子進程擁有獨立的資料拷貝(如堆和棧),所以他們的資料時獨立的,對資料的改變互不可見。 2、進程狀態轉移圖
Time of Update: 2018-12-04
前2天在編譯2.6.28 一個驅動模組的時候,報錯誤:unresloved symbol,後來發現是CONFIG_MODVERSIONS錯誤。 在晚上查閱資料發現: linux 核心裡面有很多export給其他模組使用的符號表;一般情況下,如果沒有選擇CONFIG_MODVERSIONS,這些符號是正常的字串;如果選擇了CONFIG_MODVERSIONS,這些符號就會在後面加一段校正字串。這樣做的目的是避免模組不正確載入情況下,使得核心崩潰。
Time of Update: 2018-12-04
linux的啟動過程,是一個Linuxer必須要熟練掌握的。通過系統的啟動過程,可以更深入的理解Linux,假如linux系統出問題的話,可以通過啟動過程來分析原因,解決問題。而且,在掌握了linux的啟動流程後,還可以藉助宿主機來打造自己的Linux。下面是我畫的一張簡單的Linux啟動流程圖 在瞭解啟動流程之前,我們應該Crowdsourced Security Testing道系統的幾個重要指令碼和設定檔,他們對應的路徑為:1. /sbin/init2. /etc/inittab3.
Time of Update: 2018-12-04
cat /var/log/*.log如果日誌在更新,如何即時查看 tail -f /var/log/messages還可以使用 watch -d -n 1 cat /var/log/messages-d表示高亮不同的地方,-n表示多少秒重新整理一次。該指令,不會直接返回命令列,而是即時列印記錄檔中新增加的內容,這一特性,對於查看日誌是非常有效。如果想終止輸出,按 Ctrl+C
Time of Update: 2018-12-04
Linux下ARM彙編教程第一部分 Linux下ARM彙編文法儘管在Linux下使用C或C++編寫程式很方便,但彙編來源程式用於系統最基本的初始化,如初始化堆棧指標、設定頁表、操作ARM的副處理器等。初始化完成後就可以跳轉到C代碼執行。需要注意的是,GNU的彙編器遵循AT&T的彙編文法,可以從GNU的網站(www.gnu.org)上下載有關規範。 一. Linux彙編行結構 任何彙編行都是如下結構: [:] [} @ comment [:] [} @ 注釋 Linux ARM
Time of Update: 2018-12-04
samba的安全層級[global] security = <level>1.share windows使用者不需要認證就能訪問共用列表2.user windows客戶機需輸入使用者才能訪問共用名稱列表,伺服器上需建立使用者帳號3.server
Time of Update: 2018-12-04
samba軟體包使用Fedora core/Redhat Linux提供的軟體包samba samba伺服器軟體包samba-client samba用戶端工具samba-common 通用工具和庫 安裝rpmdb-fedora/rpmdb-redhat軟體包(一般在第三張光碟片)但在FC5已找不到這個軟體包安裝了rpmdb可以解決依賴性問題#rpm –ivh rpmdb-fedora*.rpm#rpm –ivh --aid
Time of Update: 2018-12-04
"sysfs is a ram-based filesystem initially based on ramfs. It provides a meansto export kernel data structures, their attributes, and the linkages between them touserspace.” ---
Time of Update: 2018-12-05
Linux中資料流重新導向的意思是將某個命令執行後應該要出現在螢幕上的資料轉送到其他地方,例如檔案或裝置之類。一、stadard output與standard error output首先介紹一下命令執行過程的資料轉送情況:圖中的standard output和standard error
Time of Update: 2018-12-05
在Linux下很多軟體使用命令就可以很好的操作,軟體也不例外。剛好要使用一下,就找到了這款小巧的卻很使用的Linux下的工具,就是scrot。 如何安裝及使用? 1.安裝篇很簡單,想安裝其他軟體一樣,Fedora下 yum install scrot , Ubuntu下apt-get install scrot就可以。 2.使用篇一般用法就一般而言,使用 scrot 可以抓取整個案頭、某個指定的視窗、以及選擇的矩形地區。 抓取案頭:scrot
Time of Update: 2018-12-05
轉載:http://hi.baidu.com/yunpengwu/blog/item/e4cc88547ef6901c3a29353b.html/cmtid/2f7d6309b4a087c93bc76383 認識mutt是從之前幾年讀到王垠的mutt介紹文章,很吸引人。在加上喜歡類似VIM似的全鍵盤操作,就一直想試用一下。苦於入門比較難,加之之前一直在跑winxp,所以想法一直擱淺。這兩天終於重新拾起興趣,學習了一下,基本配置都搞好了,開始我的mutt之旅!系統:Ubuntu7.4之前一直在用系
Time of Update: 2018-12-05
報錯日誌如下:00:06:01.922 Changing the VM state from 'SUSPENDED' to 'RESUMING'.00:06:01.922 AIOMgr: Endpoint for file 'D:\MyVirtualBox\.VirtualBox\Machines\F14i386\F14i386.vdi' (flags 000c0723) created successfully00:06:01.928 Changing the VM state from '
Time of Update: 2018-12-05
為了進行系統維護操作,有時需要再windows和linux或Unix系統之間互傳檔案,雖然有很多工具可以實現該功能,但我還是覺得命令列來的方便快捷,起初使用linux的scp命令,總是不成功,網上也沒有相關介紹,經過幾次努力之後,終於成功的摸索出了scp命令在寫windows的路徑時的寫法,於是馬上下了出來,與大家分享: 從linux系統複製檔案到windows系統: scp /oracle/a.txt
Time of Update: 2018-12-05
ulimit -a 用來顯示當前的各種使用者進程限制。 Linux對於每個使用者,系統限制其最大進程數。為提高效能,可以根據裝置資源情況, 設定各linux 使用者的最大進程數,下面我把某linux使用者的最大進程數設為10000個: ulimit -u 10000 對於需要做許多 socket 串連並使它們處於開啟狀態的 Java 應用程式而言, 最好通過使用 ulimit -n xx 修改每個進程可開啟的檔案數,預設值是 1024。
Time of Update: 2018-12-05
維持最長的系統正常已耗用時間對隨需應變計算的成功來說越來越重要。不幸的是,很多現成即用(off-the-shelf)的高可用性(high availability,HA)解決方案價格昂貴,而且需要專門技術。本系列的 5 篇文章將提供一個使用公開可用軟體獲得 HA 服務的廉價替代方案。本系列中的詳盡步驟將展示如何在 Linux 上構建一個高可用性的 Apache Web 服務器、WebSphere MQ 隊列管理器、LoadLeveler 群集、WebSphere Application
Time of Update: 2018-12-05
第二部分講一下內網服務的對外發布,以發布Web伺服器為例。配置環境和方法與第一部分相似。例如要把內網中一台IP地址為192.168.0.126的伺服器上的網站(預設連接埠為80),通過NAT伺服器的8080連接埠發布給互連網上的使用者訪問,配置如下:還是進入Webmin防火牆配置部分的NAT配置介面,這次需要配置“Packets before routing (PREROUTING)”規則,按“Add Role”按鈕,開啟規則配置介面,“Action to take”選“Destination
Time of Update: 2018-12-05
linux rsync增量同步處理方法可以先使用 rpm -qa |grep rsync 查看rsync是否已經安裝下面說說rsyns的配置過程一. 設定管理員端首先編輯 /etc/rsyncd.conf 內容如下:uid = nobody #進行備份的使用者 nobody為任何使用者gid = nobody #進行備份的組 nobody為任何組use chroot = no #不使用chrootmax connections = 10 #最大串連數log file =