学习笔记三:基础篇Linux基础

时间:2024-01-27 07:40:44

Linux基础

直接选择排序>快速排序>基数排序>归并排序 >堆排序>Shell排序>冒泡排序=冒泡排序2 =直接插入排序

一、Linux磁盘分区表示

Linux中将硬盘、分区等设备均表示为文件

例如:/dev/hda5

  • dev表示硬件设备文件所在的目录

  • hd表示IDE设备,sd则表示SCSI设备 a代表硬盘的序列号,以字母a、b、c表示 5表示分区的顺序号,以数字1、2、3表示,主分区从1开始到4,逻辑分区从5开始

二、文件系统类型

  1. 默认使用的: EXT4:第四代扩展文件系统 SWAP:交换文件系统

  2. 支持的其他文件系统类型: FAT16、FAT32、NTFS、XFS、JFS... ...

三、Linux根目录下各个文件夹的作用

  • /bin 二进制可执行命令,/ b i n目录包含了引导启动所需的命令或普通用户可能用的命令(可能在引导启动后)。这些命令都是二进制文件的可执行程序( b i n是b i n a r y - -二进制的简称),多是系统中重要的系统文件。

  • /dev 设备特殊文件,即设备驱动程序,用户通过这些文件访问外部设备。比如,用户可以通过访问/dev/mouse来访问鼠标的输入,就像访问其他文件一样。 /etc 系统管理和配置文件,其中包括了用户信息文件/etc/passwd,系统初始化文件/etc/rc等。l i n u x正是*这些文件才得以正常地运行。

  • /etc/rc.d 启动的配置文件和脚本

  • /home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示

  • /lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件,/lib目录是根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文 件。这些文件包含了可被许多程序共享的代码,以避免每个程序都包含有相同的子程序的副本,故可以使得可执行文件变得更小,节省空间。

  • /sbin 系统管理命令,这里存放的是系统管理员使用的管理程序 ,/sbin目录类似/bin ,也用于存储二进制文件。因为其中的大部分文件多是系统管理员使用的基本的系统程序,所以虽然普通用户必要且允许时可以使用,但一般不给普通用户使用。

  • /tmp 公用的临时文件存储点,目录存放程序在运行时产生的信息和数据。但在引导启动后,运行的程序最好使用 /var/tmp来代替/tmp ,因为前者可能拥有一个更大的磁盘空间。

  • /root 系统管理员的主目录

  • /mnt 系统提供这个目录是让用户临时挂载其他的文件系统。/ mnt目录是系统管理员临时安装( mount )文件系统的安装点。程序并不自动支持安装到 /mnt 。/mnt 下面可以分为许多子目录,例如/mnt/dosa 可能是使用msdos文件系统的软驱,而/mnt/exta 可能是使用e x t 2文件系统的软驱,/mnt/cdrom 光驱等。

  • /lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里

  • /proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。

  • /var 某些大文件的溢出区,比方说各种服务的日志文件

  • /boot 目录存放引导加载器(bootstrap loader)使用的文件,如l i l o,核心映像也经常放在这里,而不是放在根目录中。但是如果有许多核心映像,这个目录就可能变得很大,这时使用单独的文件系统会更好一些。还有一点要注意的是,要确保核心映像必须在i d e硬盘的前1 0 2 4柱面内。

  • /usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:

    1. /usr/x11r6 存放x window的目录

    2. /usr/bin 众多的应用程序

    3. /usr/sbin 超级用户的一些管理程序

    4. /usr/doc linux文档

    5. /usr/include linux下开发和编译应用程序所需要的头文件

    6. /usr/lib 常用的动态链接库和软件包的配置文件

    7. /usr/man 帮助文档

    8. /usr/src 源代码,linux内核的源代码就放在/usr/src/linux里

    9. /usr/local/bin 本地增加的命令

    10. /usr/local/lib 本地增加的库根文件系统

