linux申請端口_第1頁
linux申請端口_第2頁
linux申請端口_第3頁
linux申請端口_第4頁
linux申請端口_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、linux申請端口 篇一:LINUX開啟允許對外訪問的網(wǎng)絡端口 LINUX開啟允許對外訪問的網(wǎng)絡端口 LINUX通過下面的命令可以開啟允許對外訪問的網(wǎng)絡端口: /sbin/iptables -I INPUT -p tcp -dport 8000 -j ACCEPT #開啟8000端口 /etc/rc.d/init.d/iptables save #保存配置 /etc/rc.d/init.d/iptables restart #重啟服務 查看端口是否已經(jīng)開放 /etc/init.d/iptables status 篇二:linux查看端口的方法 想查看TCP或者UDP端口使用情況,使用 nets

2、tat -anp 如果有些進程看不見,如只顯示”-”,可以嘗試 sudo netstat -anp 如果想看某個端口的信息,使用lsof命令,如: sudo lsof -i :631 -bash-3.00# netstat -tln netstat -tln 命令是用來查看linux的端口使用情況 /etc/init.d/vsftp start 是用來啟動ftp端口! 看文件/etc/services netstat 查看已經(jīng)連接的服務端口(ESTABLISHED) netstat -a 查看所有的服務端口(LISTEN,ESTABLISHED) sudo netstat -ap 查看所有 的

3、服務端口并顯示對應的服務程序名 nmap 掃描類型掃描參數(shù) 例如: nmap localhost nmap -p 1024-65535 localhost nmap -PT 27-245 當我們使用 netstat -apn 查看網(wǎng)絡連接的時候,linux會發(fā)現(xiàn)很多類似下面的內(nèi)容: Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 52 52:7710 50:29488 ESTABLISHED 6111/1 顯示這臺服

4、務器開放了7710端口,那么 這個端口屬于哪個程序呢?我們可以使用 lsof -i :7710 命令來查詢: COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME sshd 1990 root 3u IPv4 4836 TCP *:7710 (LISTEN) 這樣,我們就知道了7710端口是屬于sshd程序的。 1.# 表示權限用戶(如:root),$ 表示普通用戶 開機提示:Login:輸入用戶名 password:輸入口令用戶是系統(tǒng)注冊用戶成功登陸后,可以進入相應的用戶環(huán)境. 退出當前shell,輸入:exit 2.useradd netseek 添

5、加一個netseek用戶 passwd netseek 給netseek這個用戶設置密碼. (/etc/passwd /etc/group) userdel netseek 刪除賬號 userdel -r netseek 刪除賬號連同自家目錄. 更詳細的操作請參閱man page,和賬號管理篇 3.查看命令 ls -l 顯示文件列表 ls -al -a 顯示所有檔案及目錄 (ls內(nèi)定將檔案名或目錄名稱開頭為.的視為隱藏檔,不會列出) ls -al |grep d顯示目錄 ls -al |grep d 在一個目錄中查詢不包含目錄的所有文件ls -sh (man ls 查看man幫助.) linu

6、x幾種文件類型: d 表示此文件是一個目錄 - 表示此文件是一個普通文件 b 表示此文件是一個特殊的塊設備I/O文件 c 表示此文件是一個特殊的字符設備I/O文件 l 表示此文件是一個連接文件。在其文件名稱后緊跟與它連接的文件路徑及名稱 file 命令通過探測文件內(nèi)容判斷文件類型 4.建立文件和目錄 touch 1.txt cat 2.txt (用定向符創(chuàng)建文件,填寫內(nèi)容后,按ctrl+d保存內(nèi)容)mkdir mywork 建立mywork這個目錄 5.拷貝文件或目錄 cp filename1 filename2 cp -r dir1 dir2 復制目錄 cp -rf 參數(shù)f是刪除已經(jīng)存在的目

7、標文件而不提示 cp -i 參數(shù)i和f相反,在覆蓋目標文件之前將給出提示要求用戶確認,回答y時目標文件將被覆蓋,是交互式拷貝. 6.刪除文件和目錄(刪除文件或目錄都可以用rm搞定) rm 1.c /將1.c這個文件刪除 rm -rf (強制刪除文件或目錄,刪除時不提示.) 7.移走目錄或者改文件名 mv opitons 源文件或目錄目標文件或目錄 options主要參數(shù) -i:交互方式操作,如果mv操作將導致對已存在的目標文件的覆蓋,此時系統(tǒng)詢問是否重寫,要求用戶回答“y”或“n”, 這樣可以避免誤覆蓋文件. -f:禁止交互操作。mv操作要覆蓋某個已有的目標文件時不給任何指示,指定此參數(shù)后i參

