Linux CentOS 知识和常用命令
1、常用热键
【tab】它具有“命令补全”与“文件补全”的功能
【ctrl+c】中断执行中的程序组合键
【ctrl+d】键盘输入结束。也可以用来替代 exit
2、linux 常用编辑器 vi 和 vim
vi 编辑器(vim 大同小异)
(1)一般模式 【可以 删除,复制,粘贴】
(2)编辑模式【可以 删除,复制,粘贴,无法编辑内容,按下i l o o a a r r任何一个健才会进入编辑模式,要回到一般模式按esc】
3、linux 目录配置
1、根目录(/)
根目录(/)所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区内,保持根目录越小越好。如此不但性能较好,根目录所在的文件系统也比较不容易发生问题
2、执行文件目录(/bin)
系统有很多放置执行文件的目录,但 /bin 比较特殊。因为 /bin 放置的是在单用户维护模式下还能被操作的命令。在 /bin 下面的命令可以被 root 与一般账号所使用,主要有 cat,chmod,chown,date,mv,mkdir,cp,bash 等常用的命令。
3、开机文件目录(/boot):
这个目录主要放置开机会使用到的文件,包括 linux 内核文件以及开机菜单与开机所需配置文件等。
4、驱动设备目录(/dev)
在 linux 系统上,任何设备与接口设备都是以文件的形式存在于这个目录当中的。你只要通过访问这个目录下面的某个文件,就等于访问某个设备。比较重要的文件有 /dev/null,/dev/zero,/dev/tty 等。
5、配置文件目录(/etc)
系统主要的配置文件几乎都放置在这个目录内,例如人员的账号密码文件、各种服务的起始文件等。一般来说,这个目录下的各个文件属性是可以让一般用户查阅的,但只有 root 有权利修改。比较重要的文件有 /etc/init.d,/etc/inittab,/etc/sysconfig 等。
6、用户主文件夹(/home)
这是系统默认的用户主文件夹(home directory)。在你创建一个一般用户账号时,默认的用户主文件夹都会规范到这里来。~ 代表当前用户的主文件夹。
7、系统函数库(/lib)
系统的函数库非常多,而 /lib 放置的则是在开机时会用到的函数库,以及在 /bin 或 /sbin 下面的命令会调用的函数库而已。
* 你可以把函数库想象成是“外挂”,某些命令必须要有这些“外挂”才能够顺利完成程序的执行之意。
8、第三方软件安装目录(/opt)
这个目录是用于安装第三方应用程序的,可以由用户自己指定安装位置。当需要卸载第三方应用程序时,可以直接删除安装目录,而不影响系统其它任何设置。
9、管理员主文件夹(/root)
系统管理员(root)的主文件夹。之所以放在这里,是因为如果进入单用户维护模式而仅挂载根目录时,该目录就能够拥有root的主文件夹,所以我们会希望root的主文件夹与根目录放置在同一个分区中。
10、服务数据存放目录(/srv)
srv 可以视为“service”的缩写,是一些网络服务启动之后,这些服务所需要取用的数据目录。常见的服务例如 www、ftp 等。举例来说,www 服务需要的网页数据就可以放置在 /srv/www/ 里。
11、虚拟文件系统目录(/proc)
这个目录本身是一个虚拟文件系统(virtual filesystem)。它放置的数据都是在内存当中,例如系统内核、进程、外部设备以及网络状态等。因为这个目录下的数据都是在内存当中的,所以本身并不占任何硬盘空间。
12、虚拟文件系统目录(/sys)
这个目录其实跟 /proc 非常类似,也是一个虚拟的文件系统,主要也是记录与内核相关的信息。包括目前已加载的内核模块与内核检测到的硬件设备信息等。这个目录同样不占硬盘容量。
13、系统软件资源目录(/usr)
很多小白都会误以为 /usr 是 user 的缩写,其实 usr 是 unix software resource 的缩写,也就是 “unix 操作系统软件资源” 所放置的目录,而不是用户的数据,这点需要注意。
5、sudo 指令
执行root 的指令。且需要用户输入自己的秘密,因此多人共同管理一部主机时,至少root密码不会留出去!
6、软件安装( rpm, srpm 与 yum 功能)
distribution 代表 | 软件管理机制 | 使用指令 | 在线升级机制(指令) |
red hat/fedora | rpm | rpm, rpmbuild | yum (yum) |
debian/ubuntu | dpkg | dpkg | apt (apt-get) |
rpm 安装
rpm -ivh package_name
rpm -ivh rp-pppoe-3.5-32.1.i386.rpm 安装一个
rpm -ivh a.i386.rpm b.i386.rpm 安装多个(用空格分开)
rpm -ivh http://xxxx/pkgname.rpm 安装网路上的(常用)
rpm -e --nodeps 要卸载的软件包
选项不参数:
-i :install 的意思
-v :察看更绅部的安装信息画面
-h :以安装信息列显示安装迚度
yum 安装
yum list xxx* 查询软件
yum install 安装的软件
yum update 接要升级的软件,若要整个系统都升级,就直接 update 即可
yum remove xxx 移除软件
7、常用命令
(1)目录及路径
. 代表此层目录 .. 代表上一层目录 - 代表前一个工作目录 ~ 代表“目前用户身份”所在的主文件夹
cd: 切换目录
pwd: 显示当前目录
mkdir: 新建一个新的目录
rmdir:删除一个空的目录,ps:只能是空目录
mkdir -p test1/test2/test3 直接递归创建所需路径
mkdir -m 711 test 创建文件夹权限
rmdir -p test1/test2/test3 可以直接删除
(2)复制
cp /var/log/wtmp wtmp2 #将wtmp 复制 重名名wtmp2(ps:复制的权限,创建时间会改变) cp -a /var/log/wtmp wtmp2 #将wtmp 复制 重名名wtmp2(ps:完全复制,权限,创建时间一致) cp -i /var/log/wtmp wtmp2 --如果当前地址存在此文件会询问是否覆盖 cp -p /var/log/wtmp wtmp2 --连同文件属性一起复制过去,而非使用默认属性 cp -r /test/ /test2 --递归持续复制,用于目录复制行为 cp -r elasticsearch-6.5.4/* /home/elasticsearch6.5.4
(3)移动/剪切
mv bashrc mvtest 将某个文件bashrc 移动到某个目录中
mv mvtest mvtest2 重命名
(4)关机命令
shutdown -h now # 立刻关机 shutdown -h 0 #立刻关机 shutdown -h 20:15 #系统将在今天指定时间关机 shutdown -r now #立即重启 shutdown -r +10 '要重启服务器了' #再过10分钟系统重启,显示后面的信息给所有在线用户 shutdown -k now '服务器警告信息' # 仅仅发出警告信息参数,系统不会关机
(5)文件权限
chgrp #改变文件所属用户组 chown #改变文件所有者 chmod #改变文件的权限 r : 4 #读取权限(对应的数字权限) w : 2 #写的权限 x : 1 #执行权限 rwx=4+2+1=7 -777 #最大权限
(6)查找
find / -name *.sh
(7)下载(wget)
yum install wget #安装
# 下载指定地址 wget https://nginx.org/download/nginx-1.16.0.tar.gz # -c 断点续传 wget -c https://nginx.org/download/nginx-1.16.0.tar.gz #批量下载的情形,把所有需要下载文件的地址放到 filename.txt 中,然后 centos wget 就会自动为你下载所有文件了 wget -i filename.txt
(8)解压
tar -xvzf pip-10.0.1.tar.gz #把war包复制到root文件下面,解压缩:jar -xvf xxxx.war
(9)查看端口号占用
lsof -i:端口号
(10)查看端口号占用
1、ps 命令用于查看当前正在运行的进程,grep 是搜索 例如: ps -ef | grep java,表示查看所有进程里 cmd 是 java 的进程信息 2、ps -aux | grep java,-aux 显示所有状态 3. kill 命令用于终止进程,-9 表示强迫进程立即停止,例如: kill -9 [pid]
(11)防火墙(centos firewalld)
1.firewalld的基本使用
#启动: systemctl start firewalld #关闭: systemctl stop firewalld #查看状态: systemctl status firewalld #开机禁用: systemctl disable firewalld 开机启用: systemctl enable firewalld
2.systemctl是centos7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
#启动一个服务: systemctl start firewalld.service #关闭一个服务: systemctl stop firewalld.service #重启一个服务: systemctl restart firewalld.service #显示一个服务的状态: systemctl status firewalld.service #在开机时启用一个服务: systemctl enable firewalld.service #在开机时禁用一个服务: systemctl disable firewalld.service #查看服务是否开机启动: systemctl is-enabled firewalld.service #查看已启动的服务列表: systemctl list-unit-files|grep enabled #查看启动失败的服务列表: systemctl --failed
3.配置firewalld-cmd
#查看版本: firewall-cmd --version #查看帮助: firewall-cmd --help #显示状态: firewall-cmd --state #查看所有打开的端口: firewall-cmd --zone=public --list-ports #更新防火墙规则: firewall-cmd --reload #查看区域信息: firewall-cmd --get-active-zones #查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0 #拒绝所有包: firewall-cmd --panic-on #取消拒绝状态: firewall-cmd --panic-off #查看是否拒绝: firewall-cmd --query-panic
4.配置firewalld 端口
#添加 firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效) #重新载入 firewall-cmd --reload #查看 firewall-cmd --zone=public --query-port=80/tcp #删除 firewall-cmd --zone=public --remove-port=80/tcp --permanent
推荐阅读
-
Linux系统:centos7下搭建ZooKeeper3.4中间件,常用命令总结
-
Linux常用命令之ping命令详解和使用例子(查看网络通不通)
-
linux常用命令详解和用法(linux基础入门知识)
-
linux常用工具和命令(linux基础入门知识)
-
用DNSPod和Squid打造自己的CDN (三) 安装CentOS Linux
-
linux CentOS 系统下如何将php和mysql命令加入到环境变量中
-
Linux启动流程图和30个常用命令
-
详解Centos/Linux下调整分区大小(以home和根分区为例)
-
Linux iptables基础知识和规则原理讲解
-
Linux ps和pstree命令知识点总结