四、Linux快捷键和命令行

  1. Ctrl+Alt+F1 图形化界面

  2. Ctrl+Alt+F2 切换到字符命令行界面

  3. 命令的执行依赖于解释器程序(例如:/bin/bash)

  4. 命令分类:

    • 内部命令:属于shell解释器的一部分

    • 外部命令:独立于shell解释器之外的程序文件

  5. 命令格式:命令字 [选项] [参数]

    • 选项:用于调节命令的具体功能

    • 以“-”引导短格式选项(单个字符),例如“-l”

    • 以“--”引导长格式选项(多个字符),例如“--color”

    • 多个短格式选项可以写在一起,只用一个“-”引导,例如“-al”

  6. Ctrl+U 清空至行首 ;+K 清空至行尾 ;+L 清屏 ;+C 取消此次命令编辑

  7. --help 查找某个命令的帮助

  8. uname -r 查看系统内核 ;

    • -a 查看内核详细信息

  9. which +某个命令 查询命令做关联的目录

  10. hostname 查看当前主机名

  11. ifconfig 查看ip地址

  12. ls -l 查看当前目录文件 -R 递归查看 rwx分别代表读写可执行 l代表链接文件(相当于快捷方式) 如:rwxr-xr- - 每三个一组从左到右分别代表 该文件创建者权限、创建者用户组中其他用户权限、其他普通用户权限

  13. chmod 权限数字(如777) 文件名 其中r为4,w为2,x为1

  14. cat /proc/cpuinfo 查看cpu信息

  15. cat /proc/meminfo 查看内存信息

  16. halt 、shutdown -h now 、poweroff 关机

  17. reboot、shutdown -r now 重启

  18. du [选项] [目录或文件名] 统计目录及文件的空间占用情况

    • -a:统计时包括所有文件,而不是只统计目录 ;

    • -h:以更容读的字节单位(K、M等)显示信息 ;

    • -s:只统计每个参数所占用空间总的大小 ;

  19. mkdir [-p] [/路径/] [目录名] 创建新的目录

    • [-p] 是递归创建

  20. touch 文件名... 新建空文件,或更新时间标记

  21. ln [-s] [源文件或目录...] [链接文件或目标目录] 创建连接文件

  22. cp 复制文件或目录

    • -r:递归复制整个目录树 ;

    • -p:保持原文件的属性不变;

    • -f:强制覆盖目标同名文件和目录;

    • -i:需要覆盖文件或目录时进行提醒

  23. rm 删除文件或目录

    • -f:强行删除文件或目录,不进行提醒 ;

    • -i:删除文件后目录时提醒用户确认 ;

    • -r:递归删除

  24. mv 移动文件或目录

  25. find 查找文件或目录

    • -name:按文件名称查找;

    • -size:按文件大小查找;

    • -user:按文件属主查找;

    • -type:按文件类型查找

  26. cat 显示出文件的全部内容

    • -n 给输出的所有行加上编号

    • cat 1 2 > 3 合并文件

  27. wc 统计文件中单词数量、字节数、行数

    • -l 统计行数

    • -w 统计单词数

    • -c 统计字符数

    • wc sdxh.txt 会出现 2 4 26 其中2是行数,4是单词数,26是字符数

    • history 查看历史命令

  28. 压缩命令

    • gzip 文件名 压缩文件 格式为后缀有.gz

    • bzip2 文件名 压缩成的文件名 格式为后缀有.bz2 它相对于gzip压缩率更高

    • -d 释放压缩文件

  29. tar 归档命令,释放归档文件,没有压缩功能

    • 格式:tar 选项 归档文件名 原文件或目录

    • -c 创建归档文件 扩展名为.tar

    • -v 输出详细信息

    • -f 表示使用归档文件 如:-cvf 创建归档文件

    • tar -cvf 4.tar 1 2 3 将文件1 2 3打包归档为4.tar

    • tar -xvf 4.tar 解包归档文件4.tar 如:-xvf 解包归档文件

    • -x 解开归档文件

    • -t 列表查看包内文件(不释放解包)

    • tar -tvf 4.tar -r 追加TAR文件至归档结尾

    • tar -rvf 4.tar 5 把5加入4.tar

    • -p 解包时保留原始文件及目录的权限

    • -C 解包时指定释放的目标文件夹

    • -z 调用gzip程序 进行解压或压缩

    • -j 调用bzip2程序 进行解压或压缩

    • 如:tar -cvzf test.tar.gz 或 tar -xvzf test.tar.gz -C /user/src

  30. apt-get install xxx(软件名)连网条件下从资源库安装软件包资源

  31. uesradd 添加用户账号

    • -u:指定UID标记号

    • -e:指定账号失效时间

    • -g:指定用户的基本组名(或UID号)

    • -G:指定附加组名(或GID号)

    • -M:不为用户建立并初始化宿主目录

    • -s:指定用户的登录shell

  32. su 切换用户

  33. userdel 删除用户账号 加-r连同家目录一起删除

五、vi编辑器

  1. 基本语法:vi [-options] [+[n]] [file]

    • -r 用于恢复系统突然崩溃时正在编辑的文件

    • -R 用于以只读方式打开文件

    • +n 用来指明进入vi后直接位于文件的第n行,如果不指定n,则位于最后一行

  2. :set nu 显示行号

  3. 搜索和替换:在命令模式下

    • /string 向前搜索指定字符串

    • n 搜索指定字符串的下一个出现位置

    • :%s/old/new/g 全文替换指定字符串

    • :n1,n2s/old/new/g 在一定范围内替换指定字符串

六、安装、升级、卸载RPM包

  1. 安装或升级RPM软件

    • rpm [选项] RPM包软件…

    • 用法:不同选项适用于不同情况

      • -i:安装一个新的rpm包

      • -U:升级某个rpm软件,若未安装则进行安装

      • -F:更新某个rpm软件,若未安装则放弃安装

      • -e 软件名 :卸载指定RPM软件

      • -vh :显示安装进程

七、Linux系统网络配置

  1. ifconfig 查看所有活动的网络接口信息,命令后可以加网卡类型来指定

  2. 网卡类型:

    • eth0:以太网

    • lo:(虚拟)环回设备

    • ppp0:使用PPP协议的串口设备(通常指调制解调器)

    • tr0:令牌环

    • fddi0:光纤

  3. route 设置路由记录

    • 删除路由表中的默认网关记录:route del default gw IP地址

    • 向路由表中添加默认网关记录:route add default IP地址

    • 添加到指定网段的路由记录:route add -net 网段地址/24 gw IP地址

    • 删除指定网段的路由记录:route del -net 网段地址

  4. 网络接口配置文件:/etc/sysconfig/network-scripts/ 目录下

    • ifcfg-eth0:第一块以太网卡配置文件

    • ifcfg-eth1:第二块以太网卡配置文件

  5. hostname 查看主机名

  6. netstat 查看网络连接情况

    • -a:显示所有活动链接

    • -n:以数字形式显示

    • -p:显示进程信息

    • -t:查看TCP协议相关信息

    • -u:查看UDP协议相关信息

    • -r:显示路由表信息

    • 例:netstat -anpt | grep:21 查看21端口信息

  7. 重启network网络服务:service network restart

  8. 禁用、启用端口:

    • ifdown eth0

    • ifup eth0