8、數(shù)將不再起作用。 mv hello ./ 將hello目錄或者文件移動上一級. 8.alias 別名 alias dir=ls -l輸入dir,其實就相當于執(zhí)行了ls -l 9.權限的控制(rwx 421) chmod +x hello.sh 賦于可執(zhí)行權限. (詳細介紹一下權限的控制) chmod 命令 權限修改 用法:chmod 一位8進制數(shù) filename (rwx 421) eg: chmod u+x filenmame只想給自己運行,別人只能讀chown seek mydir 改變用戶屬組 u:表示文件所有者 g:表示同組用戶 o:表示其它用戶 a:表示所有用戶 opt則是代表操作

9、,可以為: +:添加某個權限 -:取消某個權限 =:賦予給定的權限,并取消原有的權限 而mode則代表權限: r:可讀 4 w:可寫 2 x:可執(zhí)行 1 10.pwd 顯示當前目錄完整路徑和改變目錄 cd netseek 進入netseek這個目錄 cd 退出當前目錄 cd ./ 進入上一級目錄. cd - 返回上一次目錄 cd 返回主目錄 11. cat,more,less 命令 將某個文件的內(nèi)容顯示出來,兩個命令不同的是:cat 把文件內(nèi)容一直打印出來,而more則分展顯示. less 可以上下翻滾查看內(nèi)容. cat 1.txt 可以填寫或者復制內(nèi)容,按ctrl+d保存 cat 1.c m

10、ore 1.c head -n filename 顯示第N行的內(nèi)容 tail -n filename 顯示后N行的內(nèi)容 tail -n 20 /var/log/message 顯示最新的20行日志 12.設置linux時間和日期 date 命令(date MMDDhhmmYYYY.ss) 2021年7月24日12:37 ,30秒 date 072412372021.30 date -s 20:30:30 #設置系統(tǒng)時間為20: 30:30 date -s 2021-7-24 #設置系統(tǒng)時期為2021-7-24 clock -r #對系統(tǒng)Bios中讀取時間參數(shù) clock -w #將系統(tǒng)時間(如

11、由date設置的時間)寫入Bios 13.查看找文件(find,grep,awk更多的請參照man page或shell編程專題講解)幾種介紹: find 路徑 -name 文件名 find /etc -name named.conf locate 通過文件名搜索文件的工具(要先通過updatedb建立索引數(shù)據(jù)庫)localte named.conf whereis 是尋找二進制文件,同時也會找到其幫助文件 which 和where 相似,只是我們所設置的環(huán)境變量中設置好的路徑中尋找;比如; 14.查殺進程 ps aux ps -ef |grep kill -9 看看哪個進程占用的內(nèi)存最大 p

12、s -aux|sort +5n 將程序放在前后臺執(zhí)行 cp file1 file2 與ctrl+z 你可以使用或ctrl+z來將命令放在后臺執(zhí)行. fg 是將放在后臺執(zhí)行的程序再放回前臺. jobs 15.dd命令備份 dd if=input_file of=out_file bs=block_size count=number參數(shù): if:就是input file可以是設備 of:就是output file也可以是設備 bs:規(guī)劃的一個block的大小,如果沒有設定時,預設是512bytescount:多少個bs的意思. dd if=/etc/password of=/tmp/passwd.

13、bak 備份 16.mount 加載一個硬件設備 用法:mount 參數(shù) 要加載的設備 載入點 eg: mount /dev/cdrom cd /mnt/cdrom /進入光盤目錄 u盤: mkdir /mnt/usb;(注:創(chuàng)建掛載目錄) mount /mnt/sda1 /mnt/usb;(注:掛載U盤) 現(xiàn)在就可以使用U盤了,在/mnt/usb目錄下的內(nèi)容就是U盤里的內(nèi)容了; 使用完后,用以下命令卸載U盤即可。 umount /mnt/usb mount 列出系統(tǒng)所有的分區(qū) mount -t iso9660 /dev/cdrom /mnt/cdrom掛載光盤 mount -t vfat /

