Linux第二篇【系统环境、常用命令、SSH连接、安装开发环境】
系统环境
我们知道Windows的出色就在于它的图形界面那一块,而Linux对图形界面的支持并不是那么友好…其实我们在Windows下对图形界面进行的操作都是得装换成命令的方式的!
当然了,我们在Ubuntu系统下如果使用图形界面操作也是转换成命令的方式,为了更好地提高性能,我们基本在Linux系统都是使用命令来操作,因此我们不得不学Linux的常用命令
Linux默认有6个命令交互通道和一个图形界面交互通道,默认进入到的是图形界面通道
- 命令交互模式切换:ctrl+alt+f1—f6
- 图形交互界面 ctrl+alt+f7
图形界面交互模式
- terminal: 图形界面的命令终端,它是图形界面交互通道的延伸,要依赖于图形界面
进入到终端是这样子的,其实我们的Linux图形界面的命令终端就类似于我们在Windows下的控制台
Windows控制台也就是这个:
命令提示符的意义
fucheng@ubuntu:~$ 这句话是什么意思的呢??
- fucheng:用户名
- ubuntu:主机名
- ~ :路径 ,假如当前的路径正好是该用户存放数据的根目录 ,则显示~
:用户的类型 代表普通用户 # 代表 超级用户
查看文件的权限
我们可以通过命令来查看该目录下的文件的详细信息:
ls -la
我们得到的结果是这样的:
total 100
drwxr-xr-x 15 fucheng fucheng 4096 Aug 1 23:18 .
drwxr-xr-x 3 root root 4096 Aug 1 23:08 ..
-rw-r--r-- 1 fucheng fucheng 220 Aug 1 23:08 .bash_logout
-rw-r--r-- 1 fucheng fucheng 3637 Aug 1 23:08 .bashrc
drwx------ 20 fucheng fucheng 4096 Aug 1 23:31 .cache
drwx------ 15 fucheng fucheng 4096 Aug 1 23:18 .config
drwxr-xr-x 3 fucheng fucheng 4096 Aug 1 23:19 Desktop
-rw-r--r-- 1 fucheng fucheng 25 Aug 1 23:11 .dmrc
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Documents
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Downloads
-rw-r--r-- 1 fucheng fucheng 8980 Aug 1 23:08 examples.desktop
drwx------ 3 fucheng fucheng 4096 Aug 1 23:12 .gconf
-rw------- 1 fucheng fucheng 318 Aug 1 23:11 .ICEauthority
drwx------ 3 fucheng fucheng 4096 Aug 1 23:11 .local
drwx------ 4 fucheng fucheng 4096 Aug 1 23:18 .mozilla
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Music
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Pictures
-rw-r--r-- 1 fucheng fucheng 675 Aug 1 23:08 .profile
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Public
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Templates
drwxr-xr-x 2 fucheng fucheng 4096 Aug 1 23:11 Videos
-rw------- 1 fucheng fucheng 51 Aug 1 23:11 .Xauthority
-rw------- 1 fucheng fucheng 711 Aug 1 23:11 .xsession-errors
在第一列就是文件的权限,那他们代表的是什么意思呢??
w :可写 r: 只读 x:可执行 - :无权限
- 字符表示法
- drwxr-xr-x【它是一个普通文件,在当前的用户下可写可读可执行,在同组的用户下可读可执行,不同的用户下可读可执行】
- 第一个字符 :文件的类型 d :普通文件 :文件夹 c :串口文件 l :连接文件
- 2-4 字符 : 该文件的属主用户的权限
- 5-7 字符 : 与属主用户同一组的其他用户的权限
- 8-10 字符 : 不同组的其他用户的权限
- 数字表示法【8进制的权重来表示】
- -rw-r–r :文件的默认权限 644
- drwxr-xr-x : 目录的默认权限 755
Linux常用命令
关机重启注销命令
1.注销、关机、重启
- 注销 :logout :登出 、exit
- 关机 :
shutdown - h 时间
- h :关机
- 时间 :
1. now :马上
2. 12.30 :指定具体时间
3. 3:几分钟以后
sudo : superuser do :由超级用户来执行该命令
要配置sudo 命令 : 授权 哪些用户能执行哪些命令
由超级用户配置 sudo
/etc/sudoers
sudo shutdown -h now 当前账号:itcast
- 重启 :
shutdown -r 时间
-r :restart
在Linux中,关机和重启是需要权限的,因为我们不可能说把服务器关了就关了,是需要超级管理员授予我们权限来进行关机或重启的
文件操作命令
1. ls : 查看目录内容
- l :查看详细信息
- a :查看所有文件(隐藏)
man :manual : 手工,帮助 ,帮助命令,好比windows help
命令: man ls
2. mkdir :创建目录
Desktop:
- java
- JEE : aa.txt bb.txt
- Android
3. cd 切换目录
- cd .. 记得要加空格
- cd ./java 进入当前目录的子目录
- cd ../xxx 进入上一级目录的子目录
tab :自动补全
4. touch :创建一个空白的普通文件
touch aa.txt
5. echo :把内容重定向到指定的文件中 ,有则打开,无则创建
6. cat、more :查看文件内容
- cat :查看文件内容
- more :分页查看文件内容,按空格键换页
7. cp、mv、rm
- cp :复制
cp bj.txt ./java/jee
- mv :剪切、重命名
1. 剪切 :mv aa.txt ../android/
2. 重命名 :假如剪切的文件 存放在同一个目录中 ,则是重命名
mv bb.txt cc.txt
- rm :删除文件或者文件夹
-f : 假如要删除的文件不存在,也不提示
-i : 删除前提示 ,默认不删除,要删除,输入y
-d : 删除空白目录
-r :递归删除
8. wc :word count :统计字符数
154 233 3418
- 154 :行数
- 233 :单词数
- 3418 :字符数
命令: wc bj.txt
9. ln :创建连接文件
- 默认创建的是硬连接,好比复制 ,但是两个文件会同步
命令:ln ./java/android/aa.txt aaa
- s :创建的是软连接
10. pwd :查看当前目录的绝对路径
11. 管道命令 |
命令: ls -la | wc
12. 重定向
- > :覆盖模式
命令: echo "ww">aaa
- >>:追加模式
命令: echo "ww">>aaa
13. passwd :设置密码 ,ubuntu默认 root账号是没有开启 ,只要设置root密码即可开启
sudo passwd root
14. su 切换目录
su root
root用户切换到其他账号不需要密码
系统命令
1.stat :查看文件的详细信息
stat bj.txt
2.who与whoami
who : 查看在线的用户
whoami :查看当前自己的用户
3.hostname : 显示主机名
hostname
4.uname :显示系统信息
-a :显示完整的系统信息
5.top :显示当前耗时的进行的信息 ,每3秒刷新一次
cltr+c 中断
6.ps :显示当前进程的快照
- axu
7.du :显示文件的大小信息
8.df :磁盘使用情况 disk free
9.ifconfig :查看或者配置网卡信息 ,好比windows 的ipconfig
ipv4:32位 2-32次方 ipv6 128位 是 ipv4 2-96次方倍数
设置虚拟机ip地址:
1. 设置vmware的连接方式
- 共享宿主机的ip地址,在网上邻居找不到
- 桥接方式,需要单独设置ip,可以在网上邻居查找
2. 图形界面设置ip地址
edit connection --》ipv4--》manual(手工设置)--》add (ip地址,子网掩码)
3.命令方式设置ip地址
静态设置ip:
sudo ifconfig eth0 192.168.15.122 netmask 255.255.255.0
10.ping 测试与目标主机连接情况
11.clear : 清除屏幕 windows: cls
12.man :帮助命令
man 命令
13.kill :杀死进程
kill pid
14.netstat :网络连接详细信息
15. useradd
- 查看用户信息
sudo cat /etc/passwd
itcast:x:1000:1000:UbuntuA,,,:/home/itcast:/bin/bash
- itcast:用户名
- x :密码 :已经加密 ,密码存放在 /etc/shadow
- 1000: 账号id ,userId
- 1000: 组id ,group id
- UbuntuA,,, :账号描述
- /home/itcast :该账号存放文件的默认位置 ~
- /bin/bash:该用户的shell脚本的解析方式 ,sh 、bash、rbash
- 创建用户
sudo useradd lijun -d /home/lijun -s /bin/bash
-d :指定该用户的home 路径
- s :该用户的shell解析方式
步骤:
1. 创建 /home/lijun 目录
2. 执行 useradd 命令
3. 用 passwd 设置密码
4. su 切换用户
打包、压缩文件
windows : zip、rar
linux :gz ,bzip,zip
1.tar :打包、拆包命令
tar - cxzjvf <打包后的文件> <欲打包的目录>
- c :创建的一个归档文件 ,即打包文件夹
- x :拆包
- z :以gzip 格式压缩,默认压缩倍数 6倍 (0-9)
- j :以bzip2格式压缩
- v :显示打包或者拆包的文件信息
- f : 后面紧接一个 归档文件
- 打包文件
tar -cvf news.tar ./java 摘要
- 拆包文件
tar -xvf news.tar
2.gzip 、bzip2 压缩与解压
1. 压缩文件
gzip news.tar
2. 解压文件
gzip -d news.tar.gz
-d :解压
3.打包及压缩
- 打包及压缩
tar -czvf news.tar.gz ./java
- 拆包及压解缩
tar -xzvf news.tar.gz
软件管理
windows : .exe 安装 、卸载
- 安装: mysql.exe cc.exe
- 卸载 : 该软件唯一的标识 ,包名 alibaba
android : *.apk 卸载 包名
red hat :*.rpm
ubuntu : 对debian的升级 *.deb 格式
安装软件
1.安装软件
- dpkg :debian package
离线安装:
安装 : sudo dpkg - i <文件名>
-i :install
命令:sudo dpkg -i ./tree_1.6.0-1_i386.deb
卸载 : sudo dpkg - r <包名>
-r :remove
命令:sudo dpkg -r tree
- apt-get :advance package tools
对dpkg命令的升级,在线安装
安装 : sudo apt-get -install <包名>
卸载 : sudo apt-get -remove <包名>
安装VIM
1. 安装vim
2. 使用vim
操作模式:
1. 一般模式 ,默认进入的一般模式,该模式不能编辑文档 ,只能查看
按 i(insert) 进入 插入模式
2. 编辑模式、插入模式
该模式可以编辑文档,按esc 退出插入模式,进入到一般模式
3. 命令模式 :在 一般模式中按:进入命令模式
- q: 安全退出,当没有操作该文档,则直接按q退出vim
- q!:当修改了内容,但是不想保存,则q!强制退出
- wq :保存退出
- set number 显示行号
- set nonumber 取消行号显示
使用vim去编辑aa.txt
搭建开发环境
七、搭建Java服务器,并且实现远程安全访问linux系统
1.通过ssh实现安全远程访问linux系统
ssh :secure shell
加密:
1. 对称加密 (加密密钥与解密密钥相同)
des 、aes
2. 非对称加密(加密密钥与解密密钥不同)
RSA :公钥、私钥
数字摘要:
md5 \sha1
1. 查看是否安装了ssh服务端与客户端
sudo apt-cache policy openssh-client openssh-server
2. 安装ssh 服务端与客户端软件
sudo dpkg -i ./ssh/*
3. 通过windows ssh客户端来访问linux服务端
- putty :远程登录
- winscp433setup.exe :文件传输
2. 安装jdk
进入 root用户
实现步骤:
1. jdk 存放在哪里 /opt
2. 把软件拷贝到/opt
3. 绿色软件,解压
4.设置环境变量
vim /etc/profile
export JAVA_HOME="/opt/jdk1.6.0_39"
export PATH="$JAVA_HOME/bin:$PATH"
5. 刷新配置 ,让配置生效
source /etc/profile
6. 编写Demo.java,测试
-javac Demo.java
- java Demo
3. 安装tomcat
步骤:
1. 安装在哪里 /opt
2. 拷贝、解压
tar -xzvf apache-tomcat.tar.gz
3. 运行
- ./startup.sh
- ./shutdown.sh
4. 安装Eclipse
步骤:
1.安装在/opt
2. 拷贝、解压
cp eclipse.tar.gz /opt
tar -xzvf eclipse.tar.gz
SSH远程访问
想要Windows客户机远程操作Linux系统的话,那么我们需要在虚拟机中配置以下:
查看是否安装了ssh服务端与客户端,发现服务端并没有安装。
安装ssh 服务端与客户端软件
安装完毕后再查看
通过ifconfig命令查询出服务器的ip地址
通过putty进行访问
通过winscp进行访问
安装JDK
将开发包复制到opt目录中
root@ubuntu:/home/fucheng/Desktop/practice-software# cp ./jdk-6u39-linux-i586.bin /opt
切换到opt目录
root@ubuntu:/home/fucheng/Desktop# cd /opt
查看opt目录是否有jdk开发包
root@ubuntu:/opt# ls -l
total 70076
-rwxr--r-- 1 root root 71756435 Aug 2 19:40 jdk-6u39-linux-i586.bin
安装JDK,bin是一个可执行的软件,直接执行就行了!
./jdk-6u39-linux-i586.bin
配置环境变量
vim /etc/profile
export JAVA_HOME="/opt/jdk1.6.0_39"
export PATH="$JAVA_HOME/bin:$PATH"
5. 刷新配置 ,让配置生效
source /etc/profile
编译运行java
root@ubuntu:/home/fucheng/Desktop# javac bb.java
root@ubuntu:/home/fucheng/Desktop# java bb
hello java
root@ubuntu:/home/fucheng/Desktop#
3. 安装tomcat
步骤:
1. 安装在哪里 /opt
2. 拷贝、解压
tar -xzvf apache-tomcat.tar.gz
3. 运行
- ./startup.sh
- ./shutdown.sh
4. 安装Eclipse
步骤:
1.安装在/opt
2. 拷贝、解压
cp eclipse.tar.gz /opt
tar -xzvf eclipse.tar.gz