Summary of Linux basic knowledge (very detailed) from zero basic entry to proficiency, just read this article

Article directory

  • Preface

  • 1. Overview of getting started with Linux

  • 2. Commonly used shortcut keys

  • 3. Common Linux commands

  • Summarize

Preface

Want to get started with Llinux, but novices don’t know how to get started with Linux? This article is enough

Tip: The following is the text of this article. The following cases are for reference.

1. Overview of getting started with Linux

Overview

The full name of Linux is GNU/Linux. It is a UNIX-like operating system that is free to use and spread freely. Its kernel was first released by Linus Benedikt Torvalds on October 5, 1991. , it is mainly inspired by the ideas of Minix and Unix. It is a multi-user, multi-task, multi-threading and multi-CPU operating system based on POSIX. It can run major Unix software tools, applications and network protocols. It supports 32-bit and 64-bit hardware. Linux inherits the network-centric design philosophy of Unix and is a multi-user network operating system with stable performance. There are hundreds of different Linux distributions, such as Debian and Archlinux based on community development, and Red Hat Enterprise Linux, SUSE, Oracle Linux, etc. based on commercial development.
The more well-known distributions currently on the market include: Ubuntu, RedHat, CentOS, Debain, Fedora, SuSE, OpenSUSE

Go to the public account window to send a private message to download (official download link)
ubuntu: download address.
RedHat: download address. OpenSUSE: Download address. SuSE: Download address. Fedora: download address. Debain: download address.
centos: download address.



2. Commonly used shortcut keys

[tab] key
This is the Linux shortcut key you can’t live without. It will save you a lot of time in the Linux command line. Just enter a command, a file name, a directory name or even the beginning of a command option and hit the tab key. It will automatically complete what you type or show you all possible results. If you only remember one shortcut key, this will be the one you must choose.

[ctrl+c] keys
These are the keys you press to interrupt a command or process on the terminal. It will immediately terminate the running program. If you want to stop using a program that is running in the background, just press this key combination.

[Ctrl + Z] key
This shortcut key sends the running program to the background. Normally, you can do this before running the program with the & option, but if you forget to run the program with the & option, use this key combination.

[Ctrl + D] key
This shortcut key will move the cursor to the beginning of the line. Suppose you enter a long command or path in the terminal and you want to go back to the beginning of it, using the arrow keys to move the cursor will take a lot of time. Note that you cannot use the mouse to move the cursor to the beginning of the line. This is where Ctrl+A saves time.

[Ctrl + E] key
This shortcut key pair is the opposite of Ctrl+A. Ctrl+A moves the cursor to the beginning of the line, whereas Ctrl+E moves the cursor to the end of the line.

[Ctrl + U] keys
Entered the wrong command? Instead of using the backspace key to discard the current command, use the Ctrl+U shortcut in the Linux terminal. This shortcut will erase everything from the current cursor position to the beginning of the line.

[Ctrl + K] key
This pair is somewhat similar to the Ctrl+U shortcut key. The only difference is that instead of the beginning of the line, it erases everything from the current cursor position to the end of the line.

[Ctrl + W] keys
You just learned about erasing text to the beginning and end of a line. But what if you just need to delete a word? Use the Ctrl+W shortcut key. Using the Ctrl+W shortcut, you can erase the word before the cursor position. If the cursor is on a word itself, it will erase all letters from the cursor position to the beginning of the word. The best way is to use it to move the cursor to a space after the word you want to delete, and then use the Ctrl+W keyboard shortcut.

[Ctrl + Y] keys
This will paste text erased using the Ctrl+W, Ctrl+U and Ctrl+K shortcuts. This will come in handy if you deleted the wrong text or need to use the erased text somewhere.

[Ctrl + P] key
You can use this shortcut key to view the previous command. You can press this key repeatedly to return to the command history. In many terminals, the PgUp key is used to perform the same function.