14、dev/fd0 /mnt/floppy 掛載軟盤 mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2掛載fat32分區(qū) mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3掛載ntfs分區(qū) Linux-NTFS Project: http:/linux- umount /mnt/hda3 缷載 注:掛載設備前,請先fdisk -l 看一下. 17.su在不退出登陸的情況下,切換到另一個身份 用法: su -l 用戶名(如果用戶名缺省,則切換到root狀態(tài)) eg:s

15、u -l netseek (切換到netseek這個用戶,將提示輸入密碼),加上-表示切換到用戶的環(huán)境變量. sudo 利用他可以執(zhí)行root執(zhí)行的權限 篇三:Linux系統(tǒng)對IO端口和IO內(nèi)存的管理 Linux系統(tǒng)對IO端口和IO內(nèi)存的管理 日期:2021-01-17 來源:Linux社區(qū) :ce123 一、I/O端口 端口(port)是接口電路中能被CPU直接訪問的寄存器的地址。幾乎每一種外設都是通過讀寫設備上的寄存器來進行的。CPU通過這些地址即端口向接口電路中的寄存器發(fā)送命令,讀取狀態(tài)和傳送數(shù)據(jù)。外設寄存器也稱為“I/O端口”,通常包括:控制寄存器、狀態(tài)寄存器和數(shù)據(jù)寄存器三大類,而且一

16、個外設的寄存器通常被連續(xù)地編址。 二、IO內(nèi)存 例如,在PC上可以插上一塊圖形卡,有2MB的存儲空間,甚至可能還帶有ROM,其中裝有可執(zhí)行代碼。 三、IO端口和IO內(nèi)存的區(qū)分及聯(lián)系 這兩者如何區(qū)分就涉及到硬件知識,X86體系中,具有兩個地址空間:IO空間和內(nèi)存空間,而RISC指令系統(tǒng)的CPU(如ARM、PowerPC等)通常只實現(xiàn)一個物理地址空間,即內(nèi)存空間。 內(nèi)存空間:內(nèi)存地址尋址范圍,32位操作系統(tǒng)內(nèi)存空間為2的32次冪,即4G。 IO空間:X86特有的一個空間,與內(nèi)存空間彼此獨立的地址空間,32位X86有64K的IO空間。 IO端口:當寄存器或內(nèi)存位于IO空間時,稱為IO端口。一般寄存器

17、也俗稱I/O端口,或者說I/O ports,這個I/O端口可以被映射在Memory Space,也可以被映射在I/O Space。 IO內(nèi)存:當寄存器或內(nèi)存位于內(nèi)存空間時,稱為IO內(nèi)存。 四、外設IO端口物理地址的編址方式 CPU對外設IO端口物理地址的編址方式有兩種:一種是I/O映射方式(I/Omapped),另一種是內(nèi)存映射方式(Memorymapped)。而具體采用哪一種則取決于CPU的體系結構。 1、統(tǒng)一編址 RISC指令系統(tǒng)的CPU(如,PowerPC、m68k、ARM等)通常只實現(xiàn)一個物理地址空間(RAM)。在這種情況下,外設I/O端口的物理地址就被映射到CPU的單一物理地址空間中

18、,而成為內(nèi)存的一部分。此時,CPU可以象訪問一個內(nèi)存單元那樣訪問外設I/O端口,而不需要設立專門的外設I/O指令。 統(tǒng)一編址也稱為“I/O內(nèi)存”方式,外設寄存器位于“內(nèi)存空間”(很多外設有自己 的內(nèi)存、緩沖區(qū),外設的寄存器和內(nèi)存統(tǒng)稱“I/O空間”)。 2、獨立編址 而另外一些體系結構的CPU(典型地如X86)則為外設專門實現(xiàn)了一個單獨地地址空間,稱為“I/O地址空間”或者“I/O端口空間”。這是一個與CPU地RAM物理地址空間不同的地址空間,所有外設的I/O端口均在這一空間中進行編址。CPU通過設立專門的I/O指令(如X86的IN和OUT指令)來訪問這一空間中的地址單元(也即I/O端口)。與R

19、AM物理地址空間相比,I/O地址空間通常都比較小,如x86 CPU的I/O空間就只有64KB(00xffff)。這是“I/O映射方式”的一個主要缺點。 獨立編址也稱為“I/O端口”方式,外設寄存器位于“I/O(地址)空間”。 3、優(yōu)缺點 獨立編址主要優(yōu)點是: 1)、I/O端口地址不占用存儲器空間;使用專門的IO指令對端口進行操作,I/O指令短,執(zhí)行速度快。 2)、并且由于專門I/O指令與存儲器訪問指令有明顯的區(qū)別,使程序中I/O操作和存儲器操作層次清晰,程序的可讀性強。 3)、同時,由于使用專門的I/O指令訪問端口,并且I/O端口地址和存儲器地址是分開的,故I/O端口地址和存儲器地址可以重疊,

