Nkọwa nke Ihe niile bụ faịlụ na ụdị faịlụ na Linux


Ọ bụrụ na ị bụ onye ọhụrụ na Linux, ma ọ bụ jiri ya mee ihe ọnwa ole na ole, ị ga-abụrịrị na ị nụla ma ọ bụ gụọ nkwupụta dịka \Na Linux, ihe niile bụ faịlụ.

Nke ahụ bụ eziokwu n'agbanyeghị na ọ bụ naanị echiche izugbe, na Unix na usoro ya dị ka Linux, a na-ewere ihe niile dịka faịlụ. Ọ bụrụ na ihe abụghị faịlụ, mgbe ahụ ọ ga-abụrịrị na-agba ọsọ dị ka usoro na usoro.

Iji ghọta nke a, were dịka ọmụmaatụ ọnụọgụ oghere dị na mgbọrọgwụ (/) ndekọ na-eri mgbe niile site na ụdị faịlụ Linux dị iche iche. Mgbe ị mepụtara faịlụ ma ọ bụ nyefee faịlụ na sistemụ gị, ọ na-ewe ụfọdụ ohere na diski anụ ahụ ma a na-ewere ya na ọ bụ n'ụdị a kapịrị ọnụ (ụdị faịlụ).

Nakwa usoro Linux anaghị ekewa n'etiti faịlụ na akwụkwọ ndekọ aha, mana akwụkwọ ndekọ aha na-arụ otu ọrụ dị mkpa, ya bụ na-echekwa faịlụ ndị ọzọ n'ime otu n'otu ọkwa maka ebe dị mfe. A na-anọchi anya akụrụngwa ngwaike gị niile dị ka faịlụ yana sistemụ na-eji faịlụ ndị a na-ekwurịta okwu na ha.

Echiche a bụ nkọwa dị mkpa nke nnukwu ihe onwunwe nke Linux, ebe ntinye/mmepụta ihe dị ka akwụkwọ gị, akwụkwọ ndekọ aha (nchekwa na Mac OS X na Windows), keyboard, nyochaa, draịva siri ike, mgbasa ozi mbughari, ndị na-ebi akwụkwọ, modems, mebere. ọnụ na kwa usoro n'etiti yana nkwurịta okwu netwọk bụ iyi nke bytes kọwara site na oghere sistemụ faịlụ.

Uru pụtara ìhè nke ihe niile bụ faịlụ bụ na enwere ike iji otu ngwa Linux, ngwa ọrụ na API mee ihe na akụrụngwa ntinye/mpụta dị n'elu.

Ọ bụ ezie na ihe niile dị na Linux bụ faịlụ, enwere ụfọdụ faịlụ pụrụ iche karịa faịlụ dịka ọmụmaatụ sọket na ọkpọkọ aha.

Kedu ụdị faịlụ dị iche iche na Linux?

Na Linux enwere ụdị faịlụ atọ:

  1. faịlụ nkịtị/oge niile
  2. Faịlụ pụrụ iche
  3. Akwụkwọ ntụaka

Ndị a bụ faịlụ faịlụ nwere ederede, data ma ọ bụ ntuziaka mmemme na ha bụ ụdị faịlụ a na-ahụkarị ị nwere ike ịtụ anya ịchọta na sistemụ Linux ha gụnyere:

  1. faịlụ enwere ike ịgụ
  2. faịlụ ọnụọgụ abụọ
  3. Faịlụ onyonyo
  4. faịlụ emịkọrọ na ihe ndị ọzọ.

Faịlụ pụrụ iche gụnyere ndị a:

Gbochie faịlụ: Ndị a bụ faịlụ ngwaọrụ na-enye ohere nchekwa ngwaike sistemụ. Ha na-enye usoro nkwukọrịta na ndị ọkwọ ụgbọala ngwaọrụ site na sistemụ faịlụ.

Otu akụkụ dị mkpa gbasara faịlụ ngọngọ bụ na ha nwere ike ịnyefe nnukwu ngọngọ nke data na ozi n'otu oge.

