Linux基础操作
简单命令
1.开机
本地虚拟机:在VMware中点击“启动客户机”或“开启此虚拟机”。
云服务器:不用管,一直开着的
2.关机
本地虚拟机:1)在VMware中点击“关闭客户机”;2)执行命令: init 0
云服务器:不用管,让它一直开着。
如果不小心关闭了云服务器,可以登录云服务器的管理平台,点某个网页的某个按钮可以开机。如果还搞不定,咨询云服务器提供商。
3.重启
本地虚拟机:
1)在VMware中点击“重启客户机”; 2)也可以执行命令: init 6 或 reboot
云服务器:执行命令: init 6 或 reboot
4.查看当前目录
命令: pwd
[root@localhost ~]# pwd
/root
5.切换当前目录
命令: cd
[root@localhost ~]# cd /etc/
[root@localhost etc]# pwd
/etc
6.查看目录文件
命令: ls 或者 ll [前者略看, 或者详细看]
[root@localhost ~]# cd /etc/yum
[root@localhost yum]# ls
fssnap.d pluginconf.d protected.d vars version-groups.conf
[root@localhost yum]# ll
total 4
drwxr-xr-x. 2 root root 6 Oct 2 2020 fssnap.d
drwxr-xr-x. 2 root root 54 Aug 29 11:17 pluginconf.d
drwxr-xr-x. 2 root root 26 Oct 2 2020 protected.d
drwxr-xr-x. 2 root root 37 Oct 2 2020 vars
-rw-r--r--. 1 root root 444 Oct 2 2020 version-groups.conf
Linux的目录和文件
1.目录概要
进入根目录,再用ls查看,将显示以下内容:
[root@localhost /]# cd /
[root@localhost /]# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
2.目录的详细说明
/bin: bin是Binaries(二进制文件)的缩写,这个目录存放了经常使用的系统命令。
/boot: 这里存放了启动Linux时的核心文件。
/dev: dev是Device(设备)的缩写,该目录下存放的是Linux的外部设备。
/etc: etc是Etcetera(等等)的缩写,这个目录用来存放系统管理所需要的配置文件。
/home: 用户的主目录,在Linux中,每个用户都有一个自己的目录,创建用户后,在/home目录中创建一个子目录,专用于该用户。
/lib: lib是Library(库) 的缩写这个目录里存放着系统最基本的静态和动态链接库。
/lost+found: 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/media: linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
/mnt: 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt上,然后进入该目录就可以查看光驱里的内容了。
/opt: opt是optional(可选)的缩写,这是给主机额外安装软件所摆放的目录。例如Oracle数据库系统安装后的文件可以放在这个目录中。
/proc: proc是Processes(进程)的缩写,/proc是伪文件系统(虚拟文件系统),存放了当前内核运行状态的特殊文件,它是系统内存的映射,读取这个目录下的文件可以获取系统运行的信息。
/root: 该目录为系统管理员的主目录。
/sbin: s是Super User的意思,是Superuser Binaries(超级用户的二进制文件)的缩写,/sbin存放了系统管理员使用的系统管理程序。
/selinux: 这个目录是Redhat(CentOS)特有的目录,selinux 是一种安全机制,类似于Windows的防火墙,但是,这套机制比较复杂,这个目录了与selinux相关的文件。
/srv: 该目录存放了服务启动之后的数据。
/sys: 该目录挂载了sysfs文件系统,存放了系统设备信息,包含所有系统硬件层次的视图。
/tmp: tmp是temporary(临时)的缩写这个目录是用来存放一些临时文件的。
/usr: usr是unix shared resources(共享资源)的缩写,这是一个非常重要的目录,很多应用程序和文件存放在这个目录下,类似Windows的Program Files目录。
/var: var是variable(变量)的缩写,存放着经常变动的文件,如缓存文件、日志文件、程序运行时产生的文件等。
/run: 这是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
3.创建目录
命令:mkdir + 目录名
[root@localhost ~]# cd /opt/
[root@localhost opt]# mkdir demo
[root@localhost opt]# ls
demo
4.删除目录
命令: rm
[root@localhost opt]# rm -rf demo/
[root@localhost opt]# ls
[root@localhost opt]#
5.创建文件
命令:[root@localhost opt]# touch 1.txt
[root@localhost opt]# ls
1.txt
[root@localhost opt]# touch 1.txt
[root@localhost opt]# ls
1.txt
6.删除文件
命令: rm
[root@localhost opt]# ls
1.txt
[root@localhost opt]# rm -rf 1.txt
[root@localhost opt]# ls
[root@localhost opt]#
上古神器vi
vi是最强大的文本编辑器,没有之一。
1.创建并打开文件
命令: vi + 文件名
[root@localhost opt]# ll
total 0
[root@localhost opt]# vi 1.txt
~
~
~
~
~
"1.txt" [New File]
2.vi的两种模式
vi 有两种模式,命令模式和编辑模式,在命令模式下,键盘输入是命令,在编辑模式下,键盘输入的才是字符。
进入vi时,缺省是命令模式。
3.vi的常用命令
i 在光标所在位置前面开始插入。
a 在光标所在的位置后面开始插入。
o 在光标所在位置的下面插入空白行。
O 在光标所在位置的上面插入空白行。
I 在光标所在位置的行首开始插入。
A 在光标所在位置的行末开始插入。
Esc 从编辑模式切换到命令模式。
Ctrl+u 上翻半页。
Ctrl+d 下翻半页。
Ctrl+insert 相当于Ctrl+c。
Shift+insert 相当于Ctrl+v。
以上两个命令在windows和UNIX中是通用的。
Ctrl+g 显示光标所在位置的行号和文件的总行数。
nG 光标跳到文件的第n行的行首。
G 光标跳到文件最后一行。
:5回车 光标跳到第5行。
:n回车 光标跳到第n行。
0 光标跳到当前行的行首。
$ 光标跳到当前行的行尾。
w 光标跳到下个单词的开头。
b 光标跳到上个单词的开头。
e 光标跳到本单词的尾部。
x 每按一次,删除光标所在位置的一个字符。
nx 如"3x"表示删除光标所在位置开始的3个字符。
dw 删除光标所在位置到本单词结尾的字符。
D 删除本行光标所在位置后面全部的内容。
dd 删除光标所在位置的一行。
ndd 如"3dd"表示删除光标所在位置开始的3行。
yy 将光标所在位置的一行复制到缓冲区。
nyy 将光标所在位置的n行复制到缓冲区。
p 将缓冲区里的内容粘贴到光标所在位置。
r 替换光标所在位置的一个字符。
R 从光标所在位置开始替换,直到按下Esc。
cw 从光标所在位置开始替换单词,直到按下Esc。
u 撤销命令,可多次撤销。
J 把当前行的下一行文本拼接到当前行的尾部。
/abcd 在当前打开的文件中查找文本内容“abcd”。
n 查找下一个。
N 查找上一下。
. 重复执行上一次执行的vi命令。
~ 对光标当前所在的位置的字符进行大小写转换。
:w回车 存盘。
:w!回车 强制存盘。
:wq回车 存盘退出。
:w 文件名 把当前文件另存为……
:x回车 存盘退出。
:q回车 不存盘退出。
:q!回车 不存盘强制退出。
:g/aaaaaaaaa/s//bbbbbb/g回车 把文件中全部的aaaaaaaaa替换成bbbbbb。
vi *.cpp *.h 打开全部后缀为*.cpp和*.h的文件。
:n 切换到下一个文件。
配置网络
1. 进入配置文件
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
2.修改配置文件
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
...
BOOTPROTO=static
...
ONBOOT=yes
IPADDR=10.0.0.10
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=114.114.114.114
3.重启服务
[root@localhost ~]# systemctl restart network
4.检测
[root@localhost ~]# ip a
1: lo: ......
......
2: eth0: .....
....
inet 10.0.0.10/24 brd 10.0.0.255 scope global noprefixroute eth0
.....
5.查看是否痛外网
[root@localhost ~]# ping baidu.com -c 3
PING baidu.com (39.156.66.10) 56(84) bytes of data.
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=1 ttl=128 time=54.0 ms
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=2 ttl=128 time=52.9 ms
64 bytes from 39.156.66.10 (39.156.66.10): icmp_seq=3 ttl=128 time=101 ms
--- baidu.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2019ms
rtt min/avg/max/mdev = 52.982/69.354/101.048/22.416 ms
配置yum源
1.挂载本地yum源
[root@localhost ~]# ll /mnt/
total 0
[root@localhost ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# ls /mnt/
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
设置开机自动挂载
[root@localhost ~]# echo mount /dev/cdrom /mnt/ >> /root/.bashrc
2.修改配置文件
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# rm -rf *
[root@localhost yum.repos.d]# ls
[root@localhost yum.repos.d]#
[root@localhost yum.repos.d]# vi local.repo
[local]
name=local
gpgcheck=0
baseurl=file:///mnt
3.清理缓存
[root@localhost yum.repos.d]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: local
4.检测
[root@localhost yum.repos.d]# yum repolist
Loaded plugins: fastestmirror
Determining fastest mirrors
local | 3.6 kB 00:00:00
(1/2): local/group_gz | 153 kB 00:00:00
(2/2): local/primary_db | 3.3 MB 00:00:00
repo id repo name status
local local 4,070
安装基础软件
1.安装vim
[root@localhost ~]# yum -y install vim
Loaded plugins: fastestmirror
.......
Complete!
2.安装快捷键
[root@localhost ~]# yum -y install bash-completion
Loaded plugins: fastestmirror
....
bash-completion.noarch 1:2.1-8.el7
Complete!
安装完成以后 logout 一下生效
[root@localhost ~]# logout