20、而不會相互混淆。 4)、譯碼電路比較簡單(因為I/0端口的地址空間一般較小,所用地址線也就較少)。 其缺點是:只能用專門的I/0指令,訪問端口的方法不如訪問存儲器的方法多。 統(tǒng)一編址優(yōu)點: 1)、由于對I/O設備的訪問是使用訪問存儲器的指令,所以指令類型多,功能齊全,這不僅使訪問I/O端口可實現(xiàn)輸入/輸出操作,而且還可對端口內(nèi)容進行算術邏輯運算,移位等等; 2)、另外,能給端口有較大的編址空間,這對大型控制系統(tǒng)和數(shù)據(jù)通信系統(tǒng)是很有意義的。 這種方式的缺點是端口占用了存儲器的地址空間,使存儲器容量減小,另外指令長度比專門I/O指令要長,因而執(zhí)行速度較慢。 究竟采用哪一種取決于系統(tǒng)的總體。在一個系

21、統(tǒng)中也可以同時使用兩種方式,前提是首先要支持I/O獨立編址。Intel的x86微處理器都支持I/O 獨立編址,因為它們的指令系統(tǒng)中都有I/O指令,并設置了可以區(qū)分I/O訪問和存儲器訪問的控制信號引腳。而一些微處理器或單片機,為了減少引腳,從而減 少芯片占用面積,不支持I/O獨立編址,只能采用存儲器統(tǒng)一編址。 五、Linux下訪問IO端口 對于某一既定的系統(tǒng),它要么是獨立編址、要么是統(tǒng)一編址,具體采用哪一種則取決于CPU的體系結構。 如,PowerPC、m68k等采用統(tǒng)一編址,而X86等則采用獨立編址,存在IO空間的概念。目前,大多數(shù)嵌入式微控制器如ARM、PowerPC等并不提供I/O空間,僅

22、有內(nèi)存空間,可直接用地址、指針訪問。但對于Linux內(nèi)核而言,它可能用于不同的CPU,所以它必須都要考慮這兩種方式,于是它采用一種新的方法,將基于I/O映射方式的或內(nèi)存映射方式的I/O端口通稱為“I/O區(qū)域”(I/O region),不論你采用哪種方式,都要 先申請IO區(qū)域:request_resource(),結束時釋放它:release_resource()。 IO region是一種IO資源,因此它可以用resource結構類型來描述。 訪問IO端口有2種途徑:I/O映射方式(I/Omapped)、內(nèi)存映射方式(Memorymapped)。前一種途徑不映射到內(nèi)存空間,直接使用 intb(

23、)/outb()之類的函數(shù)來讀寫IO端口;后一種MMIO是先把IO端口映射到IO內(nèi)存(“內(nèi)存空間”),再使用訪問IO內(nèi)存的函數(shù)來訪問 IO端口。 1、I/O映射方式 直接使用IO端口操作函數(shù):在設備打開或驅動模塊被加載時申請IO端口區(qū)域,之后使用inb(),outb()等進行端口訪問,最后在設備關閉或驅動被卸載時釋放IO端口范圍。 in、out、ins和outs匯編語言指令都可以訪問I/O端口。內(nèi)核中包含了以下輔助函數(shù)來簡化這種訪問: inb( )、inw( )、inl( ) 分別從I/O端口讀取1、2或4個連續(xù)字節(jié)。后綴“b”、“w”、“l(fā)”分別代表一個字節(jié)(8位)、一個字(16位)以及一個

24、長整型(32位)。 inb_p( )、inw_p( )、inl_p( ) 分別從I/O端口讀取1、2或4個連續(xù)字節(jié),然后執(zhí)行一條“啞元(dummy,即空指令)”指令使CPU暫停。 outb( )、outw( )、outl( ) 分別向一個I/O端口寫入1、2或4個連續(xù)字節(jié)。 outb_p( )、outw_p( )、outl_p( ) 分別向一個I/O端口寫入1、2或4個連續(xù)字節(jié),然后執(zhí)行一條“啞元”指令使CPU暫停。 insb( )、insw( )、insl( ) 分別從I/O端口讀入以1、2或4個字節(jié)為一組的連續(xù)字節(jié)序列。字節(jié)序列的長度由該函數(shù)的參數(shù)給出。 outsb( )、outsw( )

