仅供个人学习
Zookeeper03 就是 用户名root 密码123456
root是linux下的系统管理员
普通用户登陆后可以用su- 切换为系统管理员
linux可以做java/c开发
在linux的vi编辑器内写一下简单的java程序“hello,world”
1、Vi Hello.java
2、输入i[进入到插入模式]
public class hello{
public staticvoid main(String []args){
System.out.println("hello,world");
}
}
3、输入esc键[进入命令模式]
4、输入wq保存退出/q!退出但不保存
6、编译javac hello.java
javac Hello.java
7、运行 java Hello [java运行的是class文件]
如何在linux下开发c程序或是c++(cpp)程序
建立vi hello.cpp
#include
int main(){
printf("hello!");
return 0;
}
gcc hello.cpp 用gcc编译器编译出来未命名会是a.out文件(在安装了gcc 编译器的情况下)
gcc -o [文件名] [源文件名] 用gcc编译器编译文件命名
/a.out 在linux下运行c程序只要输入/就可以运行
Linux中文显示乱码?如何设置centos显示中文
Linux怎么查看设置系统语言包
查看当前系统语言
登陆linux系统打开操作终端之后,输入 echo $LANG可以查看当前使用的系统语言。如
查看安装的语言包
查看是否有中文语言包可以在终端输入 locale命令,如有zh cn 表示已经安装了中文语言
如果没有中文语言呢
可以通过网上下载安装中文语言包yum groupinstall chinese-support(不能联网的通过其他电脑下载,上传上去吧)
如何修改系统语言为中文
1 临时更换语言
如果只是临时更换linux系统的语言环境,可以通过输入设置 LANG=语言名称, 如中文是
Zn_CN.UTF-8(注意我这里本来就是中文的,我临时设置为英文
修改系统默认语言
以上方法是通过修改设置系统默认的语言配置
如Vi /etc/sysconfig/i18n (注意改好之后重启一下系统)
其他注意事项
如果按照以上方法设置修改设置中文语言还是不行的话,注意您的链接终端选择的编码。
如xshell为例,把终端的编码选择中文,或者UTF8即可
设置好之后,再次查看之前的乱码文件就能看到显示为中文了
LANG=zh_CN.gbk
介绍linux 的文件目录
linux下的文件目录
linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层
是根目录“/”,然后在此目录下再创建其他的目录
深刻理解linux文件目录是非常重要的。
linux下的根目录中重要的目录如下是系统自动分配的
root目录、home目录、bin目录、sbin目录、mnt目录、etc目录、var目录、boot目录、usr目录、tmp目录(均为同级目录)
root目录:用于存放root用户相关文件的目录
home目录:用于存放普通用户的相关文件的目录
bin目录:用于存放常用命令的目录
sbin目录:用于存放要具有一定权限才可以使用的命令的目录
mnt目录:用于默认挂载软驱、光驱的目录
etc目录:用于存放配置相关的文件的目录
var目录:用于存放经常变化的文件的目录
boot目录:用于存放系统引导文件的目录(重要),如果随意删除的话有可能启动都启动不起来了
usr目录:用于存放安装的默认目录(安装文件会默认安装在usr目录里)
tmp目录:用于存入临时文件的目录
linux 常见的命令
1、 关机命令
shutdown -h now 立刻进行关机
shutdown -r now 现在重新启动计算机
reboot 现在重新启动计算机
logout 注销当前连接
2、文件系统操作
查看当前所在的工作目录
pwd
查看当前系统的时间
date
查看有谁在线(哪些人登陆到了服务器)
who 查看当前在线
last 查看最近的登陆历史记录
ls or dir/ 查看根目录下的子节点(文件夹和文件)信息
-l 是以更详细的列表形式显示
-a是显示隐藏文件
命令组合使用:
ls -al 或者是ls –la 就是可以更加详细的显示文件并且包含隐藏文件
ls –lh -al –lh 显示的是含有文件的大小并且包含隐藏文件
mkdir aaa 这是相对路径的写法
mkdir -p aaa/bbb/ccc
mkdir /data 这是绝对路径的写法
rmdir 可以删除空目录
rm -r aaa 可以把aaa整个文件夹及其中的所有子节点全部删除
rm -rf aaa 强制删除aaa
mv aaa angelababy
touch somefile.1 创建一个空文件
echo "i miss you,my baby" > somefile.2 利用重定向“>”的功能,将一条指令的输出结果写入到一个文件中,会覆盖原文件内容
echo "huangxiaoming ,gun dan">> somefile.2 将一条指令的输出结果追加到一个文件中,不会覆盖原文件内容
用vi文本编辑器来编辑生成文件(重要)cat 只能看不能改
最基本用法
vi somefile.4
一般模式:编辑模式之前的模式(按i键之前)
输入wq保存退出/q!退出但不保存、
a 在光标后一位开始插入
A 在该行的最后插入
I 在该行的最前面插入
gg 直接跳到文件的首行
shift+G 直接跳到文件的末行
dd 删除行,如果 5dd ,则一次性删除光标后的5行
yy 复制当前行, 复制多行,则 3yy,则复制当前行附近的3行
p 粘贴
v 进入字符选择模式,选择完成后,按y复制,按p粘贴
ctrl+v 进入块选择模式,选择完成后,按y复制,按p粘贴
shift+v 进入行选择模式,选择完成后,按y复制,按p粘贴
查找并替换(在底行命令模式中输入)
%s/sad/88888888888888 效果:查找文件中所有sad,替换为88888888888888
/you 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个)
cp somefile.1 /home/hadoop/
cp install.log ./install.exe 把文件复制到当前路径下,并且修改名称
拷贝文件夹
cp -rf aaaa/. ./bbbb/ 最后面的“/” 是必须有的
查找文件
Find /-name aaa.java / 是指的是根目录
按照文件的特征进行查找
(1)find / -amin -10 # 查找在系统中最后10分钟访问的文件(accesstime) (2)find/ -atime -2 # 查找在系统中最后48小时访问的文件
(3)find / -empty # 查找在系统中为空的文件或者文件夹
(4)find / -group cat # 查找在系统中属于group为cat的文件
(5)find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modifytime) (6)find/ -mtime -1 #查找在系统中最后24小时里修改过的文件
(7)find / -user fred #查找在系统中属于fred这个用户的文件
(8)find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
(9)find / -size -1000k #查找出小于1000KB的文件
查找文本文件中的内容
1)grep “xuduan” aaa.java 就是在aaa.java文件中找xuduan这个字符串
2)grep -n “xuduan” aaa.java -n可以显示在第几行
more somefile (more 后面跟的文件或者是文件夹)可以翻页查看, 下翻一页(空格) 上翻一页(b) 退出(q)
less somefile
输入 y
可以翻页查看,下翻一页(空格) 上翻一页(b),上翻一行(↑) 下翻一行(↓) 可以搜索关键字(/keyword)退出(q)
head -10 install.log 查看文件头部的10行
tail -10 install.log 查看文件尾部的10行,可以用来查看日志的,因为日志是经常在更新的
tail –f 或者是tail –F 都可以看到实时更新的效果
模拟一下不断打日志的情况
tail -f install.log tail -F install.log
总结:-f和-F都是跟踪testfile文档;当删除testfile文档时,-f就不再跟踪,而-F回继续跟踪并且会提示“tail: `testfile' has become inaccessible: No such file or directory”;当新建一个testfile文档时,-F会继续跟踪显示出来,而-f不会显示;即-F不会因为删除或修改名字而停止跟踪。
重定向命令
ls -l>aa.txt 列表的内容写入文件a.txt中(覆盖写)
ls –al >> a.txt列表的内容追加到文件aa.txt的末尾
管道 | |前面的作为后面的输入文本
3、文件权限的操作
linux文件权限的描述格式解读
linux 中每个用户必须属于一个组,不能独立于组外,在linux中没给文件有所有者,所在组,其他组的概念
当某个用户创建了一个文件后,这个文件的所在组就是该用户所在对的组
用 ls –ahl 命令可以看到文件的所有组
chgrp 组名 文件名 来修改文件所在的组
其他组就是不是用户所在的组
举个例子
添加组
groupadd policeman
查看linux 中的所有组
vi /etc/group 或者是cat/etc/group cat 只是查看并不是编辑模式
useradd -g 组名 用户名 中间一定要右空格 ,创建用户分配到哪个组
用户添加进去以后查看用户信息
Vi /etc/passwd
说明:along 是用户的名字,x 加密过的密码 501 是用户的id,后面的501 是组id,/home/along使用户的主目录
Passwd along 所有的用户的密码都是123
11 表示的该文件夹下面有多少个文件,如果是文件的话,显示的就是1,因为文件就是一个
文件权限
用户自己创建的文件该用户自己就直接拥有对该文件的权限
文件所在组对该文件的权限,就是panpan 和along 一样同样拥有对该文件的权限
drwxr-xr-x (也可以用二进制表示 111 101 101 --> 755)
文件类型:
d:标识节点类型(d:文件夹 -:文件 l:链接)
r:可读 w:可写 x:可执行
第一组rwx: 表示这个文件的拥有者对它的权限:可读可写可执行
第二组r-x: 表示这个文件的所属组对它的权限:可读,不可写,可执行
第三组r-x: 表示这个文件的其他用户(相对于上面两类用户)对它的权限:可读,不可写,可执行
表示的是当前用户对文件的操作权限,查看当前用户是谁可以 who ami
操作文件的权限和文件夹的权限是分开的
662 表示rw-rw--w- 其中rwx 的顺序是一定的,不可以更改,r就在位置1 ,w就在位置2,x 就在位置3
chmod 662 along 表示的是对文件夹的操作,不是对文件夹里面文件的操作,所以文件夹里面的文件要单独操作,如果该用户只对文件具有读的操作,由于不能操作,所以在退出的时候不能用:wq ,只能用:q!
如果要将一个文件夹的所有内容权限统一修改,则可以-R参数
chmod -R 770 aaa/
chown angela:angela aaa/ <只有root能执行>
4、基本的用户管理
添加用户(只有root 用户或者拥有root 权限的用户才可以)
useradd xuduan
修改密码
修改当前用户密码
如果是在当前用户下输入passwd 是给当前的用户重新设置密码
修改普通用户名密码(只有root 用户才能更改其他用户的密码)
Passwd 用户名 直接更改用户的密码
passwd 按提示输入密码即可 密码是xuduan
这个时候可以切换到home下面,在home 下面有一个xuduan的目录
如果切换到xuduan 用户下面去的时候由原来的# 变成了$, Userdel xuduan 这种情况下是用户不存在了,但是用户的文件夹还存在所以采用userdel-r xuduan 这种方式删除的不单单是用户没有了,用户所在的文件夹也没有了
后台服务管理
网卡的主要作用是用来传输,传送和接收网络中的数据的功能,例如下载上传都是利用网卡
# service network restart是重启所有网卡。
例如下面的例子:
>ifconfig eth0 up|down
>service network restart|start|stop
1.前者指定对应网卡后者是所有网卡
2.前者选项有启动和关闭后者有重启选项。
即:前者若要有restart效果,需要ifconfig eth0 down && ifconfig eth0 up[远程操作需要注意]
3.后者service的操作和前者/sbin下命令操作,权限不同
一些情况下service命令会收给root使用,而普通用户在特定情况下仍可以使用ifconfig。
service network status 查看指定服务的状态
service network stop 停止指定服务
service network start 启动指定服务
service network restart 重启指定服务
service --status-all 查看系统中所有的后台服务
设置后台服务的自启配置
chkconfig 查看所有服务器自启配置,就像在windows中一样的服务
后面的数字跟的是启动级别,windows 当中也有启动级别
可以查看启动级别
指定运行级别
命令:init[012356]
运行级别
0:关机
1:单用户
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别是3和5,要修改默认的运行级别可改文件/etc/inittab的
id:5:initdefault:这一行中的数字
chkconfig iptables off 关掉指定服务的自动启动
chkconfig iptables on 开启指定服务的自动启动
windows下创建软链接
E盘做个软连接,就等于创建了数据库,数据放在E盘
cmd下面此命令,等于创建了个文件夹,连接到了E盘
E:\mariadb\ddd 下面要有个db.pt文件,可以复制db.opt重命名 进去
c:\aaa 保证这个文件是不存在的
E:\videos\0902-0916\0906\store\build\classes\com这个文件是存在的
mklink /J c:\aaa E:\videos\0902-0916\0906\store\build\classes\com
压缩和解压
解压缩的时候一定要解压那种文件名后缀是压缩文件后缀的那种才可以,不能是那种虽然是压缩文件但是不是压缩文件后缀名的那种的文件
解压到指定的文件夹,保证aaa 文件夹一定是存在的
软件安装
1 jdk 安装
把mypackage.iso 挂在到linux 操作系统中,挂载就是
操作系统如果想用哪个磁盘中的内容,就把哪个磁盘挂载到哪个
linux 上想用windows 上的东西就可以挂载,挂载是iso 镜像文件,想用的文件是iso 镜像文件里面的文件
方式一:挂载
文件挂载命令mount /mnt/cdrom
问题:linux挂载iso镜像时报错的解决方法 mount: can't find cdrom in/etc /fstab or /etc/mtab
输入命令:mount /mnt/cdrom 输出错误为: mount:can't find cdrom in /etc /fstab or /etc/mtab
通过错误信息可知在/etc/fstab找不到要挂载的文件
解决方式:
方法一:.输入命令:mount-t iso9660 /dev/cdrom /mnt/cdrom 其中/dev/cdrom为软连接指向的是hdc即是镜像文件的挂载盘
这时候在输入命令:ls -l/mnt/cdrom 敲击enter键显示的是你要挂载的iso文件里德所有文件,到此成功挂载镜像
方法二:修改/etc/fstab文件
首先编辑文件fstab命令:vi/etc/fstab 在文件里追加一行内容:/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
然后建立/mnt/cdrom文件夹,命令:mkdir/mnt/cdrom在执行命令:mount/mnt/cdrom
这时候在输入命令:ls -l/mnt/cdrom 敲击enter键显示的是你要挂载的iso文件里的所有文件,到此成功挂载镜像