[Ctrl + N]
You can use this shortcut with Ctrl+P. Ctrl+N displays the next command. If you used Ctrl+P to view the previous command, you can use Ctrl+N to navigate back and forth. Many terminals map this shortcut to the PgDn key.

[Ctrl + R] key
You can use this shortcut key to search historical commands.

[Ctrl+left and right keys]
Jump between words

[Alt – d] key
Delete words to the right starting from the cursor position. Delete to end of line

3. Common Linux commands

File management

1. The cat (English spelling: concatenate) command is used to connect files and print to the standard output device.
Syntax format:
cat [-nbs] [–help] [–version] fileName

Parameter description:
-n or --number: Number all output lines starting from 1.
-b or --number-nonblank: Similar to -n, except that blank lines are not numbered.
-s or --squeeze-blank: When encountering more than two consecutive blank lines, replace them with one blank line.

Example:
Add the line number to the document content of textfile1 and enter it into the document textfile2:

 `cat -n textfile1 > textfile2`

Add line numbers to the document contents of textfile1 and textfile2 (blank lines are not added) and then append the contents to the textfile3 document:

cat -b textfile1 textfile2 >> textfile3   

Clear the contents of the /etc/test.txt file:

cat /dev/null > /etc/test.txt   

2. more, the more command is similar to cat, but it will be displayed page by page, which is more convenient for users to read page by page. The most basic command is to press the space key (space) to go to the next page. Display, press the b key to go back one page, and there is also a search string function (similar to vi)
Syntax format:
more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames…]

Parameter description:
-num The number of lines displayed at one time
-d prompts the user and displays [Press space to continue, ' at the bottom of the screen q' to quit.], if the user presses the wrong key, [Press 'h' for instructions.] will be displayed instead of a 'beep' sound
-l Cancel special characters ^L Function that will pause when (feeding paper characters)
-f When calculating the number of lines, the actual number of lines is used instead of the number of lines after automatic line wrapping (some single lines with too long characters will Expanded to two or more lines)
-p does not display each page in a scrolling manner, but clears the screen first and then displays the content
-c is similar to -p, except that the content is displayed first and then other old data is cleared
-s When two or more consecutive blank lines are encountered, they are replaced with one blank line< /span> fileNames The document whose content you want to display can be a plural number< /span> +num start displaying from line num +/pattern searches for this string before each document is displayed ( pattern), and then start displaying from the end of the string
-u does not display lower quotes (depending on the terminal specified by the environment variable TERM)


Example:
Display the content of the testfile document page by page. If there are more than two consecutive blank lines, it will be displayed as one blank line.

more -s testfile   

Starting from line 20, the document content of testfile is displayed.

more +20 testfile   

3. The rm command is used to delete a file or directory.
Grammar rules:
rm [options] name…

Parameter description:
-i Ask for confirmation one by one before deleting.
-f Even if the original file attribute is set to read-only, it will be deleted directly without confirming one by one.
-r Delete the directory and files below one by one.

Example:
To delete files, you can use the rm command directly. If you want to delete a directory, you must use the option "-r", for example:

 `rm  test.txt`
`rm  -r  homework`  

Delete all files and directories in the current directory. The command line is:

`rm  -r  *` 

4. The cp command is mainly used to copy files or directories.
Syntax rules:
cp [options] source dest or cp [options] source… directory

Parameter description:
-a: This option is usually used when copying a directory. It retains links and file attributes, and copies all contents under the directory. Its effect is equal to the dpR parameter combination.
-d: Keep the link when copying. The links mentioned here are equivalent to shortcuts in Windows systems.
-f: Overwrite an existing target file without giving a prompt.
-i: Contrary to the -f option, a prompt is given before overwriting the target file, asking the user to confirm whether to overwrite. The target file will be overwritten when answering "y". -p: In addition to copying the contents of the file, the modification time and access permissions are also copied to the new file.
-r: If the given source file is a directory file, all subdirectories and files in the directory will be copied.
-l: Do not copy files, just generate link files.