25、、outsl( ) 分別向I/O端口寫入以1、2或4個字節(jié)為一組的連續(xù)字節(jié)序列。 流程如下: 雖然訪問I/O端口非常簡單,但是檢測哪些I/O端口已經(jīng)分配給I/O設備可能就不這么簡單了,對基于ISA總線的系統(tǒng)來說更是如此。通常,I/O設備驅動程序為了探測硬件設備,需要盲目地向某一I/O端口寫入數(shù)據(jù);但是,如果其他硬件設備已經(jīng)使用這個端口,那 么系統(tǒng)就會崩潰。為了防止這種情況的發(fā)生,內(nèi)核必須使用“資源”來記錄分配給每個硬件設備的I/O端口。資源表示某個實體的一部分,這部分被互斥地分配給設備驅動程序。在這里,資源表示I/O端口地址的一個范圍。每個資源對應的信息存放在resource數(shù)據(jù)結構中: pl

26、ain struct resource resource_size_t start;/ 資源范圍的開始 resource_size_t end;/ 資源范圍的結束 const char *name; /資源擁有者的名字 unsigned long flags;/ 各種標志 struct resource *parent, *sibling, *child;/ 指向資源樹中父親,兄弟和孩子的指針 ; 所有的同種資源都插入到一個樹型數(shù)據(jù)結構(父親、兄弟和孩子)中;例如,表示I/O端口地址范圍的所有資源都包括在一個根節(jié)點為ioport_resource的樹中。節(jié)點的孩子被收集在一個鏈表中,其第一個元

27、素由child指向。sibling字段指向鏈表中的下一個節(jié)點。 為什么使用樹?例如,考慮一下IDE硬盤接口所使用的I/O端口地址比如說從0xf000 到 0xf00f。那么,start字段為0xf000 且end 字段為0xf00f的這樣一個資源包含在樹中,控制器的常規(guī)名字存放在name字段中。但是,IDE設備驅動程序需要記住另外的信息,也就是IDE鏈主盤使用0xf000 到0xf007的子范圍,從盤使用0xf008 到0xf00f的子范圍。為了做到這點,設備驅動程序把兩個子范圍對應的孩子插入到從0xf000 到0xf00f的整個范圍對應的資源下。一般來說,樹中的每個節(jié)點肯定相當于父節(jié)點對應范

28、圍的一個子范圍。I/O端口資源樹(ioport_resource)的根節(jié)點跨越了整個I/O地址空間(從端口0到65535)。 任何設備驅動程序都可以使用下面三個函數(shù),傳遞給它們的參數(shù)為資源樹的根節(jié)點和要插入的新資源數(shù)據(jù)結構的地址: request_resource( ) /把一個給定范圍分配給一個I/O設備。 allocate_resource( ) /在資源樹中尋找一個給定大小和排列方式的可用范圍;若存在,將這個范圍分配給一個I/O設備(主要由PCI設備驅動程序使用,可以使用任意的端和主板上的內(nèi)存地址對其進行配置)。 release_resource( )/釋放以前分配給I/O設備的給定范圍

29、。 內(nèi)核也為以上函數(shù)定義了一些應用于I/O端口的快捷函數(shù):request_region( )分配I/O端口的給定范圍,release_region( )釋放以前分配給I/O端口的范圍。當前分配給I/O設備的所有I/O地址的樹都可以從/proc/ioports文件中獲得。 2、內(nèi)存映射方式 將IO端口映射為內(nèi)存進行訪問,在設備打開或驅動模塊被加載時,申請IO端口區(qū)域并使用ioport_map()映射到內(nèi)存,之后使用IO內(nèi)存的函數(shù)進行端口訪問,最后,在設 備關閉或驅動模塊被卸載時釋放IO端口并釋放映射。 映射函數(shù)的原型為: void *ioport_map(unsigned long port, unsigned int count); 通過這個函數(shù),可以把port開始的count個連續(xù)的I/O端口重映射為一段“內(nèi)存空間”。然后就可以在其返回的地址上像訪問I/O內(nèi)存一樣訪問這些I/O端口。但請注意,在進行映射前,還必須通過request_region( )分配I/O端口。 當不再需要這種映射時,需要調用下面的函數(shù)來撤消: void ioport_unmap(voi

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論