相对路径和绝对路径:

绝对路径:
从根开始,开始有一个/目录
ls /etc/sysconfig/
地球重庆城市管理职业学院 这种就是绝对路径 放在任何位置都可以找到的就是绝对路径

比如相对于我们来说信息中心是一个相对路径 因为除了我们以外 其他人都不知道城管校的信息中心 因为还可能去其他学校信息中心 这就是相对

相对路径:
[root@shiyingqi ~]# mkdir shiyingqi-p
[root@shiyingqi ~]# cd shiyingqi #相对路径
[root@shiyingqi shiyingqi]# cd ../ #相对路径
[root@shiyingqi ~]# cd /root/shiyingqi#绝对路径

无效的:
cd shiyingqi #相对路径
[root@shiyingqi ~]# cd shiyingqi #相对路径
[root@shiyingqi shiyingqi]# tree -L 1 /
/
├── bin -> usr/bin #/bin等同/usr/bin #普通用户二进制命令目录。
├── sbin -> usr/sbin #/sbin/等同/usr/sbin #root管理员使用的二进制命令目录
├── boot #内核程序及引导程序所在的目录,100M
├── dev #设备目录(光驱 磁盘)
├── etc #系统基础服务配置文件所在的目录(yum rpm安装的软件)
├── home #普通用户的家目录(三间茅草房)
├── root #管理员的家目录(皇宫)
├── lib -> usr/lib #库文件所在目录
├── lib64 -> usr/lib64 #库文件所在目录
├── media #媒体 光驱等挂载点
├── mnt #临时的挂载点(u)
├── opt #第三方程序目录
├── proc #虚拟的文件系统,内核和进程信息的目录。汽车仪表盘。
汽车仪表盘:车况 油耗 跑了公里数 速度
├── sys #虚拟的文件系统
├── tmp #临时目录,所有用户都可以进入这里做各种操作(黑客跳板目录),监控目录。
├── usr #c:/program file 应用程序所在目录
└── var #数据变化的目录,日志文件存放目录。

重要配置文件:

  1. /etc/sysconfig/network-scripts/ifcfg-eth0:网卡配置文件
    [root@shiyingqi shiyingqi]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
    HWADDR=00:0C:29:C4:6F:D9 #MAC地址 网卡的物理地址
    TYPE=Ethernet #以太网
    BOOTPROTO=none #
    IPADDR=10.0.0.129 #IP地址
    PREFIX=24 #子网掩码
    GATEWAY=10.0.0.254 #网关
    DNS1=223.5.5.5 #DNS1 域名解析为IP。
    DNS2=202.106.0.20 #DNS2 域名解析为IP。
    NAME=eth1 #设备名
    UUID=cf363dd6-05ce-37d3-8caa-242f64883a8f #唯一标识
    ONBOOT=yes #网卡随着linux开启启动
  2. /etc/resolv.conf:Linux系统过时的DNS客户端配置文件
    [root@shiyingqi shiyingqi]# cat /etc/resolv.conf

Generated by NetworkManager

nameserver 223.5.5.5
nameserver 202.106.0.20
重启网卡时候,网卡配置文件里的DNS设置会覆盖这里的设置。
配置客户端DNS有两种方法;
1.网卡配置文件里设置(优先)
2.直接在/etc/resolv.conf里配置(很容易被覆盖)

  1. /etc/hostname:主机名配置文件
    查主机名:
    [root@shiyingqi ~]# hostname
    shiyingqi
    [root@shiyingqi ~]# uname -n
    shiyingqi

修改主机名:
1.nmtui
2.hostnamectl set-hostname shiyingqi(重新连接生效)
3.vim /etc/hostname (重启生效)

  1. /etc/hosts:系统本地的DNS解析文件(局域网 域名和IP解析文件)
    10.0.0.129 shiyingqi
    10.0.0.129 shiyingqi www.shiyingqi.com www.baidu.com

内部测试,临时访问。服务器之间联系会用主机名的形式

  1. /etc/fstab:配置开机设备自动挂载的文件
    危险的文件容易导致linux无法启动

特殊知识点:linux设备 直接插上去 用不了。

[root@shiyingqi ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@shiyingqi ~]# ls /mnt/
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL

重启,挂载就失效。

/etc/fstab 永久挂载。
[root@shiyingqi ~]# df -h #查看挂载结果
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 2.0G 12M 2.0G 1% /run
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/mapper/centos-root 17G 1.9G 16G 11% / #自动挂载
/dev/sda1 1014M 138M 877M 14% /boot #自动挂载了
tmpfs 394M 0 394M 0% /run/user/0
/dev/sr0 4.5G 4.5G 0 100% /mnt #挂载结果

/etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0

  1. /etc/rc.local:存放开机自启动程序命令的文件

软连接到/etc/rc.d/rc.local
[root@shiyingqi ~]# ls -l /etc/rc.local
lrwxrwxrwx. 1 root root 13 5月 7 09:23 /etc/rc.local -> rc.d/rc.local
[root@shiyingqi ~]# ls /etc/rc.d/rc.local -l
-rw-r—r—. 1 root root 473 4月 1 2020 /etc/rc.d/rc.local
默认不能用,必须给权限。
[root@shiyingqi ~]# chmod +x /etc/rc.d/rc.local #给执行权限。
[root@shiyingqi ~]# ls /etc/rc.d/rc.local -l
-rwxr-xr-x. 1 root root 473 4月 1 2020 /etc/rc.d/rc.local

