0%

linux-常用命令

一些用过的linux命令

文件

  1. 查看目录内子目录所使用的空间
$ du -h  --max-depth=1
  1. 改变文件(夹)拥有者
$ chown (-R) zxy filename
  1. 改变文件权限
$ chmod 755 filename
  1. 压缩与解压
# tar 压缩,-p 保留权限,-z 使用 gzip
$ tar cvpfz /mnt/data/homeback.tgz /home

# tar 解压
$ tar xvpfz /mnt/data/homeback.tgz -C /
  1. 查看磁盘使用情况
$ df -h
  1. 创建软连接
$ ln -s ./hadoop-2.7.7 ./hadoop

系统

  1. 端口使用
# 显示 tcp,udp 的端口和进程等相关情况
$ netstat -tunlp
  1. 批量删除进程
$ kill -9 `ps -ef |grep xxx|awk '{print $2}'`

vim

命令 功能
gg 跳转到文件头
Shift+g 跳转到文件末尾
/字符串 从开头查找,n下一个,N上一个
?字符串 从底部查找

服务器

  1. 添加用户
$ adduser username
$ passwd username
# 赋予root权限
$ vim /etc/sudoers
  1. 免密登陆
# 方式1
$ ssh-copy-id -i ~/.ssh/id_rsa.pub zxy@10.0.0.1

# 方式2
$ ssh zxy@10.0.0.1 "cat >> ~/.ssh/authorized_keys" < ~/.ssh/id_rsa.pub
  1. 传输文件
# 源文件 -> 目的地
scp -r zxy@10.0.0.1:/home/zxy/filename /Users/zxy/Desktop/
  1. 配置网卡ip地址
# (1) 修改对应网卡配置文件(centos)
$ sudo vim /etc/sysconfig/network-scripts/ifcfg-em1

# (2) 重启生效
$ sudo service network restart

# (3) 查看效果
$ ifconfig
  1. 使用 nfs 服务器
# 解释:
# /mnt/storage2/data 用于共享的目录
# * 客户端:所有主机
# rw 可读可写
# sync 数据同步,效率低,但可以保证数据的一致性
# no_root_squash 让root保持权限,也就是让客户端的root相当于服务端的root
# all_squash,anonuid=1001,anongid=1001 客户端写数据时,普通用户名强转成指定名字(1001)
# no_all_squash 默认 客户端写数据时,保持用户名

# (1) 修改 exports
$ sudo vim /etc/exports

# /mnt/storage2/data 该目录统一用户 1001(cluster集群使用)
/mnt/storage2/data *(rw,sync,no_root_squash,all_squash,anonuid=1001,anongid=1001)
# /mnt/storage2/users 该目录用于共享,保持个人用户名
/mnt/storage2/users *(rw,sync,no_root_squash)

# (2) 服务端 挂载(更新)
$ exportfs -arv

# (3) 客户端 挂载
$ mount -t nfs storage-2:/mnt/storage2/data /home/cluster/Storage2
$ mount -t nfs storage-2:/mnt/storage2/users /mnt/users

# (4) 客户端 卸载
$ umount /mnt/users

# (5) 服务端 卸载
$ exportfs -auv