Example:
Use the command cp to copy all files in the current directory test/ to the new directory newtest, enter the following command:

`$ cp –r test/ newtest`  

The 4, read
command is used to read values ​​from the standard input. The read internal command is used to read a single line of data from standard input. This command can be used to read keyboard input, and when using redirection, can read a line of data from a file.
Grammar rules:
read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars ] [-p prompt] [-t timeout] [-u fd] [name …]

Parameter description:
-a is followed by a variable, which will be considered as an array, and then assigned a value. By default, spaces are used as separators.
-d is followed by an identifier. In fact, only the first character after it is useful as an end mark.
-p is followed by a prompt message, that is, the prompt message is printed before input.
-e can use the command completion function when typing.
-n followed by a number defines the length of the input text, which is very practical.
-r shields \. If there is no this option, \ will be used as an escape character. If there is, \ will be a normal character.
-s Quiet mode, no longer displayed on the screen when entering characters, such as entering a password when logging in.
-t followed by the number of seconds defines the waiting time for entering characters.
-u followed by fd, reads from the file descriptor, which can be newly opened by exec.

Disk management

1. cd: command is used to switch the current working directory. where dirName representation can be an absolute path or a relative path. If the directory name is omitted, it will change to the user's home directory (that is, the directory where the user just logged in). In addition, ~ also means the home directory, . means the current directory, ... means the directory above the current directory.

Search the public account on WeChat: Architect Guide, reply: Architect Get Information.

语法规则:
cd [dirName]

Example:
Jump to /usr/bin/ :

cd /usr/bin   

Jump to your home directory:

cd ~   

Jump two levels above the current directory:

cd ../..   

2. The mkdir command is used to create a directory.
Syntax rules:
mkdir [-p] dirName

Parameter description: -p ensures that the directory name exists, if it does not exist, create one.

Example:
In the working directory, create a subdirectory named runoob:

mkdir runoob   

In the runoob2 directory under the working directory, create a subdirectory named test.
If the runoob2 directory does not exist originally, create it. (Note: If the -p parameter is not added in this example and the original runoob2 directory does not exist, an error will occur.)

mkdir -p runoob2/test   

3. The pwd command is used to display the working directory. Execute the pwd command to immediately know the absolute path name of your current working directory.
Grammar rules:
pwd [–help][–version]

Parameter description:
–help online help.
–version displays version information.

Example: View the current directory:

pwd/root/test           #输出结果   

4. The redir command deletes empty directories.
Syntax rules:
rmdir [-p] dirName

Parameter description:
-p means that when a subdirectory is deleted and it becomes an empty directory, it will also be deleted.

Example: Delete the subdirectory named AAA in the working directory:

rmdir AAA   

In the BBB directory under your working directory, delete the subdirectory named Test. If the BBB directory becomes empty after Test is deleted, BBB will also be deleted.

rmdir -p BBB/Test   

5. The ls command is used to display the contents of the specified working directory (list the files and subdirectories contained in the current working directory).
Grammar rules:
ls [-alrtAFR] [name…]

Parameter description:
-a displays all files and directories (hidden files starting with . will also be listed) -l In addition to the file name, the file type, permissions, List the owner, file size and other information in detail
-r Display the files in reverse order (originally in English alphabetical order)
-t Display the files in reverse order List in chronological order
-A Same as -a, but does not list "." (current directory) and "..." (parent directory)
- F Add a symbol after the listed file name; for example, add "*" for executable files, and add "/" for directories
-R If there are files in the directory, the following files will also All listed in sequence

Example:
List all directories under the root directory ():

#ls /   bin               dev   lib         media  net   root     srv  upload  www   boot              etc   lib64       misc   opt   sbin     sys  usr   home  lost+found  mnt    proc  selinux  tmp  var   

List all files in the current working directory whose names begin with s, with the newer ones listed later:

ls -ltr s*   