Ndepụta oghere ngọngọ faịlụ na ndekọ:

# ls -l /dev | grep "^b"
brw-rw----  1 root disk        7,   0 May 18 10:26 loop0
brw-rw----  1 root disk        7,   1 May 18 10:26 loop1
brw-rw----  1 root disk        7,   2 May 18 10:26 loop2
brw-rw----  1 root disk        7,   3 May 18 10:26 loop3
brw-rw----  1 root disk        7,   4 May 18 10:26 loop4
brw-rw----  1 root disk        7,   5 May 18 10:26 loop5
brw-rw----  1 root disk        7,   6 May 18 10:26 loop6
brw-rw----  1 root disk        7,   7 May 18 10:26 loop7
brw-rw----  1 root disk        1,   0 May 18 10:26 ram0
brw-rw----  1 root disk        1,   1 May 18 10:26 ram1
brw-rw----  1 root disk        1,  10 May 18 10:26 ram10
brw-rw----  1 root disk        1,  11 May 18 10:26 ram11
brw-rw----  1 root disk        1,  12 May 18 10:26 ram12
brw-rw----  1 root disk        1,  13 May 18 10:26 ram13
brw-rw----  1 root disk        1,  14 May 18 10:26 ram14
brw-rw----  1 root disk        1,  15 May 18 10:26 ram15
brw-rw----  1 root disk        1,   2 May 18 10:26 ram2
brw-rw----  1 root disk        1,   3 May 18 10:26 ram3
brw-rw----  1 root disk        1,   4 May 18 10:26 ram4
brw-rw----  1 root disk        1,   5 May 18 10:26 ram5
...

Faịlụ agwa: Ndị a bụkwa faịlụ ngwaọrụ na-enye ohere n'enweghị nchekwa na ngwa ngwa sistemụ. Ha na-arụ ọrụ site n'inye ụzọ nkwukọrịta na ngwaọrụ site na ịnyefe data otu agwa n'otu oge.

Ndepụta sọks faịlụ agwa n'ime ndekọ aha:

# ls -l /dev | grep "^c"
crw-------  1 root root       10, 235 May 18 15:54 autofs
crw-------  1 root root       10, 234 May 18 15:54 btrfs-control
crw-------  1 root root        5,   1 May 18 10:26 console
crw-------  1 root root       10,  60 May 18 10:26 cpu_dma_latency
crw-------  1 root root       10, 203 May 18 15:54 cuse
crw-------  1 root root       10,  61 May 18 10:26 ecryptfs
crw-rw----  1 root video      29,   0 May 18 10:26 fb0
crw-rw-rw-  1 root root        1,   7 May 18 10:26 full
crw-rw-rw-  1 root root       10, 229 May 18 10:26 fuse
crw-------  1 root root      251,   0 May 18 10:27 hidraw0
crw-------  1 root root       10, 228 May 18 10:26 hpet
crw-r--r--  1 root root        1,  11 May 18 10:26 kmsg
crw-rw----+ 1 root root       10, 232 May 18 10:26 kvm
crw-------  1 root root       10, 237 May 18 10:26 loop-control
crw-------  1 root root       10, 227 May 18 10:26 mcelog
crw-------  1 root root      249,   0 May 18 10:27 media0
crw-------  1 root root      250,   0 May 18 10:26 mei0
crw-r-----  1 root kmem        1,   1 May 18 10:26 mem
crw-------  1 root root       10,  57 May 18 10:26 memory_bandwidth
crw-------  1 root root       10,  59 May 18 10:26 network_latency
crw-------  1 root root       10,  58 May 18 10:26 network_throughput
crw-rw-rw-  1 root root        1,   3 May 18 10:26 null
crw-r-----  1 root kmem        1,   4 May 18 10:26 port
crw-------  1 root root      108,   0 May 18 10:26 ppp
crw-------  1 root root       10,   1 May 18 10:26 psaux
crw-rw-rw-  1 root tty         5,   2 May 18 17:40 ptmx
crw-rw-rw-  1 root root        1,   8 May 18 10:26 random