7./etc/issue
主要是登录信息显示 和自定义 了解即可
\S
Kernel \r on an \m

[root@shiyingqi ~]# >/etc/issue #清空内容
[root@shiyingqi ~]# cat /etc/issue

  1. /etc/motd:配置用户登录系统之后显示提示内容的文件
    [root@shiyingqi ~]# echo “这是从重庆市城市管理职业学院信息中心” >/etc/motd
    [root@shiyingqi ~]# cat /etc/motd
    这是重庆城市管理职业学院信息中心的服务器 在开机的时候显示这句话
    用户:提醒自己。。提醒使用服务器人员。

9./etc/redhat-release:声明Red Hat版本号和名称信息的文件
[root@shiyingqi ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
[root@shiyingqi ~]# uname -r #内核
3.10.0-1127.el7.x86_64
[root@shiyingqi ~]# uname -n
shiyingqi
[root@shiyingqi ~]# uname -a
Linux shiyingqi 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

  1. /etc/sysctl.conf:Linux内核参数设置文件(系统优化)* 调优
  1. 对于内核调优我收藏了一些大佬的文件 可以参考:
  2. 内核panic时,1秒后自动重启
  3. kernel.panic = 1
  4. 允许更多的PIDs (减少滚动翻转问题); may break some programs 32768
  5. kernel.pid_max = 32768
  6. 内核所允许的最大共享内存段的大小(bytes
  7. kernel.shmmax = 4294967296
  8. 在任何给定时刻,系统上可以使用的共享内存的总量(pages
  9. kernel.shmall = 1073741824
  10. 设定程序core时生成的文件名格式
  11. kernel.core_pattern = core_%e
  12. 当发生oom时,自动转换为panic
  13. vm.panic_on_oom = 1
  14. 表示强制Linux VM最低保留多少空闲内存(Kbytes
  15. vm.min_free_kbytes = 1048576
  16. 该值高于100,则将导致内核倾向于回收directoryinode cache
  17. vm.vfs_cache_pressure = 250
  18. 表示系统进行交换行为的程度,数值(0-100)越高,越可能发生磁盘交换
  19. vm.swappiness = 20
  20. 仅用10%做为系统cache
  21. vm.dirty_ratio = 10
  22. 增加系统文件描述符限制 2^20-1
  23. fs.file-max = 1048575
  24. listen()的默认参数,挂起请求的最大数量,默认128
  25. net.core.somaxconn = 1024
  26. 增加Linux自动调整TCP缓冲区限制
  27. net.core.wmem_default = 8388608
  28. net.core.rmem_default = 8388608
  29. net.core.rmem_max = 16777216
  30. net.core.wmem_max = 16777216
  31. 进入包的最大设备队列.默认是300
  32. net.core.netdev_max_backlog = 2000
  33. 开启SYN洪水攻击保护
  34. net.ipv4.tcp_syncookies = 1
  35. 开启并记录欺骗,源路由和重定向包
  36. net.ipv4.conf.all.log_martians = 1
  37. net.ipv4.conf.default.log_martians = 1
  38. 处理无源路由的包
  39. net.ipv4.conf.all.accept_source_route = 0
  40. net.ipv4.conf.default.accept_source_route = 0
  41. 开启反向路径过滤
  42. net.ipv4.conf.all.rp_filter = 1
  43. net.ipv4.conf.default.rp_filter = 1
  44. 确保无人能修改路由表
  45. net.ipv4.conf.all.accept_redirects = 0
  46. net.ipv4.conf.default.accept_redirects = 0
  47. net.ipv4.conf.all.secure_redirects = 0
  48. net.ipv4.conf.default.secure_redirects = 0
  49. 增加系统IP端口限制
  50. net.ipv4.ip_local_port_range = 9000 65533
  51. TTL
  52. net.ipv4.ip_default_ttl = 64
  53. 增加TCP最大缓冲区大小
  54. net.ipv4.tcp_rmem = 4096 87380 8388608
  55. net.ipv4.tcp_wmem = 4096 32768 8388608
  56. Tcp自动窗口
  57. net.ipv4.tcp_window_scaling = 1
  58. 进入SYN包的最大请求队列.默认1024
  59. net.ipv4.tcp_max_syn_backlog = 8192
  60. 打开TIME-WAIT套接字重用功能,对于存在大量连接的Web服务器非常有效。
  61. net.ipv4.tcp_tw_recycle = 1
  62. net.ipv4.tcp_tw_reuse = 0
  63. 表示是否启用以一种比超时重发更精确的方法(请参阅 RFC 1323)来启用对 RTT 的计算;为了实现更好的性能应该启用这个选项
  64. net.ipv4.tcp_timestamps = 0
  65. 表示本机向外发起TCP SYN连接超时重传的次数
  66. net.ipv4.tcp_syn_retries = 2
  67. net.ipv4.tcp_synack_retries = 2
  68. 减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。
  69. net.ipv4.tcp_fin_timeout = 10
  70. 如果某个TCP连接在idle 300秒后,内核才发起probe.如果probe 2次(每次2秒)不成功,内核才彻底放弃,认为该连接已失效.
  71. net.ipv4.tcp_keepalive_time = 300
  72. net.ipv4.tcp_keepalive_probes = 2
  73. net.ipv4.tcp_keepalive_intvl = 2
  74. 系统所能处理不属于任何进程的TCP sockets最大数量
  75. net.ipv4.tcp_max_orphans = 262144
  76. 系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息。
  77. net.ipv4.tcp_max_tw_buckets = 20000
  78. arp_table的缓存限制优化
  79. net.ipv4.neigh.default.gc_thresh1 = 128
  80. net.ipv4.neigh.default.gc_thresh2 = 512
  81. net.ipv4.neigh.default.gc_thresh3 = 4096

目前这个配置大家看看 就行了 在后面内核的时候会详细讲解
配置完:sysctl -p生效,直接编辑完不生效。

  1. /etc/profile、/etc/bashrc 配置系统的环境变量/别名等的文件※※※
    PS1

/usr目录的重要知识介绍 应用程序目录

1./usr/local/:编译安装软件默认的位置路径,c:\Program files。
2./usr/src:源代码目录

日志:计算机遇到各种问题,记录日志里,告诉管理员他们的情况。
/var目录下的路径知识 可变化的目录
/var/log/messages #linux系统日志文件,系统故障可以去看看。
/var/log/secure #安全日志(ssh日志记录到这里),监控日志。
/var/log/dmesg #记录硬件信息加载情况的日志文件(dmesg)

/proc下的重要路径知识 进程和内核信息的文件
路径名称 路径说明
/proc/cpuinfo 当前cpu信息文件
/proc/meminfo 当前内存信息文件
/proc/loadavg 当前系统的平均负载文件
/proc/mounts 当前设备挂载列表信息文件
/proc/interrupts 当前系统中断信息文件

/dev下目录知识
/dev/hd[a-t]IDE设备
/dev/sd[a-z] SCSI设备
/dev/null 无限数据接收设备,相当于黑洞
/dev/zero 无限零资源
/dev/cdrom 光驱

目录命令:
1)cp 复制目录
cp 选项 源 目标

复制文件:
[root@shiyingqi ~]# cp /etc/hosts /tmp/
[root@shiyingqi ~]# ls /tmp/

复制目录:
[root@shiyingqi ~]# cp -r /etc /tmp/
[root@shiyingqi ~]# ls /tmp/

[root@shiyingqi ~]# cp -a /etc /opt
[root@shiyingqi ~]# ls /opt
etc

-t
cp -t 目标 源
[root@shiyingqi ~]# cp -t /home/shiyingqi/ /etc/hosts
[root@shiyingqi ~]# ls /home/shiyingqi/
ddasdf hosts

把当前目录下的dir1,移动到/tmp目录。
[root@shiyingqi ~]# mv dir1 /tmp/

练习:
[root@shiyingqi ~]# ls
a a.out c shiyingqi stu1 stu2 stu4 stu6 stu8
anaconda-ks.cfg b epel-7.repo shiyingqi_dir stu10 stu3 stu5 stu7 stu9
1)直接删,会提示
[root@shiyingqi ~]# rm a.out
rm:是否删除普通空文件 “a.out”?y
2)强制删
[root@shiyingqi ~]# rm -f epel-7.repo
[root@shiyingqi ~]# ls
a b shiyingqi stu1 stu2 stu4 stu6 stu8
anaconda-ks.cfg c shiyingqi_dir stu10 stu3 stu5 stu7 stu9
3)直接删目录 提示
[root@shiyingqi ~]# rm -r shiyingqi
rm:是否删除目录 “shiyingqi”?y
4)强制删
[root@shiyingqi ~]# rm -fr a
[root@shiyingqi ~]# rm -fr b
[root@shiyingqi ~]# rm -fr c
[root@shiyingqi ~]# ls
anaconda-ks.cfg stu1 stu2 stu4 stu6 stu8
shiyingqi_dir stu10 stu3 stu5 stu7 stu9
5)批量删
[root@shiyingqi ~]# rm -fr stu
注意:
表示匹配所有
[root@shiyingqi ~]# ls
anaconda-ks.cfg shiyingqi_dir

生产慎用:
1.用mv替代rm,把/tmp当做回收站
[root@shiyingqi ~]# touch a.txt b.txt
[root@shiyingqi ~]# mv a.txt /tmp/
[root@shiyingqi ~]# ls
anaconda-ks.cfg b.txt shiyingqi_dir
处理错了,移动回来
[root@shiyingqi ~]# mv /tmp/a.txt .
[root@shiyingqi ~]# ls
anaconda-ks.cfg a.txt b.txt shiyingqi_dir
2.find+rm 提高删除的门槛。
命令复杂,多少天以前,多大的删。。什么类型的。
3.不要全路径删文件。