昨天下午測試在Unix域套介面上使用資料報發描述字,發現如果接收端不收取的話,發送端最多發11個就阻塞住了,而且阻塞與否和資料報的位元組數大小也沒有關係。查了半天核心代碼,確定是一個叫做unx.sysctl_max_dgram_qlen的變數在作怪,預設值是10,卻沒看出有什麼修改的介面。 晚上到家以後百無聊賴地翻UNP,本想隨便看看非阻塞IO一章,卻無意翻到有一節的題目叫“sysctl操作”,頓時覺得似曾相識。這一節在第18章《路由套介面》裡,一般來說這一章很容易被忽略,想不到居
linux系統中scp命令的用法scp是 secure copy的縮寫, scp是linux系統下基於ssh登陸進行安全的遠程檔案拷貝命令。linux的scp命令可以在linux伺服器之間複製檔案和目錄.scp命令的用處:scp在網路上不同的主機之間複製檔案,它使用ssh安全性通訊協定傳輸資料,具有和ssh一樣的驗證機制,從而安全的遠程拷貝檔案。scp命令基本格式:scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file][-
簡單介紹Linux判斷符的使用在Linux系統中判斷符可協助我們簡化很多不必要的工作,可以大大提高我們的工作效率,這裡介紹一下Shell中的常用判斷符。Linux判斷符1. 關於某個檔名的『類型』偵測(存在與否),如 test -e filename -e 該『檔名』是否存在?(常用)-f 該『檔名』是否為檔案(file)?(常用)-d 該『檔案名稱』是否為目錄(directory)?(常用)-b 該『檔案名稱』是否為一個 block device 裝置?-c 該『檔案名稱』是否為一個
linux靜態連結庫與動態連結程式庫的區別及動態庫的建立(轉)一、引言通常情況下,對函數庫的連結是放在編譯時間期(compile time)完成的。所有相關的對象檔案(object file)與牽涉到的函數庫(library)被連結合成一個可執行檔(executable file)。程式在運行時,與函數庫再無瓜葛,因為所有需要的函數已拷貝到自己門下。所以這些函數庫被成為靜態庫(static
摘自:http://www.the5fire.net 從出差回來就開始學習linux部署環境的這些知識了,在福建現場的時候覺得在這方面比較無力,面對未知的東西,雖然可以通過現搜現用來解決,但是效率之低是很有體會的,最重要的是心理沒底,不知道這個命令放到伺服器上會產生什麼樣的後果,因此這次的學習還是很有必要的。從周一開始上班,利用空餘時間在vm中搭建一個fedora的作業系統,為啥要選fedora,我的原因是他和redhat具有類似的環境,而我目前接觸到的伺服器都是RedHat系統,不知道我這
與擷取進程相關資訊的操作,都在unistd.h檔案中,常用的有如下一些函數。getuid函數原型:uid_t getuid(void);函數功能:擷取調用進程的使用者的ID。函數返回:調用進程的使用者的ID。聲明檔案:unistd.hgetgid函數原型:gid_t getgid(void);函數功能:擷取調用進程的使用者組的ID。函數返回:調用進程的使用者組的ID。聲明檔案:unistd.hgetpid函數原型:pid_t
1. 下載Jetty的Java歸檔檔案mkdir Democd DemoJETTY_VERSION=7.0.2.v20100331wget -U none http://repo1.maven.org/maven2/org/eclipse/jetty/aggregate/jetty-all/$JETTY_VERSION/jetty-all-$JETTY_VERSION.jarwget -U none
事實上,字串操作,不能算是Linux環境編程的一部分。但由於Linux環境編程,基本就是對C語言函數庫的編程,所以對於字串的理解是必不可少的。strcasecmp函數原型:int strcasecmp(const char *s1, const char *s2)函數功能:不考慮大小寫,比較args[0]和args[1]。函數返回:相同則返回0,s1長則返回正數,s2長則返回負數。函數參數:s1和s2是所比較的兩個字串。聲明檔案:string.hstrcat函數原型:char
先安裝libeventmkdir downloadcd downloadwget http://monkey.org/~provos/libevent-2.0.12-stable.tar.gztar -zxvf libevent-2.0.12-stable.tar.gzcd libevent-2.0.12-stablemakesudo make install再安裝memcachedmkdir downloadcd downloadwget
轉載請註明來自“柳大的CSDN部落格”,原文連結:http://blog.csdn.net/poechant/article/details/72150381、Linux的許可權管理 在Linux中,每個檔案都有一個擁有者(owner),而由於每個使用者都有一個所屬的使用者組,所以連帶著讓每個檔案都有一個擁有組。所以在Linux的許可權管理中,首先有對於一個檔案的擁有者許可權,一個檔案的使用者組許可權,另外還有一個對於其他所有使用者的許可權。
《柳大的Linux講義·基礎篇》來自柳大的CSDN部落格,轉載請註明原文連結:http://blog.csdn.net/poechant/article/details/7214926一、磁碟知識1、磁碟物理結構(1)結構: 物理上,一塊磁碟,有多個碟片。每個碟片上根據半徑不同,有很多磁軌(track)。不同碟片上半徑相同的磁軌,在邏輯上稱為磁柱(cylinder)。一個磁軌上的某段弧內的地區,被稱為扇區(sector)。每個扇區的大小是512位元組。(2)容量: 計算公式是:
轉載請註明來自“柳大的CSDN部落格”:http://blog.csdn.net/poechant 當我們用sudo來執行cd、ls等命令時,會出現command not found的提示:sudo cd /home/michaelsudo: command not found
安裝vmware-tools的安裝包有兩個,一個是rpm包,一個是tar包,下面分別是用了這兩種方法安裝:一、rpm包安裝1.在啟動LINUX 虛擬機器之後,在WMWare 的功能表列中點擊"VM",然後點擊下拉式功能表中的"Install VMware TOOLS"選項。2.掛載光碟機:[root@localhost ~]# mount /mnt/cdrom /mnt/[root@localhost ~]# rpm -ivh /mnt/VMwareTools-6.0.0-45731.i386.
破解密碼在倒計時介面按a 編輯 kernel 參數,在行末輸入 空格(single 或 1) ,以告訴 Linux 核心啟動過程需要進入單一使用者模式,然後斷行符號即可 。進入單一使用者模式後,在未關閉selinux之前,如果輸入passwd發現沒有任何反應,用“setenforce 0”來關閉grubpasswd 輸入新密碼 輸入正確後,這個新口令被加密並放入/etc/shdow檔案。選取一個不易被破譯的口令是很重要的。reboot
Sendmail是最重要的郵件傳輸代理程式程式。理解電子郵件的工作模式是非常重要的。一般情況下,我們把電子郵件程式分解成使用者代理程式,傳輸代理和投遞代理。 關閉Sendmail服務具體命令實現如下:關閉sendmail服務(1)[root@sample ~]# /etc/rc.d/init.d/sendmail stop ← 關閉sendmail服務或者[root@sample ~]# service sendmail stop ← 關閉sendmail服務Shutting down
因項目需要,要做一個門戶網站和滿足另外一個後台請求的WebService。為了是門戶網站和WebService不互相干擾,即門戶的癱瘓不會影響WebService或者WebService的癱瘓不會影響門戶,所以需要在Linux上部署兩個Tomcat。由於原來用的是免安裝版的Tomcat,我在啟動第一個Tomcat後,第二個Tomcat就是啟動不起來,一般的原因是連接埠衝突,只需要改動一下第二個Tomcat的連接埠即可。但是修改第二個Tomcat連接埠後還是報連接埠已被使用,但是用命令“netst
linux檔案鎖是預設的勸告鎖。以下證實兩點:1)讀寫鎖分別的排他性。2)當檔案上鎖地區交叉時的鎖競爭關係。FIleMutex.h:class FileMutex {public:FileMutex(const string& filename);virtual ~FileMutex();int lockR(int offset,int len);int lockW(int offset,int len);int lockRWait(int offset,int len,int
shmget的時候,我們能指定共用記憶體的size,當size越界的時候,會如何呢?如下:/* * ShareMem.h * * Created on: 2013-2-25 * Author: coreycui */#ifndef SHAREMEM_H_#define SHAREMEM_H_#include <sys/ipc.h>#include <sys/shm.h>#include <sys/types.h>#include
訊號量的值與相應資源的使用方式有關,當它的值大於 0 時,表示當前可用的資源數的數量;當它的值小於 0 時,其絕對值表示等待使用該資源的進程個數。訊號量的值僅能由 PV 操作來改變。 在 Linux 下,PV 操作通過調用semop函數來實現。該函數定義在標頭檔 sys/sem.h中,原型如下: int semop(int semid,struct sembuf *sops,size_t nsops); 函數的參數 semid 為訊號量集的標識符;參數 sops
簡單介紹一下Linux下的FTP命令: 1、串連FTP伺服器 格式:ftp hostname或ip-address a)在linux命令列下輸入架設伺服器的機器IP或者主機名稱:ftp 10.60.48.195 b)伺服器詢問你使用者名稱和密碼,分別輸入以後,待認證通過即可。注意:輸入密碼時,終端中不顯示輸入,始終一片空白,所以只要你確定輸入正確了,按斷行符號就行 2、下載檔案 下載檔案通常用 get 和 mget 這兩條命令,get 用於單個檔案,mget 則是多個檔案。 a)