List the details of all directories and files under the /bin directory:

ls -lR /bin   

List all files and directories in the current working directory; add "/" after the name of the directory, and add "*" after the name of the executable file:

ls -AF   

Network communication

1. The telnet command is used for remote login. Execute the telnet command to start the terminal phase operation and log in to the remote host.
Syntax rules:
telnet [-8acdEfFKLrx][-b<Host alias>][-e<Escape character>][-k<Domain name> ;][-l<User Name>][-n<Log File>][-S<Service Type>][-X<Authentication Form>][Host Name or IP Address<Communication Port> ]

Parameter description:
-8 allows the use of 8-bit character data, including input and output.
-a Attempts to automatically log in to the remote system.
-b<Host Alias> Use an alias to specify the remote host name.
-c does not read the .telnetrc file in the user-specific directory.
-d starts debugging mode.
-e<Escape character> Set the escape character.
-E Filter out escape characters.
-f This parameter has the same effect as specifying the "-F" parameter.
-F When using Kerberos V5 authentication, adding this parameter can upload the authentication data of the local host to the remote host.
-k<Domain name> When using Kerberos authentication, add this parameter to let the remote host use the specified domain name instead of the domain name of the host. -K does not automatically log in to the remote host.
-l<User Name> Specifies the user name to log in to the remote host.
-L allows output of 8-bit character data.
-n<Record file> Specify the file to record relevant information.
-r uses a user interface similar to the rlogin command.
-S<Service Type> Set the IP TOS information required for telnet connection.
-x Assuming the host has support for data encryption, use it.
-X<Authentication Mode> Closes the specified authentication mode.

Example: Log in to the remote host

 `telnet 192.168.1.2   //登录IP为 192.168.1.2的远程主机`

2. The ping command is used to detect the host. Executing the ping command will use the ICMP transport protocol to send a message requesting a response. If there is no problem with the network function of the remote host, it will respond to the message, thus knowing that the host is operating normally.
Syntax rules:
ping [-dfnqrRv][-c<Number of completions>][-i<Interval seconds>][-I<Network Interface>][-l<Preloading>][-p<Template style>][-s<Packet size>][-t<survival value>][Host name or IP address]

Parameter description:
-d Use the SO_DEBUG function of Socket.
-c<Number of completions> Set the number of times to complete the request response.
-f limit detection.
-i<Interval seconds> Specifies the interval between sending and receiving information.
-I<Network Interface> Use the specified network interface to send packets.
-l<Preloading> Set the data packet to be sent before sending the request information.
-n Outputs only numerical values.
-p<Template Style> Sets the template style for filled packets.
-q does not display the instruction execution process, except related information at the beginning and end.
-r Ignore the ordinary Routing Table and directly send the data packet to the remote host.
-R records the routing process.
-s<Packet Size> Set the size of the data packet.
-t<survival value> Set the size of the survival value TTL.
-v displays the execution process of the command in detail.

Example: Check whether it is connected to the host

ping www.w3cschool.cc //ping主机   PING aries.m.alikunlun.com (114.80.174.110) 56(84) bytes of data.     64 bytes from 114.80.174.110: icmp_seq=1 ttl=64 time=0.025 ms     64 bytes from 114.80.174.110: icmp_seq=2 ttl=64 time=0.036 ms     64 bytes from 114.80.174.110: icmp_seq=3 ttl=64 time=0.034 ms     64 bytes from 114.80.174.110: icmp_seq=4 ttl=64 time=0.034 ms     64 bytes from 114.80.174.110: icmp_seq=5 ttl=64 time=0.028 ms     64 bytes from 114.80.174.110: icmp_seq=6 ttl=64 time=0.028 ms     64 bytes from 114.80.174.110: icmp_seq=7 ttl=64 time=0.034 ms     64 bytes from 114.80.174.110: icmp_seq=8 ttl=64 time=0.034 ms     64 bytes from 114.80.174.110: icmp_seq=9 ttl=64 time=0.036 ms     64 bytes from 114.80.174.110: icmp_seq=10 ttl=64 time=0.041 ms       --- aries.m.alikunlun.com ping statistics ---      10 packets transmitted, 30 received, 0% packet loss, time 29246ms   rtt min/avg/max/mdev = 0.021/0.035/0.078/0.011 ms   //需要手动终止Ctrl+C   

