Linux系统管理——初学者建议
学习Linux的注意事项(一)
Linux严格区分大小写
Linux是严格区分大小写的,这一点和Windows不一样,所以操作时要注意区分大小写的不同,包括文件名和目录名、命令、命令选项、配置文件配置选项等
Linux一切皆文件
Linux中所有内容都是以文件的形式保存和管理的,硬件设备也是文件,这和Windows完全不同,Windows是通过设备管理器来管理硬件的。Linux的设备文件保存在/dev/目录中,硬盘文件时/dev/sd[a-p],光盘文件时/dev/hdc等。
Linux不靠扩展名区分文件类型
Windows是依赖扩展名区分文件类型的,比如,".txt"是文本文件、".exe"是执行文件、".ini"是配置文件、".mp4"是视屏文件等。但Linux不是靠扩展名区分文件类型的,而是靠权限位标识来确定文件类型的,而且文件类型的种类也不像Windows下那么多,常见的文件类型只有普通文件、目录、链接文件、块设备文件、字符设备文件等几种。Linux的可执行文件不过就是普通文件被赋予了可执行权限而已。
但Linux中的一些特殊文件还是要求写“扩展名”的,但是大家小心,并不是Linux一定要靠扩展名来识别文件类型,写这些扩展名是为了帮助管理员来区分不同的文件类型。这样的文件扩展名主要有以下几种:
压缩包:Linux下常见的压缩文件名有:*.gz 、 *.bz2、 *.zip 、 *.tar.gz 、 *.tar.bz2 、 *.tgz 等。为什么压缩包一定要写扩展名呢?其实很好理解,如果不写清扩展名,那么管理员不容易判断压缩包的格式,虽然有命令可以帮助判断,但是直观一点更加方便。另外,就算没写扩展名,在Linux中一样可以解压缩,不影响使用。
二进制软件包:CentOS中所使用的二进制安装包时RPM包,所有RPM包都用".rpm"扩展名结尾,目的同样是让管理员一目了然。
程序文件:Shell脚本一般使用"*.sh"扩展名结尾,其他还有用" *.c"扩展名结尾的C语言文件等。
网页文件:网页文件一般使用"*.html *.php"等结尾,不过这是网页服务器的要求,而不是Linux的要求。
Linux中所有的存储设备都必须在挂载之后才能使用
Linux中所有的存储设备都有自己的设备文件名,这些设备文件必须在挂载之后才能使用,包括硬盘、 U盘和光盘。挂载其实就是给这些存储设备分配盘符,只不过Windows中的盘符用英文字母表示,而Linux中的盘符则是一个已经建立的空目录,我们把这个空目录叫作挂载点(可以理解为Windows的盘符),把设备文件(如/dev/sdb)和挂载点(已经建立的空目录)连接的过程叫作挂载。
Windows下的程序不能直接在Linux中使用
Linux和Windows是不同的操作系统,可以安装和使用的软件也是不同的,所以能够在Windows中安装的软件是不能在Linux中安装的。有好处吗?当然有,那就是能够感染Windows的病毒和木马都对Linux无效。有坏处吗?也有,那就是所有的软件要想在Linux中安装,必须单独开发针对Linux的版本,或者依赖模拟器软件运行。
很多软件也会同时推出针对Windows和Linux的版本,如大家熟悉的即时通信软件QQ。
学习Linux的注意事项(二)
了解Linux目录结构
目录名 | 目录的作用 |
---|---|
/bin/ | 存放系统命令的目录,普通用户和高级用户和超级用户都可以执行 |
/sbin/ | 存放系统命令的目录,只有超级用户才可以执行 |
/boot/ | 系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等 |
/dev/ | 设备文件保存位置 |
/etc/ | 配置文件保存位置。系统内所有采用默认安装方式(rpm安装)的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等 |
/home/ | 普通用户的家目录。在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的家目录,所有普通用户的宿主目录是在/home/下建立一个和用户名相同的目录。如用户user1的家目录就是/home/user1/ |
/lib/ | 系统调用的函数库保存位置。是/usr/lib/的软链接 |
/lost+found/ | 当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已损坏的文件系统。这个目录只在每个分区中出现,例如/lost+found 就是根分区的备份恢复目录, /boot/lost+found 就是/boot 分区的备份恢复目录 |
/mnt/ | 挂载目录。系统建议是用来挂载额外的设备 |
/opt/ | 第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。 |
/proc/ | 虚拟文件系统。该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。如/proc/cpuinfo是保存CPU信息的,/proc/devices 是保存设备驱动的列表的,/proc/filesystems 是保存文件系统的,/proc/net 是保存网络协议信息的 |
/tmp/ | 临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清空 |
/usr/ | 系统软件资源目录。注意usr不是user的缩写,而是"UNIX Software Resource"的缩写,所以不是存放用户数据的目录,而是存放系统软件资源的目录。系统中安装的软件大多数保存在这里 |
/usr/lib/ | 应用程序调用的函数库保存位置 |
/usr/local/ | 手工安装的软件保存位置,一般建议源码包软件安装在这个位置 |
/usr/share/ | 应用程序的资源文件保存位置,如帮助文档、说明文档和字体目录 |
/usr/src/ | 源码包保存位置。我们手工下载的源码包和内核源码包都可以保存在这里。 |
/usr/src/kernels/ | 内核源码保存位置 |
/var/ | 动态数据保存位置。主要保存缓存、日志以及软件运行所产生的文件 |
/var/www/html/ | RPM包安装的Apache的网页主目录 |
/var/lib/ | 程序运行中需要调用或改变的数据保存位置。如MySQL的数据库在/var/lib/mysql/目录中 |
/var/log/ | 系统日志保存位置 |
/var/run/ | 一直服务和程序运行后,他们的PID(进程ID)保存位置。是/run/目录的软链接 |
/var/spool/ | 放置队列数据的目录。就是排队等待其他程序使用的数据,比如邮件队列和打印队列 |
/var/spool/mail/ | 新收到的邮件队列保存位置。系统新收到的邮件会保存在此目录中 |
/var/spool/cron/ | 系统的定时任务队列保存位置。系统的计划任务会保存在这里 |
学习Linux的注意事项(三)
远程服务器关机及重启时的注意事项
为什么远程服务器不能关机呢?很简单,远程服务器没有放置在本地,关机后,谁可以帮你按开机电源键启动服务器?虽然计算机技术日新月异,但是像插入电源和开机这样的工作还是需要手工进行的。如果服务器在远程,一旦关机,只能求助托管机房的管理人员帮你开机了。
远程服务器重启时需要注意亮点:
- 远程服务器在重启前,要中止正在执行的任务
计算机的硬盘最怕在高速存储时断电或者重启,非常容易造成硬盘损坏。所以,在重启前先中止你的服务,甚至可以考虑暂时断开对外提供服务的网络。可能你会觉得服务器有这么娇贵吗?我的笔记本电脑经常强行关机,也没有发现硬盘损坏啊?这是因为你的个人计算机没有很多人访问,强制断电时硬盘并没有进行数据交换。小心使得万年船!
- 重启命令的选用
Linux可以识别的重启命令有很多条,但是建议大家使用"shutdown -r now"命令重启。这条命令在重启时会正常保存和中止服务器中正在运行的此程序,是安全重启命令。而且最好在重启前执行几次"sync"命令,这条命令时数据同步命令,可以让暂时保存在内存中的数据同步到硬盘上。
不要在服务器访问高峰运行高负载命令
这一点大家很好理解,在服务器访问高峰,如果使用一些对服务器压力较大的命令,则有可能会造成服务器响应缓慢甚至死机。
哪些命令是高负载命令呢?其实,如果大家使用过Windows操作系统,则也会留意到一些操作会给计算机带来较大的运算压力,道理都是一样的,如复制大量的数据、压缩或者解压缩大文件、大范围的硬盘搜索等。
什么时间算作访问高峰期呢?我们一般认为17.00-24.00算作访问高峰期。当然,每台服务器具体提供的服务不同,访问高峰期有时也会有所出入。比如,服务器主要时提供美国人民访问的,那就要考虑时差的问题,或者服务器提供的服务很特殊,访问高峰期可能也不同。
一般我们建议在凌晨4.00-5.00执行这些命令。那是不是说我们需要在凌晨上班?当然不是,这谁受得了啊?我们可以使用系统的计划任务,让操作自动在指定的时间段执行。
远程配置防火墙时不要把自己踢出服务器、
简单来讲,防火墙就是根据数据包自身的参数来判断是否允许数据包通过的网络设备。我们的服务器要想在公网中安全地使用,就需要使用防火墙过滤有害的数据包。但是在配置防火墙时,如果管理员对防火墙不是很熟悉,则有可能把自己的正常访问数据包和有害数据包全部过滤掉,导致自己也无法正常登录服务器,如果防火墙关闭了远程连接的SSH服务的端口。
防火墙配置完全靠手工命令完成的,配子规则和配置命令相对也比较复杂,万一设置的时候心不在焉,悲剧就发生了。
如何避免这种尴尬的情况发生呢?最好的办法当然是在服务器本地配置防火墙,这样就算不小心把自己的远程登录给过滤了,还可以通过本机登录来进行恢复。如果服务器已经在远程登录了,要配置防火墙,那么最好在本地测试完善后再进行上传,这样会把发生故障的概率降到最低。虽然在本地测试好了,但是传到远程服务器上时仍有可能发生问题。解决办法:如果需要远程配置防火墙,那么先写一个定时任务,让它每5分钟清空一下防火墙规则,就算写错了也还有反悔的机会,等测试没有问题了再删除这个系统定时任务
指定合理的密码规范并定期更新
密码需要遵守复杂性、易记性和时效性的三原则
合理分配权限
服务器管理有一个最简单的原则:给予用户最小的权限
定期备份重要数据和日志
备份的基本原则:不要把鸡蛋放在用一个篮子里
写在最后
如果文档对你有帮助的话,请点击一下 推荐
按钮 ,你的点击是我的最大动力。
我是键盘侠,现实中我唯唯诺诺,网络上我重拳出击,关注我,持续更新Linux干货教程。
Linux系统管理——初学者建议的更多相关文章
- 【转载】Linux小白福利:《超容易的Linux系统管理入门书》(三)在虚拟机上安装Linux
本篇是Linux小白最佳实践第3篇,目的就是让白菜们自己动手安装个Linux玩玩.如果你是Linux小白,请务必亲自动手来安装.不想安装多个操作系统的,虚拟机是最佳选择,一台电脑上可以用虚拟机安装7. ...
- Linux系统管理10——进程和计划任务管理
Linux系统管理10——进程和计划任务管理 一.程序和进程的关系 1.程序 ·保存在硬盘.光盘等介质中的可执行代码和数据 ·静态保存的代码 2.进程 ·在CPU及内存中运行的程序代码 ·动态执行的代 ...
- linux系统管理-输入输出
目录 linux系统管理-输入输出 参数传递xargs linux系统管理-输入输出 重定向 将原本要输出到屏幕上的数据信息,重新定向到指定的文件中 运行程序,或者输入一个命令:默认打开4个文件描述符 ...
- linux 系统管理--进程管理
目录 linux 系统管理--进程管理 一.进程基本概述 二.监控进程状态 三.进程的优先级[进阶] 四.企业案例,Linux假死是怎么回事 五.后台进程管理 六.系统平均负载[进阶] linux 系 ...
- Linux系统管理远程登录工具PUTTY
PuTTY 简介 PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连线软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植 ...
- 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP
使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)则可以避免网络参数变化后一些繁琐的配置,客户端可以从DHCP服务端检索相关信息并完成相关网络配置, ...
- 【转载】绝对干货!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载九)如何通过源代码安装软件
除了使用Linux的包管理机制进行软件的安装.更新和卸载,从源代码进行软件的安装也是非常常见的,开源软件提供了源代码包,开发者可以方便的通过源代码进行安装.从源码安装软件一般经过软件配置.编译软件.执 ...
- 【转载】干货再次来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载八)用命令实现批量添加用户
Windows添加用户需要至少5个界面,而Linux一条命令就搞定了,这是不是高效人士办公第一法则呢.本文不给你一堆参数和选项,不让你见识教条主义,只给你最实用的代码. 想每天能听到小妞的语音播报,想 ...
- 【转载】干货来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载七)LAMP集成安装
学Linux做程序开发也好,做系统管理也好,做网络管理员也好,做系统运维也好,不会LAMP和LNMP,那就等于连皮毛都不会!本篇是文字版的LAMP集成安装,下次连载我们要介绍LNMP的文字版安装.有喜 ...
随机推荐
- BZOJ1082 二分搜索
1082: [SCOI2005]栅栏 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2247 Solved: 952[Submit][Status] ...
- 开箱即用,Knative 给您极致的容器 Serverless 体验
作者 | 冬岛 阿里巴巴技术专家 导读:托管 Knative 开箱即用,您不需要为这些常驻实例付出任何成本.结合 SLB 云产品提供 Gateway 的能力以及基于突发性能型实例的保留规格功能,极大 ...
- 手把手教你Windows Linux双系统的安装与卸载
作者:-叶丶知秋 链接:https://blog.csdn.net/fanxueya1322/article/details/90205143 转载请保留出处 良许前言: 后台突然有很多小伙伴留言想看 ...
- 不可不知的 7 个 JDK 命令
这篇文章主要来介绍下 JDK 内置的命令,话不多说,让我们开始吧! javap 使用 javap 可以查看 Java 字节码反编译的源文件,javap 的命令格式如下: 下面来演示下用 javap - ...
- idea创建maven项目慢的原因以及解决方案
问题分析;在idea中maven项目所依赖的jar包,默认是从中央仓库直接下载jar包,不管jar包是否在本地仓库存在,所以导致idea创建maven项目速度慢,那么要解决这个问题,那么将idea设置 ...
- Chrome自带全网页截图
1.等待网页打开完毕 2.组合键 ctrl+shift+i 打开开发者工具 3.按 ctrl+shift+p 调出一个面板 4.输出 full 5.在下一行出现 capture full size s ...
- DQN(Deep Q-learning)入门教程(六)之DQN Play Flappy-bird ,MountainCar
在DQN(Deep Q-learning)入门教程(四)之Q-learning Play Flappy Bird中,我们使用q-learning算法去对Flappy Bird进行强化学习,而在这篇博客 ...
- Jmeter(六) - 从入门到精通 - 建立数据库测试计划(详解教程)
1.简介 在实际工作中,我们经常会听到数据库的性能和稳定性等等,这些有时候也需要测试工程师去评估和测试,因此这篇文章宏哥主要介绍了jmeter连接和创建数据库测试计划的过程,宏哥在文中通过示例和代码非 ...
- Rocket - tilelink - Delayer
https://mp.weixin.qq.com/s/pc8f_DOJ7w8k8BeM9gPzVw 简单介绍Delayer的实现. 1. 基本介绍 以一定的概率延迟消息的传递. 类参数 ...
- Bootstrap解决页面缩小变形的办法
bootstrap布局是应用得很广泛的一种网页布局方法,例如:我们用一种中间内容很流行的布局分布:3-6-3式布局.代码如下 <style type="text/css"&g ...