Faịlụ njikọ akara: Njikọ ihe atụ bụ ntụnye aka na faịlụ ọzọ na sistemụ. Ya mere, faịlụ njikọ ihe atụ bụ faịlụ na-arụtụ aka na faịlụ ndị ọzọ, ha nwere ike ịbụ akwụkwọ ndekọ aha ma ọ bụ faịlụ oge niile.

Na-edepụta oghere njikọ ihe atụ n'ime ndekọ aha:

# ls -l /dev/ | grep "^l"
lrwxrwxrwx  1 root root             3 May 18 10:26 cdrom -> sr0
lrwxrwxrwx  1 root root            11 May 18 15:54 core -> /proc/kcore
lrwxrwxrwx  1 root root            13 May 18 15:54 fd -> /proc/self/fd
lrwxrwxrwx  1 root root             4 May 18 10:26 rtc -> rtc0
lrwxrwxrwx  1 root root             8 May 18 10:26 shm -> /run/shm
lrwxrwxrwx  1 root root            15 May 18 15:54 stderr -> /proc/self/fd/2
lrwxrwxrwx  1 root root            15 May 18 15:54 stdin -> /proc/self/fd/0
lrwxrwxrwx  1 root root            15 May 18 15:54 stdout -> /proc/self/fd/1

Ị nwere ike iji ọrụ ln mee njikọ ihe atụ na Linux dịka ọmụmaatụ n'okpuru.

# touch file1.txt
# ln -s file1.txt /home/tecmint/file1.txt  [create symbolic link]
# ls -l /home/tecmint/ | grep "^l"         [List symbolic links]

N'ihe atụ a dị n'elu, m mepụtara faịlụ a na-akpọ file1.txt na /tmp directory, wee mepụta njikọ ihe atụ, /home/tecmint/file1.txt iji rụtụ aka na /tmp/file1.txt.

Pipes ma ọ bụ ọkpọkọ akpọrọ : Ndị a bụ faịlụ na-enye ohere nkwurịta okwu n'etiti usoro site na ijikọ mmepụta nke otu usoro na ntinye nke ọzọ.

Ọkpụkpọ aha ya bụ faịlụ nke usoro abụọ na-eji na-ekwurịta okwu na nke ọ bụla, ọ na-arụkwa ọrụ dị ka ọkpọkọ Linux.

Ndepụta sọks ọkpọkọ n'ime ndekọ aha:

# ls -l | grep "^p"
prw-rw-r-- 1 tecmint tecmint    0 May 18 17:47 pipe1
prw-rw-r-- 1 tecmint tecmint    0 May 18 17:47 pipe2
prw-rw-r-- 1 tecmint tecmint    0 May 18 17:47 pipe3
prw-rw-r-- 1 tecmint tecmint    0 May 18 17:47 pipe4
prw-rw-r-- 1 tecmint tecmint    0 May 18 17:47 pipe5

Ị nwere ike iji mkfifo utility mepụta ọkpọkọ aha ya na Linux dị ka ndị a.

# mkfifo pipe1
# echo "This is named pipe1" > pipe1

N'ihe atụ dị n'elu, m mepụtara ọkpọkọ aha ya bụ pipe1, wee nyefee ya ụfọdụ data site na iji iwu echo, mgbe nke ahụ gasịrị, shei ahụ ghọrọ ihe na-adịghị emekọrịta ihe mgbe ị na-ahazi ntinye.

Mgbe ahụ, m meghere shei ọzọ wee mee iwu ọzọ ka m bipụta ihe e bufere na ọkpọkọ.

# while read line ;do echo "This was passed-'$line' "; done<pipe1

Faịlụ Socket : Ndị a bụ faịlụ na-enye ụzọ nke nkwurịta okwu inter-process, mana ha nwere ike ịnyefe data na ozi n'etiti usoro na-agba ọsọ na gburugburu dị iche iche.