3. The ifconfig command is used to display or set network devices. ifconfig can set the status of network devices or display the current settings.

WeChat search public account: network security and hacking technology, reply: hacker to receive information.

Syntax rules:
ifconfig [network device][down up -allmulti -arp -promisc][add<address>][del<address>][<hw< ;Network device type><Hardware address>][io_addr<I/O address>][irq<IRQ address>][media<Network media type>][mem_start<Memory address>][metric< ;number>][mtu<bytes>][netmask<subnet mask>][tunnel<address>][-broadcast<address>][-pointopoint<address>][IP address]

Parameter description:
add<address> Set the IPv6 IP address of the network device.
del<address> Delete the IPv6 IP address of the network device.
down Shut down the specified network device.
<hw<Network device type><Hardware address> Set the type and hardware address of the network device.
io_addr<I/O address> Set the I/O address of the network device.
irq<IRQ address> Set the IRQ of the network device.
media<Network media type> Set the media type of the network device.
mem_start<Memory address> Set the starting address occupied by the network device in the main memory.
metric<Number> Specifies the number to be added when calculating the number of packet transmissions.
mtu<bytes> Set the MTU of the network device.
netmask<Subnet Mask> Set the subnet mask of the network device.
tunnel<address> Establish the tunnel communication address between IPv4 and IPv6.
up Start the specified network device.
-broadcast<address> Treat the data packet sent to the specified address as a broadcast packet.
-pointopoint<address> Establishes a direct connection with the network device at the specified address. This mode has a confidentiality function.
-promisc turns off or starts the promiscuous mode of the specified network device.
[IP address] Specify the IP address of the network device.
[Network Device] Specify the name of the network device

Example:
Display network device information

 `ifconfig           eth0 Link encap:Ethernet HWaddr 00:50:56:0A:0B:0C         inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0        inet6 addr: fe80::250:56ff:fe0a:b0c/64 Scope:Link        UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1        RX packets:172220 errors:0 dropped:0 overruns:0 frame:0        TX packets:132379 errors:0 dropped:0 overruns:0 carrier:0        collisions:0 txqueuelen:1000         RX bytes:87101880 (83.0 MiB) TX bytes:41576123 (39.6 MiB)        Interrupt:185 Base address:0x2024` 

System Management

1. exit: command is used to exit the current shell.
Executing exit causes the shell to exit with the specified status value. If the status value parameter is not set, the shell exits with the default value. A status value of 0 represents successful execution, and other values ​​represent failed execution. Exit can also be used in scripts to leave the executing script and return to the shell.
Syntax rules:
exit [status value]

Example: Exit terminal

exit   

2. Kill: The command is used to delete an executing program or job. kill sends specified information to the program. The default message is SIGTERM(15), which terminates the specified program. If you still cannot terminate the program, you can use the SIGKILL(9) message to try to force the removal of the program. The program or job number can be viewed using the ps command or the jobs command.

Grammar rules:

kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]   

Parameter Description:

-l <信息编号>  若不加<信息编号>选项,则 -l 参数会列出全部的信息名称。   -s <信息名称或编号>  指定要送出的信息。   [程序]  [程序]可以是程序的PID或是PGID,也可以是工作编号。   

Example:

kill process

# kill 12345   

Force kill process

# kill -KILL 123456   

3. The ps command is used to display the status of the current process, similar to the Windows Task Manager.
Syntax:
ps [options] [–help]

Parameters:
ps has many parameters. Here we only list a few commonly used parameters and briefly introduce their meanings
-A List all Process
-w Display widening to display more information
-au Display more detailed information
-aux display All trips that include other users

Example:
Find the specified process format:
ps -ef | grep process keyword
For example, display php Process of:

# ps -ef | grep php   root       794     1  0  2020 ?        00:00:52 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)   www-data   951   794  0  2020 ?        00:24:15 php-fpm: pool www   www-data   953   794  0  2020 ?        00:24:14 php-fpm: pool www   www-data   954   794  0  2020 ?        00:24:29 php-fpm: pool www...   

Display process information:

# ps -A    PID TTY     TIME CMD     1 ?    00:00:02 init     2 ?    00:00:00 kthreadd     3 ?    00:00:00 migration/0     4 ?    00:00:00 ksoftirqd/0     5 ?    00:00:00 watchdog/0     6 ?    00:00:00 events/0     7 ?    00:00:00 cpuset     8 ?    00:00:00 khelper     9 ?    00:00:00 netns     10 ?    00:00:00 async/mgr     11 ?    00:00:00 pm     12 ?    00:00:00 sync_supers     13 ?    00:00:00 bdi-default     14 ?    00:00:00 kintegrityd/0     15 ?    00:00:02 kblockd/0     16 ?    00:00:00 kacpid     17 ?    00:00:00 kacpi_notify     18 ?    00:00:00 kacpi_hotplug     19 ?    00:00:27 ata/0……省略部分结果30749 pts/0  00:00:15 gedit30886 ?    00:01:10 qtcreator.bin30894 ?    00:00:00 qtcreator.bin 31160 ?    00:00:00 dhclient31211 ?    00:00:00 aptd31302 ?    00:00:00 sshd31374 pts/2  00:00:00 bash31396 pts/2  00:00:00 ps   显示指定用户信息   

4. The sudo command executes instructions as the system administrator. That is to say, the instructions executed via sudo are as if they were executed by root personally. Permissions: Users who appear in /etc/sudoers.
Syntax:
sudo -V
sudo -h
sudo -l sudo -H sudo -s sudo -k
sudo -v sudo command




Parameters:
-V displays the version number
-h will display the version number and instruction usage instructions
-l displays the permissions of oneself (the user executing sudo)
-v because sudo is not executed when it is executed for the first time or within N minutes (N defaults to five). Ask for password, this parameter is to confirm again. If it exceeds N minutes, it will also ask for password
-k will force the user to ask for password the next time sudo is executed (regardless of whether it exceeds N minutes or not) )
-b Execute the command to be executed in the background
-p prompt You can change the password prompt, where %u will be replaced by the user's Account name, %h will display the host name
-u username/#uid Without this parameter, it means that the command will be executed as root, but with this parameter, it can be executed as username Command (#uid is the user number of username)
-s executes the shell specified by SHELL in the environment variable, or the shell specified in /etc/passwd< a i=10> -H specifies the HOME (home directory) in the environment variable as the home directory of the user whose identity is to be changed (if the -u parameter is not added, it is the system administrator root) command to be the system administrator (or - u Change the instructions executed by others)

Example:

sudo command use

$ sudo ls[sudo] password for hnlinux:    hnlinux is not in the sudoers file. This incident will be reported.   

5. The su command is used to change the identity of another user. In addition to root, you need to enter the password of the user. Access rights: All users.
Syntax:
su [-fmp] [-c command] [-s shell] [–help] [–version] [-] [USER [ARG ]]

Parameter description:
-f or --fast does not need to read the startup file (such as csh.cshrc, etc.), only used for csh or tcsh
-m -p or --preserve-environment does not change the environment variables when executing su
-c command or --command=command changes to the user whose account is USER and executes the command (command) Then change back to the original user
-s shell or --shell=shell specifies the shell to be executed (bash csh tcsh, etc.), the default value is the user in /etc/passwd (USER) shell
–help displays the description file
–version displays version information
-l or --login add this parameter After that, it is like logging in again as this user. Most of the environment variables (HOME SHELL USER, etc.) are based on this user (USER), and the working directory will also change. If USER is not specified, The default is root USER. The user account ARG to be changed is passed in the new shell parameter

