您的位置:首页 > 理论基础 > 计算机网络

linux01-常用命令、网络、mysql、yum

2017-08-08 20:48 337 查看

常用命令

日常操作命令

**查看当前所在的工作目录

pwd

**查看当前系统的时间

date

**查看有谁在线(哪些人登陆到了服务器)

who 查看当前在线

last 查看最近的登陆历史记录

文件系统操作

ls / 查看根目录下的子节点(文件夹和文件)信息

ls -al -a是显示隐藏文件 -l是以更详细的列表形式显示

创建文件夹

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

用vi文本编辑器来编辑生成文件

最基本用法

vi somefile.4

1、首先会进入“一般模式”,此模式只接受各种快捷键,不能编辑文件内容

2、按i键,就会从一般模式进入编辑模式,此模式下,敲入的都是文件内容

3、编辑完成之后,按Esc键退出编辑模式,回到一般模式;

4、再按:,进入“底行命令模式”,输入wq命令,回车即可

一些常用快捷键

一些有用的快捷键(在一般模式下使用):

a 在光标后一位开始插入

A 在该行的最后插入

I 在该行的最前面插入

gg 直接跳到文件的首行

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定位到上一个)

每次进入vi就有行号

vi ~/.vimrc

set nu

查找

3.查找文件(需要更新库:updatedb)

locate hadoop.txt

4.从某个文件夹开始查找

find / -name “hadooop*”

find / -name “hadooop*” -ls

5.查找并删除

find / -name “hadooop*” -ok rm {} \;

find / -name “hadooop*” -exec rm {} \;

6.查找用户为hadoop的文件

find /usr -user hadoop -ls

7.查找用户为hadoop并且(-a)拥有组为root的文件

find /usr -user hadoop -a -group root -ls

8.查找用户为hadoop或者(-o)拥有组为root并且是文件夹类型的文件

find /usr -user hadoop -o -group root -a -type d

9.查找权限为777的文件

find / -perm -777 -type d -ls

压缩打包

1.gzip压缩

gzip a.txt

2.解压

gunzip a.txt.gz

gzip -d a.txt.gz

3.bzip2压缩

bzip2 a

4.解压

bunzip2 a.bz2

bzip2 -d a.bz2

5.将当前目录的文件打包

tar -cvf bak.tar .

将/etc/password追加文件到bak.tar中(r)

tar -rvf bak.tar /etc/password

6.解压

tar -xvf bak.tar

7.打包并压缩gzip

tar -zcvf a.tar.gz

8.解压缩

tar -zxvf a.tar.gz

解压到/usr/下

tar -zxvf a.tar.gz -C /usr

9.查看压缩包内容

tar -ztvf a.tar.gz

zip/unzip

10.打包并压缩成bz2

tar -jcvf a.tar.bz2

11.解压bz2

tar -jxvf a.tar.bz2

正则

1.cut截取以:分割保留第七段

grep hadoop /etc/passwd | cut -d: -f7

2.排序

du | sort -n

3.查询不包含hadoop的

grep -v hadoop /etc/passwd

4.正则表达包含hadoop

grep ‘hadoop’ /etc/passwd

5.正则表达(点代表任意一个字符)

grep ‘h.*p’ /etc/passwd

6.正则表达以hadoop开头

grep ‘^hadoop’ /etc/passwd

7.正则表达以hadoop结尾

grep ‘hadoop$’ /etc/passwd

规则:

. : 任意一个字符

a* : 任意多个a(零个或多个a)

a? : 零个或一个a

a+ : 一个或多个a

.* : 任意多个任意字符

. : 转义.

\

文件权限的操作

linux文件权限的描述格式解读

drwxr-xr-x (也可以用二进制表示 111 101 101 –> 755)

d:标识节点类型(d:文件夹 -:文件 l:链接)

r:可读 w:可写 x:可执行

第一组rwx: 表示这个文件的拥有者对它的权限:可读可写可执行

第二组r-x: 表示这个文件的所属组对它的权限:可读,不可写,可执行

第三组r-x: 表示这个文件的其他用户(相对于上面两类用户)对它的权限:可读,不可写,可执行

修改文件权限

chmod g-rw haha.dat 表示将haha.dat对所属组的rw权限取消

chmod o-rw haha.dat 表示将haha.dat对其他人的rw权限取消

chmod u+x haha.dat 表示将haha.dat对所属用户的权限增加x

也可以用数字的方式来修改权限

chmod 664 haha.dat

就会修改成 rw-rw-r–

如果要将一个文件夹的所有内容权限统一修改,则可以-R参数

chmod -R 770 aaa/

chown angela:angela aaa/ <只有root能执行>

目录没有执行权限的时候普通用户不能进入

文件只有读写权限的时候普通用户是可以删除的(删除文件不是修改它,是操作父及目录),只要父级目录有执行和修改的权限

基本的用户管理

添加用户

useradd angela

要修改密码才能登陆

passwd angela 按提示输入密码即可

为用户配置sudo权限

用root编辑 vi /etc/sudoers

在文件的如下位置,为hadoop添加一行即可

root ALL=(ALL) ALL

hadoop ALL=(ALL) ALL

然后,hadoop用户就可以用sudo来执行系统级别的指令

[hadoop@shizhan ~]$ sudo useradd huangxiaoming

系统管理操作

查看主机名

hostname

修改主机名(重启后无效)

hostname hadoop

修改主机名(重启后永久生效)

vi /ect/sysconfig/network

修改IP(重启后无效)

ifconfig eth0 192.168.12.22

修改IP(重启后永久生效)

vi /etc/sysconfig/network-scripts/ifcfg-eth0

