-- Linux(centos-7) 的简单维护与常用命令
【官网】:https://www.centos.org
应用场景
linux(centos-7)的常用维护与简单命令基础资源
linux centos7
使用须知
1.如果是学习则建议在vmware之类的虚拟机上学习,不要在服务器上尝试。 2.注意linux版本和子版本的差异。
配置步骤
>linux哲学.
1.一切皆文件,把几乎所有的资源,包括硬件设备都组织为文件格式;
2.由众多目的单一的小程序组成,一个程序只做一件事,并且要好,组合小程序完成复杂任务;
3.尽量避免跟用户交互,实现脚本编程,自动完成某些功能;
4.使用纯文本文件保存配置信息,管理员只需使用一款文本编辑器既能完成系统配置工作;
5.提供机制,而非策略,管道是机制,应用管道处理各种数据是策略,机制就是提供各种接口供使用者组合调用得到想要的数据。
>linux安装.
>>centos 7的下载.
<官网下载>https://www.centos.org/download/
<镜像目录>https://www.centos.org/download/mirrors/
<阿里云镜像>http://mirrors.aliyun.com/centos/7/isos/x86_64/
以下针对各个版本的ISO镜像文件,进行一一说明:
CentOS-7.0-x86_64-DVD-1503-01.iso 标准安装版,一般下载这个就可以了(推荐)
CentOS-7.0-x86_64-NetInstall-1503-01.iso 网络安装镜像(从网络安装或者救援系统)
CentOS-7.0-x86_64-Everything-1503-01.iso 对完整版安装盘的软件进行补充,集成所有软件。(包含centos7的一套完整的软件包,可以用来安装系统或者填充本地镜像)
CentOS-7.0-x86_64-GnomeLive-1503-01.iso GNOME桌面版
CentOS-7.0-x86_64-KdeLive-1503-01.iso KDE桌面版
CentOS-7.0-x86_64-livecd-1503-01.iso 光盘上运行的系统,类拟于winpe
CentOS-7.0-x86_64-minimal-1503-01.iso 精简版,自带的软件最少
1、点击“DVD ISO”按钮,即可下载CentOS 7 DVD ISO 镜像文件。
2、点击“Everything ISO”按钮,即可进入CentOS 7 Everything ISO镜像文件的下载页面,该页面提供了Actual Country(“实际国家”,可以解释为您此刻所在的国家,即“本国”)和 Nearby Countries(“附近国家”)的一系列 ISO 镜像文件下载链接。
[参考]https://blog.csdn.net/brucelee900/article/details/51504547
>>ubantu18.04.1下载.
http://59.80.44.47/old-releases.ubuntu.com/202007041844/A49FA7085E37D319BED20EA03AFFF9E7/releases/18.04.1/ubuntu-18.04.1-desktop-amd64.iso
>linux的常用维护.
[参考]安装centos后的10件事.
>>目录结构.
由于linux是开放源代码,各大公司和团体根据linux的核心代码做各自的操作,编程。这样就造成在根下的目录的不同。这样就造成个人不能使用他人的linux系统的PC。因为你根本不知道一些基本的配置,文件在哪里。。。这就造成了混乱。这就是FHS(Filesystem Hierarchy Standard )机构诞生的原因。该机构是linux爱好者自发的组成的一个团体,主要是是对linux做一些基本的要求,不至于是操作者换一台主机就成了linux的‘文盲’。
事实上,FHS是根据过去的经验一直再持续的改版的,FHS依据文件系统使用的频繁与否与是否允许使用者随意更动, 而将目录定义成为四种交互作用的形态,用表格来说有点像底下这样:
|
可分享的(shareable) |
不可分享的(unshareable)
|
不变的(static) |
/usr (软件放置处) |
/etc (配置文件) |
/opt (第三方协力软件) |
/boot (开机与核心档) |
|
可变动的(variable) |
/var/mail (使用者邮件信箱) |
/var/run (程序相关) |
/var/spool/news (新闻组) |
/var/lock (程序相关) |
四中类型:
1. 可分享的:
可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据, 是能够分享给网络上其他主机挂载用的目录;
2. 不可分享的:
自己机器上面运作的装置文件或者是与程序有关的socket文件等, 由于仅与自身机器有关,所以当然就不适合分享给其他主机了。
3. 不变的:
有些数据是不会经常变动的,跟随着distribution而不变动。 例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;
4. 可变动的:
经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等。
事实上,FHS针对目录树架构仅定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录的定义:
/ (root, 根目录):与开机系统有关;
/usr (unix software resource):与软件安装/执行有关;
/var (variable):与系统运作过程有关。
[参考]https://www.cnblogs.com/itcui/p/5632311.html
>>常用命令.
<命令的行开始字符:$与#>
$代表普通用户,#代表root用户
<删除目录及文件>
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
删除文件夹实例:
rm -rf /var/log/httpd/access
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹
删除文件使用实例:
rm -f /var/log/httpd/access.log
将会强制删除/var/log/httpd/access.log这个文件
cd / 会进入 /
cd /root/ 会进入 ~
cd ../ 会进入上一级
步骤1)ESC (主要是取消 insert/edit模式)
步骤2)
:q! 不保存文件,强制退出vi命令
:w 保存文件,不退出vi命令
:wq 保存文件,退出vi命令
a/insert 进入输入模式.
cp file1 file2
mv file1 file2
<撤销>
u 撤销上一步的操作
Ctrl+r 恢复上一步被撤销的操作
<删除字符>
光标位于字符下方,之后按[delete]键.
<关机,重启>
reboot //重启
poweroff //关机
<查看系统安全日志>
tail -f /var/log/secure
退出查看:ctrl+c
<复制与粘贴>
cp filename1 filename2
<查看用户,权限>
ls ‐ahl : 查看目录下文件的权限及所属用户,用户组等.
chmod 700 /home/ftproot //更改目录的权限为700
chown 用户名 文件名 //更改文件的所有者
chgrp 组名 文件名 //更改文件所属的组名.
[注]一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者,当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组.
chmod 755 abc:赋予abc权限rwxr-xr-x
chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限
chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限
chmod a+r abc:给所有用户添加读的权限
改变所有者(chown)和用户组(chgrp)命令
chown xiaoming abc:改变abc的所有者为xiaoming
chgrp root abc:改变abc所属的组为root
chown root ./abc:改变abc这个目录的所有者是root
chown ‐R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root
[参考]https://www.cnblogs.com/123-/p/4189072.html
<压缩与解压>
tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
以上五个是独立的命令参数,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的 gz
-j:有bz2属性的 bz2
-J :有xz属性的 xz
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
# tar -cf all.tar *.jpg
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
# tar -uf all.tar logo.gif
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
# tar -tf all.tar
这条命令是列出all.tar包中所有文件,-t是列出文件的意思
# tar -xf all.tar
这条命令是解出all.tar包中所有文件,-t是解开的意思
-----------------------------------压缩-------------------------------
tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg
tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar -cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux
-----------------------------------解压-------------------------------
1、*.tar 用 tar -xvf 解压
2、*.gz 用 gzip -d或者gunzip 解压
3、*.tar.gz和*.tgz 用 tar -xzf 解压 tar.xz 用 tar -Jxvf 解压
4、*.bz2 用 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2用tar -xjf 解压
6、*.Z 用 uncompress 解压
7、*.tar.Z 用tar -xZf 解压
8、*.rar 用 unrar e解压
9、*.zip 用 unzip 解压
>>系统设置.
>>>设置系统日期和时间.
<查看日期及时间> date
<查看日历> cal
<设置系统日期> date -s 12/12/2018
<设置系统时间>date -s 20:29:16
<日期,时间写入到bios:避免重启失效> hwclock -w
>>>网络配置.
>>>>查看本机IP信息.
命令: Ip addr
[注]其中有一个是docker的ip.
>>>>不能联网个 且ifconfig 出现command not found.
步骤1)vi ifcfg-ens33 //ifcfg-ens33是上图中ls命令结果第一行第一列
步骤2)将ONBOOT=no改为ONBOOT=yes //光标定位,delete键可删除.
步骤3)按住键盘esc键, 输入 “:wq” (注:不含引号) 实现保存退出.
[注]
步骤4)重启网卡服务.
service network restart
步骤5)ping 百度,测试网络.
[注1]建议使用 : ping -c 5 baidu.com //ping百度 5次... 否则将一直ping下去.. 如果想停止则需要使用 ctrl+c进行停止.
>>>更换yum源.
[参考]http://blog.51cto.com/888888hfer/2095155
[注]更换yum源(一般是将国外的换成国内的)后,可以提高速度.
>>>安全设置.
>>>>防火墙相关操作.
systemctl status firewalld.service //检查防火墙服务是否开启..适用于centos 7
systemctl stop/start firewalld.service //停止或开启防火墙服务.
>>>>允许指定端口通过防火墙.
步骤1)开启80端口.
#sudo firewall-cmd --add-service=http --permanent
#sudo firewall-cmd --add-port=80/tcp --permanent
[注] sudo, firewall-cmd中划线是紧挨着两边的.
步骤2)重启防火墙.
sudo firewall-cmd --reload
步骤3)检查是否开启成功.
sudo firewall-cmd --list-all
常见问题
快速入门
【常用软件的安装】
>git。
[注]如果没有安装,则提示”git: command not found”
1)Centos下使用:yum install git -y 或者 yum install -y git . (centos6.8)
2)Ubuntu/Debian下使用 : apt-get install git -y
>Automake工具。
1)centos下使用:
yum -y install autoconf automake libtool
2)sudo apt-get install autoconf automake libtool
>nginx安装.
[参考] https://blog.csdn.net/weixin_39666151/article/details/81167177
步骤1)获取nginx源.
rpm -Uvh
http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
[注] 上述红色部分是”L”的小写,而不是1.
步骤2)安装nginx.
yum install nginx
步骤3)启动nginx.
systemctl start nginx.service //启动
systemctl enable nginx.service //开机启动
步骤4)测试nginx.
出现:welcome to nginx!