个人博客原文链接
Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds由于自己不满意教学中使用的MINIX操作系统, 所以在1990年底由于个人爱好设计出了LINUX系统核心。后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操作系统,以下记录了学习Linux过程中的笔记.
Linux是基于Unix的Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机.
Linux的版本分为两种:内核版本和发行版本。
内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号。
发行版本是一些组织和公司根据自己发行版的不同而自定的。
在VMware中安装Linux——CentOs系统
1.准备好CentOs的iso文件,安装好VMware
2.打开VMware,新建一个虚拟机
3.稍后安装操作系统
4.选择客户及操作系统Linux,版本为CentOs
5.输入虚拟机名称,选择该虚拟主机的安装位置(所有文件都将放在这个文件夹)
6.设置该虚拟机的磁盘大小(10~20G即可),选择拆分磁盘
7.自定义硬件,配置该系统内存大小(2G即可),选择iso文件,其它默认
8.启动该虚拟主机,选择第一个开始安装系统
9.选择skip跳过,媒体设备检测
10.选择简体中文版
11.选择美国英语式键盘
12.选择安装基本存储设备
13.选择忽略所有数据
14.输入该虚拟主机的主机名,配置网络,双击网卡,勾选自动连接
15.选择时区上海
16.输入根用户密码
17.选择替换现有Linux系统方式安装
18.选择将修改写入磁盘
19.选择安装Basic Server
20.等待安装完成即可
通过SecureCRT远程连接Linux,实现在本地windows操作Linux
1.安装SecureCRT
2.打开SecureCRT,选择快速连接
3.输入主机名(在Linux中使用ifconfig得到的ip地址)
4.输入用户名(一般使用超级管理员root)
5.输入对应用户密码
6.完成连接
bin:存放二进制可执行文件
sbin:存放二进制可执行文件,只有root能访问
etc:存放系统配置文件
user:用于存放共享的系统资源
home:存放用户文件的根目录
root:超级用户目录
dev:用于存放设备文件
lib:存放跟文件系统中的程序运行所需的共享库及内核模块
mnt:系统管理员安装临时文件的安装点
boot:存放用于系统引导时的各种文件
tmp:用于存放各种临时文件
var:用于存放运行时需要改变数据的文件
cd app:切换到app目录
cd …:切换到上一层目录
cd /:切换到系统根目录
cd ~:切换到用户主目录
cd -:切换到上一个所在目录
man 命令 :查看“命令”的帮助
空格:翻页
q:退出帮助
mkdir(make directory) 创建子目录命令
mkdir a:在当前目录下创建a目录
mkdir -p a/b/c:在当前目录级联创建a/b/c目录
rmdir(remove directory)删除“空”的子目录
rmdir a:删除a目录
ls(list) 显示当前目录下的内容
ls:显示能看见的文件(和目录)的名称
ls -a:显示所有的文件名称,文件前面有“.”代表隐藏文件
ls -l:显示文件的详细信息(简写方式:ll)
ll -h:友好的显示
cat 在当前屏幕显示文件的全部内容(不推荐)
cat 文件
more 一般用于显示的内容会超过一个屏幕的文件(不推荐)
more 文件(空格显示下一页,回车显示下一行,q退出)
less 和more类似,但更易于控制翻页
less 文件(PgUp上一页,PgDn下一页)
tail 显示文件后几行的内容
tail -10 文件:查看该文件后十行内容
tail -f 文件:动态查看(常用于动态查看日志)
ctrl+c:结束动态查看
touch 创建一个空白的文件
touch 文件名
cp(copy) 复制一个文件
cp a.txt b.txt:将a.txt复制并重命名为b.txt
cp a.txt a/c.txt:将a.txt复制到a目录并重命名为c.txt
mv(move) 移动一个文件
mv a.txt b.txt:相当于重命名
mv a.txt a/b:将a.txt移动到a目录下的b目录
rm(remove)删除一个文件
rm a.txt 带询问的删除a.txt
rm -f a.txt 不带询问,直接删除a.txt
rm -r a 带询问的递归删除
rm -rf a 不带询问的递归删除(慎用!)
rm -rf ./* 直接删除当前目录(慎用!!)
rm -rf /* 直接删除根目录(GG!!!!!)
tar(打包或解压一个文件或目录----常用)
常用的组合参数:
-cvf:打包一个文件或目录
-zcvf:打包并压缩一个文件或目录(压缩的格式为.gzip)
-xvf:解压或打开一个tar文件
命令格式:
tar 参数 文件名 要打包的文件或目录
示例:
将当前目录下的所有文件打包成1.tar
tar -cvf 1.tar ./*
将当前目录下的所有文件解压并压缩为2.tar.gz
tar -zcvf 2.tar.gz ./*
将1.tar解压到当前目录
tar -xvf 1.tar
将1.tar解压到b目录
tar -xvf 1.tar -C b
grep(查找符合条件的字符串----常用)
grep hello 1.txt:在1.txt文件中查找hello
grep hello 1.txt --color:在1.txt文件中查找hello并高亮显示
grep hello 1.txt --color -A5:在1.txt文件中查找hello并高亮显示,只显示hello的后5行
grep hello 1.txt --color -B5:在1.txt文件中查找hello并高亮显示,只显示hello的前5行
pwd(显示当前所在目录)
pwd
wget(下载资料)
wget www.bilibili.com:下载指定文件,这里下载到的是b站的index.html文件
ifconfig(查看ip地址)
ifconfig
reboot(普通重启)
poweroff(立刻关机)
既可以查看文件也可以编辑文件,两者区别不大,vi代码不变色,vim代码会变色。
三种模式:命令行、插入、底行模式。
切换到命令行模式:按Esc键;
切换到插入模式:按 i 、o、a键;
i:在当前的光标所在处插入
o:在当前光标所在的行的下一行插入
a:在光标所在的下一个字符插入
切换到底行模式:按 :(冒号)
一般流程:
打开文件:vim file
不保存退出:esc:q!
修改文件:输入i进入插入模式
保存并退出:esc:wq
快捷键(在命令模式时使用):
yy:复制当前行
p:粘贴到当前行
dd:快速删除当前行
d+←/→:删除左边一个或右边一个
R:替换一个
>
:重定向输出,覆盖原有内容
>>
:重定向输出,追加内容
示例:
ifconfig > a.txt 将输出定向到a.txt
ifconfig >> a.txt 将输出追加到a.txt
命令之间使用&&连接,实现逻辑与的功能
只要有一个命令返回假(命令返回值 $? == 1),后面的命令就不会被执行。
示例:
mkdir -p a/b/c && cd a/b/c && touch 1.txt
将一个命令的输出用作另一个命令的输入。
示例:
在ifconfig的输出里寻找192.168字符串
ifconfig | grep 192.168
查找和java相关的进程
ps -ef | grep java
查找和3306相关的信息
ps -ef | grep 3306
date (显示或设置系统时间)
date 显示当前系统时间
date -s “2014-01-01 10:10:10” 设置系统时间
df (显示磁盘信息)
df 显示磁盘信息
df –h 友好显示大小
free (显示内存状态)
free 显示内存信息
free –m 以mb单位显示内存信息
top (显示,管理执行中的程序)
top
clear 清屏幕 (ctrl+l)
ps (正在运行的某个进程的状态)
ps –ef 查看所有进程
ps –ef | grep ssh 查找某一进程 kill 杀掉某一进程
kill 2868 杀掉2868编号的进程
kill -9 2868 强制杀死进程
du(显示目录或文件的大小)
du –h 显示当前目录的大小
who(显示目前登入系统的用户信息)
who 显示目前登入系统的用户信息
hostname (查看当前主机名)
hostname 查看当前主机名
修改:vi /etc/sysconfig/network
uname (显示系统信息)
uname -a 显示本机详细信息。
依次为:内核名称,主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称。
ifconfig (显示或设置网络设备)
ifconfig 显示网络设备
ifconfig eth0 up 启用eth0网卡
ifconfig eth0 down 停用eth0网卡
ping (持续探测网络是否通畅,ctrl+c终止)
ping 192.168.0.1
netstat (查看网络端口)
netstat -an | grep 3306 查询3306端口占用情况
useradd (添加一个用户)
useradd test 添加test用户
useradd test -d /home/t1 指定用户home目录
passwd (设置、修改密码)
passwd test 为test用户设置密码
切换登录:(ssh -l 用户名 -p 22 主机ip)或(su - 用户名)
示例:
ssh -l test -p 22 192.168.19.128
su – test
exit(退出当前用户)
exit 退出当前用户,返回root用户
userdel (删除一个用户)
userdel test 删除test用户(不会删除home目录)
userdel –r test 删除用户以及home目录
当在创建一个新用户user时,若没有指定他所属于的组,默认建立一个和该用户同名的私有组
groupadd (创建组)
groupadd public 创建一个名为public的组
useradd u1 –g public 创建用户指定组
groupdel (删除组,如果该组有用户成员,必须先删除用户才能删除组)
groupdel public
普通文件: 包括文本文件、数据文件、可执行的二进制程序文件等。
目录文件: Linux系统把目录看成是一种特殊的文件,利用它构成文件系统的树型结构。
设备文件: Linux系统把每一个设备都看成是一个文件
通过ll展示的列表:
以 d 开始的是目录文件
以 - 开始的是普通文件
文件的权限由9个字母组成,三个三个一组
第一组代表的是当前用户的权限
第二组代表的是组的权限
第三组代表的是其他用户的权限
r:读 4
w:写 2
x:执行 1
chmod (变更文件或目录的权限)
chmod 755 a.txt
chmod u=rwx,g=rx,o=rx a.txt
chmod 000 a.txt (超级管理员依旧可以对它进行操作)
★chmod 777 a.txt
chown (变更文件或目录改文件所属用户和组)
chown 用户:组 文件
chown user1:public a.txt :变更当前的目录或文件的所属用户和组
chown -R u1:public dir :变更目录中的所有的子目录及文件的所属用户和组