mount 挂载外部存储设备到文件系统中

mkdir /mnt/cdrom 创建一个目录,用来挂载

mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/ 将设备/dev/cdrom挂载到 挂载点 : /mnt/cdrom中

umount

umount /mnt/cdrom

统计文件或文件夹的大小

du -sh /mnt/cdrom/Packages

df -h 查看磁盘的空间

关机

halt

重启

reboot

配置主机之间的免密ssh登陆

假如 A  要登陆  B
在A上操作:
%%首先生成密钥对
ssh-keygen   (提示时,直接回车即可)
%%再将A自己的公钥拷贝并追加到B的授权列表文件authorized_keys中
ssh-copy-id   B


Linux网络基本配置

1.修改主机名
vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=server1.itcast.cn

2.修改ip地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes     #是否开机启用
BOOTPROTO=static   #ip地址设置为静态
IPADDR=192.168.0.101
NETMASK=255.255.255.0
service network restart

3.修改ip地址和主机名的映射关系
vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.101 server1.itcast.cn

4.关闭iptables并设置其开机启动/不启动
service iptables stop
chkconfig iptables on
chkconfig iptables off


实用命令

rzsz

yum list|grep lrzsz
sudo yum -y install lrzsz.x86_64


批量自动删除rpm包

rpm -qa | grep mysql | while read c; do rpm -e $c --nodeps; done


minimal最小化安装

eth0默认没有自启用

修改配置文件

onboot=true

修改静态地址后发现无法ping外网

需要设置网关

route add default gw 192.168.33.1

添加nameserver

vi /etc/resolv.conf

nameserver 192.168.33.1

挂载光盘

mkdir /mnt/cdrom

mount -t iso9660 -o ro /dev/cdrom/ /mnt/cdrom

解决克隆后eth0不见的问题

直接修改 /etc/sysconfig/network-script/ifcfg-eth0

删掉UUID HWADDR

配置静态地址

然后:

rm -rf  /etc/udev/rules.d/70-persistent-net.rules

然后 reboot

mysql安装

1.上传MySQL-server-5.5.48-1.linux2.6.x86_64.rpm、MySQL-client-5.5.48-1.linux2.6.x86_64.rpm到Linux上

2.使用rpm命令安装MySQL-server-5.5.48-1.linux2.6.x86_64.rpm,缺少perl依赖
rpm -ivh MySQL-server-5.5.48-1.linux2.6.x86_64.rpm

3.安装perl依赖,上传6个perl相关的rpm包
rpm -e perl-*

4.再安装MySQL-server,rpm包冲突
rpm -ivh MySQL-server-5.5.48-1.linux2.6.x86_64.rpm

5.卸载冲突的rpm包
rpm -e mysql-libs-5.1.73-5.el6_6.x86_64 --nodeps

6.再安装MySQL-client和MySQL-server
rpm -ivh MySQL-client-5.5.48-1.linux2.6.x86_64.rpm
rpm -ivh MySQL-server-5.5.48-1.linux2.6.x86_64.rpm

7.启动MySQL服务,然后初始化MySQL
service mysql start
/usr/bin/mysql_secure_installation

8.测试MySQL
mysql -u root -p


yum

安装httpd并确认安装
yum instll -y httpd

列出所有可用的package和package组
yum list

清除所有缓冲数据
yum clean all

列出一个包所有依赖的包
yum deplist httpd

删除httpd
yum remove httpd


配置本地yum源

1.准备一台Linux服务器,用最简单的版本CentOS-6.7-x86_64-minimal.iso
2.配置好这台服务器的IP地址
3.上传CentOS-6.7-x86_64-bin-DVD1.iso到服务器
4.将CentOS-6.7-x86_64-bin-DVD1.iso镜像挂载到某个目录
方式一
mkdir /var/iso
mount -o loop CentOS-6.7-x86_64-bin-DVD1.iso /var/iso
方式二
虚拟机挂载
mount /mnt/cdrom
vi CentOS-Local.repo
baseurl=file:///mnt/cdrom

5.修改本机上的YUM源配置文件,将源指向自己
备份原有的YUM源的配置文件
cd /etc/yum.repos.d/
rename .repo .repo.bak *
vi CentOS-Local.repo
[base]
name=CentOS-Local
baseurl=file:///var/iso
gpgcheck=1
enabled=1   #很重要,1才启用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
添加上面内容保存退出

6.清除YUM缓冲
yum clean all

7.列出可用的YUM源
yum repolist

8.安装相应的软件
yum install -y httpd

9.开启httpd使用浏览器访问http://192.168.0.100:80(如果访问不通,检查防火墙是否开启了80端口或关闭防火墙)
service httpd start

10.将YUM源配置到httpd(Apache Server)中,其他的服务器即可通过网络访问这个内网中的YUM源了
cp -r /var/iso/ /var/www/html/CentOS-6.7

11.取消先前挂载的镜像
umount /var/iso

12.在浏览器中访问http://192.168.0.100/CentOS-6.7/

13.让其他需要安装RPM包的服务器指向这个YUM源,准备一台新的服务器,备份或删除原有的YUM源配置文件
cd /etc/yum.repos.d/
rename .repo .repo.bak *
vi CentOS-Local.repo
[base]
name=CentOS-Local
baseurl=http://192.168.0.100/CentOS-6.7
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
添加上面内容保存退出

14.在这台新的服务器上执行YUM的命令
yum clean all
yum repolist

15.安装相应的软件
yum install -y gcc

16、加入依赖包到私有yum的repository
进入到repo目录
执行命令:  createrepo  .
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux