赞
踩
Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。
Vagrant是一个比较流行的虚拟机管理软件,使用Vagrant 可以让我们用命令直接从云上下载虚拟机的镜像,然后进行创建和管理等,vagrant集成了主流的虚拟机管理工具vmvare 和 virtualbox,默认使用virtualbox。
https://www.vagrantup.com/downloads下载最新版Vagrant,由于Vagrant没有图形界面,所以安装后没有桌面快捷方式。
配置
vagrant的box默认下载用户的宿主目录\vagrant_box,环境变量配置如下图:
使用vagrant安装的虚拟机默认2个用户
VirtualBox 是一个免费开源的虚拟机,相对 VMware 来说更加小巧,个人比较喜欢。虽然 Vagrant 也支持 VMware,不过 VMware 是收费的,对应的 Vagrant 版本也是收费的。下载地址https://www.virtualbox.org/wiki/Downloads
配置
管理->全局设定->
修改虚拟机的位置
进入Centos官网找要下载的版本https://vault.centos.org/
1.初始化产生配置文件
vagrant init centos
2.修改配置文件
Vagrantfile文件参考如下
# -*- mode: ruby -*- # vi: set ft=ruby : # Vagrantfile API/syntax version. Don't touch unless you know what you're doing! VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| (1..3).each do |i| config.vm.define vm_name = "s#{i}" do |config| config.vm.provider "virtualbox" do |v| v.customize ["modifyvm", :id, "--name", vm_name] v.customize ["modifyvm", :id, "--memory", "8192"] v.customize ["modifyvm", :id, "--cpus", "2"] end config.vm.box = "centos_v1" config.vm.hostname =vm_name config.ssh.username = "root" config.ssh.password = "vagrant" # config.ssh.shell = "powershell" #config.ssh.shell = "bash -l" config.vm.network :private_network, ip: "192.168.56.7#{i}" config.vm.provision :shell, :path => "bootstrap.sh" end end end
3.bootstrap.sh
#!/usr/bin/env bash # The output of all these installation steps is noisy. With this utility # the progress report is nice and concise. echo "Update /etc/hosts" cat > /etc/hosts <<EOF 127.0.0.1 localhost 192.168.56.71 s1 192.168.56.72 s2 192.168.56.73 s2 EOF echo "Disable iptables" setenforce 0 >/dev/null 2>&1 && iptables -F ### Set env ### echo "export LC_ALL=en_US.UTF-8" >> /etc/profile cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
4.查看本地box列表
5.添加box
vagrant box add [name] ./[name].box
6.删除box
vagrant box remove [name]
7.安装虚拟机
vagrant up //启动全部虚拟机
vagrant up s1 //启动具体一个虚拟机
vagrant halt //关闭所有虚拟机
8.测试连接
使用MobaXterm连接刚才安装的3个服务器192.168.56.71,72,73
ip addr //查看ip地址
hostname //服务器名
测试结果如图
此时虚拟机安装完成
1.安装vim
标准的虚拟机box没有vim
yum install vim -y //安装vim
2.打包当前虚拟机,产生一个自定义box
vagrant halt s1 //关闭虚拟机
vagrant package --base s1 --output centos_v2.box //打包当前虚拟机
3.把centos_v2添加到vagrant中
在Vagrantfile文件中修改
4.使用安装了vim的box安装新的虚拟机
执行vagrant up
1.echo命令
echo hello linux >>a.txt //追加
echo hello linux > a.txt //覆盖
2.ls(list)命令
ls -la //详细查看所有文件和目录
ls -l //详细列表 ll=ls -l
ls -a //显示隐藏的文件、目录
3.man命令
man [命令名] //查看所有关于该命令的信息
man ls
4.cd(change directory)命令
cd ~ //进入用户的宿主目录
cd .. //进入上级目录
cd - //进入上一个历史目录
5.pwd(print working directory) 命令
pwd //显示当前工作目录
6.su(switch user)命令
su root //切换用户root
7.mkdir(make directoriy)命令
mkdir /home/vagrant/java-project/src //创建目录
mkdir -p /home/vagrant/java-project/src //-p自动产生父目录
8.tree命令
yum install -y tree //安装tree
tree [目录名] //打印目录树
9.touch命令
touch Hello.java //创建空文件
10.cp(copy)命令
cp java-project/src/main/java/Hello.java ./java-project/src/test/java/
//拷贝main目录的java目录下Hello.java文件到test目录的java目录下
cp -r java-project/resources/ java-project/src/main/ //-r递归拷贝
11.rm(remove)命令
rm java-project/src/test/java/Hello.java //删除文件或目录
rm -r //递归删除
rm -f //强制删除
12.mv(move)命令
mv java-project/src/main/java/ java-project/src/ //移动main目录下的Java目录到src目录下
mv java-project/src/java/Hello.java java-project/src/HelloWorld.java //修改Hello.java为HelloWorld.java
13.cat(catenate)命令
cat HelloWorld.java //显示文本文件内容
cat a.txt > b.txt //把a.txt内容覆盖到b.txt
cat a.txt >> b.txt //把a.txt追加到b.txt
14.more和less命令
15.head命令
head -n 10 HelloWorld.java //显示前10行内容
16.tail命令
tail -n 10 HelloWorld.java //显示后10行内容
tail -n 20 -f HelloWorld.java //循环读取(fellow,即时读取)
17.wc(word count)命令
wc -w -l -m a.txt
18.find命令
find -name He*.java //查找文件
19.grep(global regular expression print)命令
全局正则表达式输出
grep h HelloWorld.java -n //在指定的文本文件中查找指定的字符串
20.ln(link)命令
ln -s 目标地址 软链接名 //创建软连接
echo "Hello kdx" >> xing //通过软连接添加内容
cat xing //通过软连接查看文件内容
1.du
du -h -s //-h显示大小 -s显示总的大小
2.free
3.netstat
yum install net-tools -y //安装netstat
netstat -tunpl //查看所有端口占用情况
4.ifconfig
5.ping
6.top
7.ps
ps -aux
//管道 命令1 | 命令2 把命令1的结果给命令2作为参数
ps -aux | grep tail
8.kill
kill -9 [pid]
1.tar
1.1 打包和压缩
tar -cvf java-project.tar ./java-project/ //打包java-project目录
tar -xvf java-project.tar //解压
1.2 以gzip方式压缩和解压
tar -czvf java-project.tar.gz ./java-project //z表示以gz格式压缩
tar -zxvf java-project.tar.gz //解压
1.3 以biz2方式压缩和解压
tar -cjvf java-project.tar.bzip2 ./java-project //压缩
tar -xjvf java-project.tar.bzip2 //解压
2.gzip
gzip OAuth2Config.java //压缩
gzip -d OAuth2Config.java.gz //解压
3. bzip2
bzip2 OAuth2Config.java //压缩
bzip2 OAuth2Config.java.bz2 -d //解压
1.vim模式
2.底行命令
3.移动命令
4.替换命令
5.编辑命令
1.用户管理的配置文件
2./etc/passwd格式
用户名 | 用户登录系统的用户名 |
---|---|
密码 | 密码位 |
UID | 用户标识号 |
GID | 默认组标识号 |
描述信息 | 存放用户的描述信息 |
宿主目录 | 用户登陆系统的默认目录,默认是在/home/下 |
命令解析器 | 用户使用的Shell,默认是bash |
用户分类:
3./etc/shadow格式
用户名 | 登陆系统的用户名 |
---|---|
密码 | 加密密码 |
最后一次修改时间 | 用户最后一次修改密码距现在的天数,从1970-1-1起 |
最小时间间隔 | 两次修改密码之间的最小天数 |
最大时间间隔 | 密码有效天数 |
警告时间 | 从系统警告到密码失效的天数 |
账号闲置时间 | 账号闲置时间 |
失效时间 | 密码失效的天数 |
标志 | 标志 |
4./etc/group格式
组名 | 用户所在的组 |
---|---|
组密码 | 密码位,一般不使用 |
组密码 | 组标识号 |
组内用户列表 | 属于该组的用户列表 |
5.用户和组的管理命令
(1)用户管理命令
(2)组管理命令
1.添加一个demo用户,设置它属于users组,并添加注释信息
useradd demo
usermod -g users demo
usermod -c "hello demo" demo
#等于上面三个命令
useradd -g users -c "hello demo" demo
执行
结果
2.设置密码
passwd demo
结果
登录demo用户
登录成功
3.将demo添加到sys和root组中
usermod -G sys,root demo
结果
4.把demo从sys组中删除
gpasswd -d demo sys
结果
5.添加一个hello组
groupadd hello
执行vim group
结果
6.修改hello组为hi组
groupmod -n hi hello
执行vim group
结果
7.将demo添加到hi组
usermod -G hi demo
groups demo
结果
1.权限表示符号
示例
三种基本权限
2.chmod命令
chmod修改文件权限命令(change mode)
两种方式
su vagrant
//设置~/vagrant目录让其他人可以进入
chmod o+x vagrant
//这时我们切换jack,可以执行(进入)~/vagrant
su jack
cd /home/vagrant
//设置~/vagrant的目录的其他用户有读写执行权限
su vagrant/root
chmod o+rwx ~/vagrant
//修改OAuth2Config.java的权限,让所有人有读写执行
su root/vagrant
chmod 777 ~/OAuth2Config.java
//修改OAuth2Config.java的权限,当前用户
3.chown命令
chown root:jack OAuth2Config.java //使用www查看OAuth2Config文件,因为www属于jack,所以可以查看
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。