Nke a pụtara na oghere na-enye data na nnyefe ozi n'etiti usoro na-agba ọsọ na igwe dị iche iche na netwọk.

Ihe atụ iji gosi ọrụ nke oghere ga-abụ ihe nchọgharị weebụ na-eme njikọ na sava weebụ.

# ls -l /dev/ | grep "^s"
srw-rw-rw-  1 root root             0 May 18 10:26 log

Nke a bụ ọmụmaatụ oghere na-emepụta na C site na iji socket() oku usoro.

int socket_desc= socket(AF_INET, SOCK_STREAM, 0 );

N'elu:

  1. AF_INET bụ ezinụlọ adreesị (IPv4)
  2. SOCK_STREAM bụ ụdị (njikọ bụ TCP protocol dabere)
  3. 0 bụ protocol(IP Protocol)

Iji rụtụ aka na faịlụ oghere, jiri socket_desc, nke bụ otu ihe na nkọwa faịlụ, wee jiri agụ() na dee() oku usoro ka ịgụ na dee site na oghere n'otu n'otu.

Ndị a bụ faịlụ pụrụ iche na-echekwa ma faịlụ nkịtị na ndị ọzọ pụrụ iche ma ahaziri ha na sistemụ faịlụ Linux na ọkwa na-amalite site na mgbọrọgwụ (/) ndekọ.

Ndepụta sọks n'ime ndekọ aha:

# ls -l / | grep "^d" 
drwxr-xr-x   2 root root  4096 May  5 15:49 bin
drwxr-xr-x   4 root root  4096 May  5 15:58 boot
drwxr-xr-x   2 root root  4096 Apr 11  2015 cdrom
drwxr-xr-x  17 root root  4400 May 18 10:27 dev
drwxr-xr-x 168 root root 12288 May 18 10:28 etc
drwxr-xr-x   3 root root  4096 Apr 11  2015 home
drwxr-xr-x  25 root root  4096 May  5 15:44 lib
drwxr-xr-x   2 root root  4096 May  5 15:44 lib64
drwx------   2 root root 16384 Apr 11  2015 lost+found
drwxr-xr-x   3 root root  4096 Apr 10  2015 media
drwxr-xr-x   3 root root  4096 Feb 23 17:54 mnt
drwxr-xr-x  16 root root  4096 Apr 30 16:01 opt
dr-xr-xr-x 223 root root     0 May 18 15:54 proc
drwx------  19 root root  4096 Apr  9 11:12 root
drwxr-xr-x  27 root root   920 May 18 10:54 run
drwxr-xr-x   2 root root 12288 May  5 15:57 sbin
drwxr-xr-x   2 root root  4096 Dec  1  2014 srv
dr-xr-xr-x  13 root root     0 May 18 15:54 sys
drwxrwxrwt  13 root root  4096 May 18 17:55 tmp
drwxr-xr-x  11 root root  4096 Mar 31 16:00 usr
drwxr-xr-x  12 root root  4096 Nov 12  2015 var

Ị nwere ike ịmepụta ndekọ site na iji iwu mkdir.

# mkdir -m 1666 linux-console.net
# mkdir -m 1666 news.linux-console.net
# mkdir -m 1775 linuxsay.com

Nchịkọta

Ị kwesịrị ị na-enwe nghọta doro anya ihe kpatara ihe niile dị na Linux bụ faịlụ yana ụdị faịlụ dị iche iche nwere ike ịpụ na sistemụ Linux gị.

Ị nwere ike tinyekwuo na nke a site n'ịgụ ihe gbasara ụdị faịlụ nke ọ bụla na-emepụta ha. Enwere m olileanya na nke a ga-achọta ntuziaka a na-enye aka na ajụjụ ọ bụla na ozi ndị ọzọ ị ga-achọ ịkọrọ, biko hapụ ikwu okwu na anyị ga-atụlekwu.