Linux操作系统常用命令
Linux操作系统是基于Unix操作系统的,Unix操作系统是在1969年贝尔实验室开发的,但是其系统需要收费。而Linux操作系统是一种自由且开源的操作系统,它是由芬兰赫尔辛基大学学生Linus Torvalds于1991年首先开发出Linux系统的核心,之后经由国际众多的爱好者共同开发维护,现在已经成为了一个功能完善,稳定可靠,社区良好的操作系统。
Linux的版本分为两种:内核版本和发行版本;内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号 ;而我们主要使用的是发行版本。Linux具有众多的发行版本,有些由于功能强大,界面良好是收费的,有些是不收费的。笔者主要使用的是CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统,它是由企业Linux发行版领头羊Red Hat Enterprise Linux的发行的。
Linux系统和Window系统一样,也是操作系统,但是我们的电脑上一般都是自带的Windows系统,因此安装Linux系统主要有三种途径:(1)安装虚拟机软件,在虚拟机中安装Linux操作系统;(2)给电脑安装双系统;(3)再买一台电脑安装Linux系统。
笔者采用途径(1),安装步骤不再赘述。下面着重介绍Linux系统的常用命令:
1. 切换目录命令cd:
cd .. 切换到上一层目录
cd / 切换到系统根目录
cd ~ 切换到用户主目录
cd - 切换到上一个所在目录
2. 列出文件列表:ls
ls(list)是一个非常有用的命令,用来显示当前目录下的内容。配合参数的使用,能以不同的方式显示目录内容。
> 格式:ls[参数] [路径或文件名]
ls 显示文件或目录(不包含隐藏的文件)
ls -a 显示所有文件或目录(包含隐藏的文件)
ls -l 或者 ll 查看所有文件及文件夹的详细信息
注:在linux中,以 . 开头的文件都是隐藏的文件
3. 创建目录和移除目录:mkdir /rmdir
【mkdir】
mkdir(make directory)命令可用来创建子目录:
mkdir app 在当前目录下创建app目录
mkdir –p app2/test 级联创建aap2以及test目录
【rkdir】
rmdir(remove directory)命令可用来删除“空”的子目录:
rmdir app 删除app目录
mkdir –help 显示参数及用法
4. 浏览文件 cat /more /less /tail
【cat】命令:用于显示文件的(所有)内容。
格式:cat[参数]<文件名>
用法:
cat a.txt 查看a.txt文件的内容
【more】命令
more一般用于要显示的内容会超过一个画面长度的情况。按空格键显示下一个画面。回车显示下一行内容。按 q 键退出查看。
用法:
more a.txt
【less】命令
less用法和more类似,不同的是less可以通过PgUp、PgDn键来控制。PgUp 和 PgDn 进行上下翻页.
用法:
less a.txt
【tail】命令:用于显示文件后几行的内容。
用法:
tail -10 /etc/passwd 查看后10行数据
tail -f catalina.log 动态查看日志(*****)
5. 文件操作:
【rm】命令:删除文件
用法:rm [参数] [文件名或者目录]
rm a.txt 删除a.txt文件(删除需要用户确认)
rm -f a.txt 不询问,直接删除文件
rm -r a 递归删除(询问),删除一个目录(文件夹)
rm -rf a 不询问递归删除一个目录(文件夹)
rm -rf * 删除所有文件
rm -rf /* 删除root目录下的所有文件及文件夹
【cp】命令:复制
cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp命令时将一个文件复制成另一个文件或复制到某目录时,需要指定源文件名与目标文件名或目录。
cp [复制的文件] [某目录]
cp a.txt b.txt 将a.txt复制为b.txt文件(目录下如果没有b.txt文件,那么会自动生成;如果有,那么就会覆盖)
cp a.txt ../ 将a.txt文件复制到上一层目录中(相对路径,./代表本目录,../代表上一级目录)
【mv】命令:剪切
mv(move)移动或者重命名
mv [移动的文件] [某目录]
mv a.txt b.txt 将a.txt文件重命名为b.txt(目录下如果没有b.txt文件,那么会自动生成;如果有,那么就会覆盖)
mv a.txt ../ 将a.txt文件移动到上一层目录中(相对路径,./代表本目录,../代表上一级目录)
【tar】命令:打包或解压
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。常用参数:
-c:创建一个新tar文件(打包)
-v:显示运行过程的信息
-f:指定文件名
-z:调用gzip压缩命令进行压缩
-t:查看压缩文件的内容
-x:解开tar文件
tar –cvf xxx.tar ./* 将文件或者目录打包并命名为xxx.tar,放到当前目录下
tar –zcvf xxx.tar.gz ./* 打包并压缩,命名为xxx.tar.gz,放到当前目录下
tar –xvf xxx.tar 将解压的结果放到当前目录下
tar -zxvf xxx.tar.gz -C [目录名] 将解压的结果放到另外一个文件夹里
【find】命令:用于查找符合条件的文件
find / -name “ins*” 查找文件名称是以ins开头的文件(不清楚的地方*表示)
find / -name “ins*” –ls
find / –user itcast –ls 查找用户itcast的文件
find / –user itcast –type d –ls 查找用户itcast的目录
find /-perm -777 –type d-ls 查找权限是777的文件
【grep】命令:查找文件里符合条件的字符串
grep [待搜索的字符串] [文件名] [附加参数]
grep apple a.txt 在a.txt 文件中查找字符串apple
grep lang anaconda-ks.cfg –-color 高亮显示查找内容
grep lang anaconda-ks.cfg –-color -A2 -B1高亮显示查找内容,并显示前1行后2行
7、docker修改mysql配置
1.查看运行的镜像docker ps
查看所有镜像docker ps -a
2.如果mysql镜像未运行,运行
docker run -d -p 3306:3306 --name mymysql -e MYSQL_ROOT_PASSWORD=密码 mysql:版本号
3.进入mysql镜像,容器ID【container ID】如步骤1中第一列所示。
docker exec -it 容器ID【container ID】 /bin/bash
4.修改配置文件,修改方式与6、关闭防火墙中步骤5一致。
vim /etc/mysql/mysql.conf.d/mysqld.cnf
8、关闭防火墙
防火墙主要有三种,每种都尝试关闭一下。
1.Linux默认的防火墙是firewalld,先查看状态:
systemctl status firewalld
2.进行关闭
systemctl stop firewalld
systemctl disable firewalld
3.查看selinux状态
getenforce
4.编辑配置文件:
vim /etc/selinux/config
如果没有安装vi/vim,那么执行命令
apt-get update
apt-get install vim
5.按【i】进行插入操作,将SELINUX(没有被#注释的一行)的值改成disable,【ESC】退出编辑模式,输入:wq
保存配置文件。
6.重启Linux系统
reboot
7.查看iptables状态:
systemctl status iptables`
8.永久关闭
chkconfig iptables off
9、关闭NetworkManager
在CentOS系统上,目前有NetworkManager和network两种网络管理工具。如果两种都配置会引起冲突,而且NetworkManager在网络断开的时候,会清理路由,如果一些自定义的路由,没有加入到NetworkManager的配置文件中,路由就被清理掉,网络连接后需要自定义添加上去。
解决方法:
目前在CentOS上的NetworkManager版本比较低,而且比较适合有桌面环境的系统,所以服务器上保留network服务即可,将NetworkManager关闭,并且禁止开机启动。
systemctl stop NetworkManager
systemctl disable NetworkManager
10、其他命令
【pwd】命令:显示当前所在目录
【touch】命令:创建一个空文件
touch a.txt
【clear/ crtl + L】命令:清屏
【crtl+c】命令:停止运行
【vi】+配置文件地址进行修改【i】插入,esc退出修改,【:wq】保存
【reboot】重启