Linux知识汇总

简介:

1)分区目的:安全性和读写性能,保护关键分区内容;

2)/usr: user app存放,

3)/var:记录改变的文件,日志

4)查看swap用量方法:

     free;

     swapon -s

     cat /etc/proc/swaps

5)释放cache:

     echo 1/2/3 > /proc/sys/vm/drop_cache     1-page, 2-inode, 3-all

1 释放缓存的文件内容
2 释放缓存的目录信息
3 同时释放缓存的目录信息和文件内容

6)删除swap分区方法:

      swap off -> /etc/fstab中删除

7#)linux 内存管理:

     linux读取数据的基本方法是内核先把数据,例如文件或程序从磁盘加载到内存,之后CPU去内存读取,写入数据的方法是cpu把数据先写进内存,再由内存写入到磁盘,因为内存的读取速度比磁盘要快得多,所以buffer/cache概念诞生, 他们都是内存中分出的高速空间,虽然他们可以不止应用于内存:

     读: cache会存放系统读取过的数据,如果再用他们,直接从cache读,数据使用完后,也不会立即释放回磁盘,时间久了内存占用就会加大,这时swap概念诞生,用硬盘模拟内存,如果物理内存紧张,会把内存中暂时不用的内存页面交换到swap分区。

     写: cpu把数据先写进buffer,积累到一定的量,集中写入磁盘。

8#) 内存分页与分段:

9)/proc的文件都在内存,不占用硬盘空间,类似注册表。

10#)禁ping的方法:

        1. echo 1> /proc/sys/net/ipv4/icmp_echo_ignore_all

        2. iptables实现:

11)关机前查看的事项:who/netstat/ps-aux/df -h

12)/etc/inittab 里设置runlevel

13)chgrp设置组属性,chmod改变文件权限,chown改变文件所有者

14) x权限对目录是cd,对文件是是否可运行。

15) 在用户的所属目录下,即使该用户对某个文件无权限,也要按照目录权限来执行。

16) ls -i查看inode, ls-d仅列出目录名

17) head -n, tail -n +100->看100行以后的,tail -n 10->最后10行

18) 文件的atime: access time,例如cd,不改变任何数据和属性

                   mtime: modify time, 例如vi, 内容修改时间

                   ctime: change time, 改变inode的时间,例如该权限,所属用户组

19)umask是对默认权限的修改,root是022,user是002, 例如root用户创建文件,默认都是777,但是真实的是777-022, 减去了g和o的1个权限。

20)查看raid: cat/proc/mdstat

21)裸盘加入文件系统, raid->fdisk->mk2fs->mount

22)chattr设置文件隐藏属性,chattr+i文件不能删除。

23)显示文件隐藏属性: lsattr

24) file命令:查看某个文件是data还是acs2码

25)which查找命令路径

26) whereis locate查找文件比find要快,是因为find是查询磁盘,他们两个是查询一个linux数据库,位于/var/lib/mlocate, 更新这个数据库的命令是update db, 配置文件在/etc/update.conf

27)进入目录或者执行文件要有x权限。

28)文件系统的作用是配合相应的OS来布置和识别数据,格式化的目的是为了做成fs可读取的格式。

29)inode是存放文件存储位置的文件,例如文件的block在硬盘的1,5,10扇区,inode就记录了这个列表以及文件属性,所属组,size,acm time,默认128KB,dentry文件记录了文件的文件名,路径和inode号,在读取文件时,是先通过文件名读取dentry,然后找到inode,再找到block,一个或多个dentry指向inode,一个文件只占一个inode,但是一个inode可以指向多个文件。

30)软链接硬链接区别:

      根本区别在于inode和block文件,软链接自己占了一组新的inode和block, 软链接->inode->block->源文件->源文件inode->源文件block, 虽然block只存放文件名,硬链接没有自己的iblock,与源文件公用一个inode, 硬链接/源文件->inode->block ,硬链接不能跨分区和fs。

       linux inode有一个数据结构叫i_count,是1,2,3的阿拉伯数字,意为inode链接的介质计数器,当变为0时,文件block数据才真正删除,所以看上一段的关系,硬链接的i_count为2,软链接为1,删除元数据,软链接就不能读了,硬链接还可以读取,因为i_link只是变为了1,另外硬链接不占空间,软链接要占一个block的空间来存放软链接的文件名。

31)inode bitmap是inode的一个数据结构,用来记录linux中未使用的inode。

        block bitmap用来记录哪些block是空的。

32)df-T 显示fs, df-i显示inode.

32-1) fdisk分区后不重启生效分区表:fdisk->partprobe

32-2) 大于2T的分区用parted代替fdisk命令。

32-3)查看磁盘健康命令:

           badblocks -v /dev/sda

           fsck 命令修复

32-4) 内核读取设备的原则是按照major和minor区分,major是不同设备类型,minor是同一设备类型的不同响,例如ls查看/dev/可以看到sd*的major是8,sda的minor是1,sdb是2.

32-5)转化问系统ext2到ext3命令:tune2fs -j <分区>

33)开机挂载: /etc/fstab里写入 挂载磁盘要用uuuid,因为sd名字可能会变,实际是在/etc/mtab生效。

       /dev/sda6               /mnt/winE               vfat    defaults        0 0

33-2) 查询uuuid方法:

           blkid (uuuid写在一起,没有区分)

           ls -l /dev/disk/by-uuid

33-3)查看一个硬盘的详细信息比如mount点,label,block使用,inode使用可以用命令dump2fs /dev/sda

34)人为制作一个大文件: dd if=/dev/zero of=/home/123  bs=1024 count=10, 制作一个10M文件

35)mount命令: mount [-t vfstype] [-o options] device dir 

  -o options 主要用来描述设备或档案的挂接方式。常用的参数有:

  loop:用来把一个文件当成硬盘分区挂接上系统

  ro:采用只读方式挂接设备

  rw:采用读写方式挂接设备

36 ) 创建一个swap分区:

        1. mkswap /home/123

        2. swapon /home/123

        3. swapon -s 查看swap

37) Linux下备份恢复命令:

       dump/restore

       find |cpio > /mnt         /cpio -idvc < x.cpio

       dd if = of= bs= count=

       tar

38) /etc/passwd存放系统存在的用户,/etc/shadow存放相应的密码

39#)setfacl getfacl

40) 查询UID与GID方法:id <用户名>

41)linux登陆过什么用户: last

42) at命令用法:

      at <时间> -> 写入命令

      ctrl+D退出

       atq查看at命令队列

       at -c <队列值> 编辑

43#)LINUX中程序生成的过程:

         首先内核会调用fork复制该进程的父进程到内存,开辟一块空间,复制的内容包括环境变量程序参数等,是一个除了pid与父进程一模一样的进程,返回值是一个新的pid以及ppid,然后调用exec函数读取新程序的指令环境变量等,成为新的进程。

44)nohup与&

       放在命令结尾,nohup表示即使退出当前shell也回继续执行,&表示在后台执行,不在前台显示,但是退出shell也就结束了,一般配合使用

45)crtl +Z是暂停,jobs命令可以查看暂停中的命令,fg[号码]可以调回暂停的中的命令。

46)ps -l查看本shell,ps-aux是查看所有shell的。

47)孤儿进程与僵尸进程:

        正常进程结束:一个进程结束后,父进程需要调用wait()函数取得子进程的状态并终止。

         孤儿进程:父进程退出,子进程还在,这种情况会由init接管,并有init终止进程。

          僵尸进程:子进程结束时父进程没有调用wait函数来结束,可以通过杀死父进程来解决。

48)top命令中按p查看cpu,按m查看memory,按r重置(renice)进程的nice值。

49)改变进程的优先级方法:

        进程优先级是有pr+nice值决定的,pr是系统赋予的,默认20,nice值范围 -20~19

         改变nice的方法:

         1.nice -n <number> vi ,给vi这个命令直接赋值

         2. renice <number> <pid> 

         3. top中输入r