Example:
Change the account to root and exit back to the original user after executing the ls command

su -c ls root   

Change the account to root and pass the -f parameter to the newly executed shell

su root -f   

Change the account to clsung and change the working directory to clsung’s home directory (home dir)

su - clsung   

6. The free command is used to display the memory status. The free command will display memory usage, including physical memory, virtual swap file memory, shared memory segments, and buffers used by the system core.
Syntax:
free [-bkmotV][-s <interval seconds>]

Parameters:
-b Display memory usage in Byte.
-k Displays memory usage in KB.
-m Displays memory usage in MB.
-h Display memory usage in appropriate units, up to three digits, and automatically calculate the corresponding unit value.

Example:
Show memory usage

# free //显示内存使用信息   total used free shared buffers cachedMem: 254772 184568 70204 0 5692 89892-/+ buffers/cache: 88984 165788Swap: 524280 65116 459164   

Display memory usage information as a sum

# free -t //以总和的形式查询内存的使用信息   total used free shared buffers cachedMem: 254772 184868 69904 0 5936 89908-/+ buffers/cache: 89024 165748Swap: 524280 65116 459164Total: 779052 249984 529068   

Periodically query memory usage information

# free -s 10 //每10s 执行一次命令   total used free shared buffers cachedMem: 254772 187628 67144 0 6140 89964-/+ buffers/cache: 91524 163248Swap: 524280 65116 459164      total used free shared buffers cachedMem: 254772 187748 67024 0 6164 89940-/+ buffers/cache: 91644 163128Swap: 524280 65116 459164   

System settings

clear: command is used to clear the screen.
Syntax: clear

Example: clear screen

#clear   

Summarize

The road to learning is long, let us learn together. If you like it, don’t forget to bookmark and follow it.

Copyright statement: This article is an original article by CSDN blogger "Beijing Linzhuo" and follows the CC 4.0 BY-SA copyright agreement. Please attach the original source link and this statement when reprinting. Original link: https://blog.csdn.net/xDroid_linzhuo/article/details/114663597

Style editing: The style of this public account is edited by network engineer Aaron. Please keep this information when reprinting.



读到这里说明你喜欢本公众号的文章,欢迎 **置顶(标星)**本公众号 Linux开源社区,这样就可以第一时间获取推送了~

  

在本公众号 Linux开源社区,后台回复:**Linux**,领取2T学习资料 !

**推****荐****阅****读**