50)  dmesg命令的输出是内核启动过程中检测的系统硬件信息。

51)vmstat输出的si so是表示与swap分区交互的信息,bi bo是对硬盘读写的信息。

52)通过free命令可以看到真实的内存使用是与buffer cache相关,空闲的要加上他们,使用的要减去他们

53)/proc下的信息都是与内存运行相关的。

       /proc/<pid>下的文件。cmdline代表真实的指令串,enviroment代表环境标量,exec代表程序的路径

54)查询进程调用命令:

        1. fuser -m -u <目录> 查看pid(m) 和用户(u), 另外fuser -k还可以杀死目录占用的进程,例如强制umount fuser -k /mnt

        2.lsof -u <user> 查看user打开的进程

        3. lsof -d <目录> 查看目录打开的进程

        4. lsof -p <port> 查看port调用的进程

        5,pidof <程序名字> 查看程序的pid

55)查看程序调用的进程 线程

            1. top -H -p <pid> 显示的是该pid下的线程。

            2. pstree -p <pid> 显示该pid下的子进程,很直观

            3. cat /proc/<pid>/status, 查看进程状态,能看到进程和线程的个数

            4. strace -p <pid> 查看pid调用的详细过程。     

      


56)查看启动级别: runlevel, who -r, initrd文件

57)find按不同层级文件夹查询:

 在root目录及其子目录下查找passwd文件。

# find / -name passwd
./usr/share/doc/nss_ldap-253/pam.d/passwd
./usr/bin/passwd
./etc/pam.d/passwd
./etc/passwd

在root目录及其1层深的子目录中查找passwd. (例如root — level 1, and one sub-directory — level 2)

# find -maxdepth 2 -name passwd
./etc/passwd

在root目录下及其最大两层深度的子目录中查找passwd文件. (例如 root — level 1, and two sub-directories — level 2 and 3 )

# find / -maxdepth 3 -name passwd
./usr/bin/passwd
./etc/pam.d/passwd
./etc/passwd

在第二层子目录和第四层子目录之间查找passwd文件。

# find -mindepth 3 -maxdepth 5 -name passwd
./usr/bin/passwd
./etc/pam.d/passwd




    本文转自UVN2015  51CTO博客,原文链接:http://blog.51cto.com/10851095/1944555,如需转载请自行联系原作者




相关文章
|
网络协议 Linux 网络安全
Linux基础知识
配置Raid5(1) 添加5块8G硬盘,以root账户登录,将上述5块硬盘都只划分一个主分区, 打印分区情况。图1:首先打开虚拟机,恢复快照 图2:如图所示,已恢复快照图3:关机虚拟机,然后选择编辑此虚拟机图4:在虚拟机设置窗口,选择添加选项图5:在添加硬件向导窗口,选择硬盘选项,然后单击下一步继续图6:在添加硬件向导窗口,选择SCSI选项,然后单击下一步继续图7:在添加硬件向导窗口,选择创建新虚拟磁盘选项,然后单击下一步继续图8:在添加硬件向导窗口,设置磁盘大小为8G,然后单击下一步继续图9:根据图4、5、6、7、8的步骤再添加4块磁盘图10:开启虚拟机,以将raid5格式化为ext4文件系
Linux基础知识
|
消息中间件 存储 网络协议
对不起,学会这些 Linux 知识后,我有点飘(一)
UNIX 是一个交互式系统,用于同时处理多进程和多用户同时在线。
对不起,学会这些 Linux 知识后,我有点飘(一)
|
Linux
linux基础知识
适用于Linux基础小白
177 0
|
Linux Ubuntu Unix
Linux初级知识
Linux内核创始人 : 芬兰人李纳斯.托瓦兹Linux是一套免费使用、自由传播的类unix操作系统特点是多用户、多任务、支持多线程和多CPU的系统Linux的发行版:比较知名的有Ubuntu、Redhat、Centos、FedoraLinux应用领域:通常服务器使用LAMP(Linux+Apa...
1027 0
|
IDE Linux 开发工具