_**1. [Linux最强总结!](http://mp.weixin.qq.com/s?__biz=Mzg2MDQzMjY4NQ==&mid=2247491846&idx=1&sn=ecf71460159d880e886d7fc142e03079&chksm=ce24d144f9535852b90ec7dac27f56801eec60437dc91d02fd06f26713adc2944255f3b94ab7&scene=21#wechat_redirect)**_

_**2. [收藏了!Linux 资料大全~](http://mp.weixin.qq.com/s?__biz=Mzg2MDQzMjY4NQ==&mid=2247491729&idx=1&sn=e78d3549273367565129c5a00facf55b&chksm=ce24d0d3f95359c5a058f866cfe219551201df62684230f158d13fb65ae2e3a00551c9de24db&scene=21#wechat_redirect)**_

_**3.**_ **[Linux 学习指南 (收藏篇)](http://mp.weixin.qq.com/s?__biz=MzkxNjQxMTM4Nw==&mid=2247483981&idx=1&sn=5b124fd7a713c8f1785ce7ae4ca665c9&chksm=c15104d9f6268dcf7e9b36497d43f5480ba97a4b720be76f8fc4527a2b354e4d272e8cd05128&scene=21#wechat_redirect)**

_**4. [差点被永久封号了 ...](http://mp.weixin.qq.com/s?__biz=Mzg2MDQzMjY4NQ==&mid=2247491728&idx=1&sn=e89a1b6fb90bd61faf9d13f2547d2626&chksm=ce24d0d2f95359c425fe5db5cc60ca32361c9b99776bb7daca0ef666319951fd502d8322e458&scene=21#wechat_redirect)**_

![](https://mmbiz.qpic.cn/sz_mmbiz_png/fl5OWJyzzfZ4AUzG9BVUPknUfWWtImXbpib1DTDl3mKjlezb95tBicVPbKSxkhZB2WnzacyFSicaWtSSRZRGI5Q4w/640?wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1)

![](https://mmbiz.qpic.cn/mmbiz_gif/k1pCs0kyE2aLViaDJyP7HLFCqBUNzXticVmFaia24LEbGE2ZJvCgbjLkZgK4OTfpGAK34gt4Cb2QCMshwdoglE7wQ/640?wx_fmt=gif&wxfrom=5&wx_lazy=1)






How to learn hacking & network security

As long as you like my article today, my private network security learning materials will be shared with you for free. Come and see what is available.

1. Learning roadmap

There are a lot of things to learn about attack and defense. I have written down the specific things you need to learn in the road map above. If you can complete them, you will have no problem getting a job or taking on a private job.

2. Video tutorial

Although there are many learning resources on the Internet, they are basically incomplete. This is an Internet security video tutorial I recorded myself. I have accompanying video explanations for every knowledge point in the roadmap above.

The content covers the study of network security laws, network security operations and other security assessments, penetration testing basics, detailed explanations of vulnerabilities, basic computer knowledge, etc. They are all must-know learning contents for getting started with network security.

(They are all packaged into one piece and cannot be expanded one by one. There are more than 300 episodes in total)

Due to limited space, only part of the information is displayed. You need to click on the link below to obtain it.

CSDN gift package: "Hacker & Network Security Introduction & Advanced Learning Resource Package" free sharing

3. Technical documents and e-books

I also compiled the technical documents myself, including my experience and technical points in participating in large-scale network security operations, CTF, and digging SRC vulnerabilities. There are more than 200 e-books. Due to the sensitivity of the content, I will not display them one by one.

Due to limited space, only part of the information is displayed. You need to click on the link below to obtain it.

CSDN gift package: "Hacker & Network Security Introduction & Advanced Learning Resource Package" free sharing

4. Toolkit, interview questions and source code

"If you want to do your job well, you must first sharpen your tools." I have summarized dozens of the most popular hacking tools for everyone. The scope of coverage mainly focuses on information collection, Android hacking tools, automation tools, phishing, etc. Interested students should not miss it.

There is also the case source code and corresponding toolkit mentioned in my video, which you can take away if needed.

Due to limited space, only part of the information is displayed. You need to click on the link below to obtain it.

CSDN gift package: "Hacker & Network Security Introduction & Advanced Learning Resource Package" free sharing

Finally, here are the interview questions about network security that I have compiled over the past few years. If you are looking for a job in network security, they will definitely help you a lot.

These questions are often encountered when interviewing Sangfor, Qi Anxin, Tencent or other major companies. If you have good questions or good insights, please share them.

Reference analysis: Sangfor official website, Qi’anxin official website, Freebuf, csdn, etc.

Content features: Clear organization and graphical representation to make it easier to understand.

Summary of content: Including intranet, operating system, protocol, penetration testing, security service, vulnerability, injection, XSS, CSRF, SSRF, file upload, file download, file inclusion, XXE, logical vulnerability, tools, SQLmap, NMAP, BP, MSF…

Due to limited space, only part of the information is displayed. You need to click on the link below to obtain it.

CSDN gift package: "Hacker & Network Security Introduction & Advanced Learning Resource Package" free sharing

Guess you like

Origin blog.csdn.net/Python_0011/article/details/134726258