Linux基础命令-系统进程文件磁盘分区用户权限工具包

Linux基础

系统

系统信息

arch # (或uname -m) 显示机器的处理器架构
uname -r # 显示正在使用的内核版本
lsb_release -a # 发型版本
date # 显示系统日期
cal 2007 # 显示2007年的日历表
stty cols 200 # 设置tty列宽

关机

shutdown -h now # (或init 0、telinit 0) 关闭系统
shutdown -h hours:minutes & # 按预定时间关闭系统
shutdown -c # 取消按预定时间关闭系统
shutdown -r now(或reboot now) # 重启
logout # 注销

硬件

cat /proc/cpuinfo # CPU
lspci | grep -i vga # 显卡 yum -y install pciutils
dmidecode|grep -A16 "Memory Device"|grep 'Speed' # 内存

进程

top 实时进程
ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'

ps-ef

ps -ef 显示进程(标准的格式)

UID     //用户ID、但输出的是用户名 
PID     //进程的ID 
PPID    //父进程ID 
C       //进程占用CPU的百分比 
STIME   //进程启动到现在的时间 
TTY     //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 
CMD     //命令的名称和参数

ps-aux

ps aux 显示进程(BSD的格式)

USER      //用户名 
%CPU      //进程占用的CPU百分比 
%MEM      //占用内存的百分比 
VSZ      //该进程使用的虚拟內存量(KB) 
RSS      //该进程占用的固定內存量(KB)(驻留中页的数量) 
STAT      //进程的状态 
START    //该进程被触发启动时间 
TIME      //该进程实际使用CPU运行的时间

文件和目录

目录

cd /home # 进入 '/ home' 目录'
cd .. # 返回上一级目录
cd # 进入个人的主目录
cd - # 返回上次所在的目录
pwd # 显示工作路径

ls # 查看目录中的文件
ls -F # 查看目录中的文件
ls -l # 显示文件和目录的详细资料
ls -a # 显示隐藏文件
ls -l | grep "^-" | wc -l # 统计当前目录下的文件个数
ls -lt # 时间排序

mv config /dir # 移动文件夹
rm /dir # 删除文件夹
mkdir [-p] dir # 创建目录
cp [-R] file1 file2 # 复制一个文件 (-R目录)

tr|cut

echo "h,e,l,l,o" | tr -s "," | cut -d "," -f1 # 切割显示
ps -ef | grep xxx.jar | tr -s " " | cut -d " " -f2

软连接

ln -s 源文件 目标文件 # 建立软连接(都需要绝对路径)
rm -rf 目标文件 # 删除软连接(后面不能有/)

文件属性

lsattr a.txt # 文件属性
chattr -i a.txt # 去除属性

tar

tar -zxf file.tar.gz # 解压
tar -xjf file.tar.bz2 # 解压bz2
tar -czf file.tar file/ # 压缩
tar --remove-files -czf file.tar -C tmp . # 压缩当前目录并排除tmp目录,后删除源文件

zip

zip -q -r data.zip /home/data # 将 /home/data/ 这个目录下所有文件和文件夹打包为当前目录下的 data.zip
zip -q -r data.zip * # 已在 /home/data 目录下

unzip [-q] data.zip # 解压
unzip -v data.zip # 查看压缩文件目录信息

日志|搜索

nohup ... > app.log 2>&1 & # 输出到指定文件
tail -f file # 持续输出文件内容
tail -50 file # 显示最后50行
watch -n 10 'tail -15 /usr/local/tomcat/logs/catalina.out' # 每10秒执行
find / -name 1.txt # 搜索文件
find ./ -name "*.php" | xargs grep '关键字'
find ./ -type f | wc -l # 查询目录文件数量
grep 'w' test.txt # 文本搜索

环境变量

env # 查看环境变量
/etc/profile 、~/.bashrc # 环境变量
export TIME_STYLE='+%Y-%m-%d %H:%M:%S'

磁盘空间

df -h # 显示已经挂载的分区列表
du -sh dir1 估算目录 'dir1' # 已经使用的磁盘空间'
du -h --max-depth=1 # 递归显示目录文件大小
du -sh * # 查看当前目录大小

分区

fdisk

fdisk -l # 显示磁盘分区信息
fdisk /dev/sdc # 目标磁盘(卸载状态)
m # 帮助
p # 显示分区
q # 退出
n # 新增分区
    > 1 # 编号
    > p # 主分区
    > start # 开始位置
    > end  +10G # 结束位置
w # 保存分区修改

# 格式化略

parted

parted -l # 查看磁盘分区信息
parted /dev/sdb # 分区目标
    > p # 查看分区信息
    > mklabel gpt # 新建标签类型为GPT
    > mkpart primary 0 -1 # 将/dev/sdb整个空间分给同一个分区
    > q # 退出
mkfs -t ext4 /dev/sdb # 格式化分区ext4
e2label /dev/sdb /xxxdata # 设定分区label(非必要)
mkdir /data # 创建挂载目录
mount /dev/sdb /data # 临时挂载
vi /etc/fstab
    > /dev/sdb /home/data   ext4    defaults        0 0 # 永久挂载

调整分区

umount /data
e2fsck -f /dev/sdb
resize2fs -p /dev/sdb 2G
mount /data
df -h
lvextend -L +10G /dev/mapper/centos-root
resize2fs -p /dev/mapper/centos-root

用户和群组

用户

useradd user1 # 创建一个新用户
userdel -r user1 # 删除一个用户
passwd user1 # 修改用户密码 (只允许root执行)
usermod -s /bin/bash user1 # 修改用户登入后所使用的shell

groupadd group1 # 创建一个用户组
useradd -g group1 -s /sbin/nologin user1 # 添加用户并添加到主组(组存在)
useradd -G group2 user2 # 添加用户并到附加用户组

新增FTP用户和组:5 SSH

授权

gpasswd -a user1 wheel  # 给予sudo权限, 当权限不够时,可以用sudo
lid -g wheel # 查询所有带sudo权限的用户
sudo usermod -aG docker ${USER} # 用户加入docker用户组
su ${USER} # 再切换到原来的应用用户以上配置才生效

cat /etc/passwd # 查看所有用户
cat /etc/group # 查看所有组
id username # 查看用户和组信息

关于usermod、chown、chmod的用法,见:https://blog.csdn.net/ouyang_peng/article/details/8731714

### 权限

drwxrwxrwx

  • d | l | - 目录 | 链接 | 普通文件
  • rwx 所有者
  • rwx 群组用户
  • rwx 其他用户
su root # 切换为管理员
chmod 777 /etc/selinux/config # 添加权限
chmod ugo+rwx directory1 # 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限
chmod -R 755 directory
chmod -R +x directory

chown # 改变文件的所有者
chown user1 file # 改变file的所有者user1
chgrp group1 file # 改变file的所有组group1
chown -R group1:user1 logs/ # 改变logs的所有组 -R表示递归设置子目录和子文件

ls -lh # 显示权限
权限数字计算
00 + 0 + 0
r–44 + 0 + 0
-w-20 + 2 + 0
–x10 + 0 + 1
rw-64 + 2 + 0
-wx30 + 2 + 1
r-x54 + 0 + 1
rwx74 + 2 + 1

计划任务

crontab -l # 查看你的任务
crontab -e # 编辑你的任务
crontab -r # 删除用户的crontab的内容
# 表达式
*/1 * * * * # 每分钟
# 主目录
cd /var/spool/cron

CentOS

CentOS下载

http://mirrors.aliyun.com/centos/7.4.1708/isos/x86_64/
U盘安装:使用软碟通写入DVD版镜像;
进入启动页,按Tab键,更改路径:H:/dev/sdb4 ,再按Enter进入安装

时间同步

yum -y install ntp ntpdate
ntpdate cn.pool.ntp.org
同步时区:tzselect 5 9 1

时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo "Asia/Shanghai" > /etc/timezone

禁用SELINUX

vi /etc/selinux/config
SELINUX=* -> disabled

修改登陆提示

vi /etc/motd

工具

curl

  • get
    curl http://127.0.0.1:8080/login?admin&passwd=12345678

  • post
    curl -d "user=admin&passwd=12345678" http://127.0.0.1:8080/login

  • header
    curl -H "Content-Type:application/json" -X POST -d '{"user": "admin", "passwd":"12345678"}' http://127.0.0.1:8000/login

wget

wget http://ip/file.zip
wget -O file.zip http://ip/file # 重新命名
wget -P /path http://ip/file.zip # 下载到指定目录

其他工具包

  • psmisc [pstree]
  • telnet
  • iputils-ping
  • curl
    • GET curl http://127.0.0.1/api?a=1 [-v]
    • POST curl http://127.0.0.1/api -X POST -d "title=123"
  • net-tools
  • openssh-clients
  • vim
    • yum install -y vim-common vim-enhanced vim-minimal
    • vi ~/.bashrc -> alias vi=‘vim’ -> source ~/.bashrc
    • vi /etc/vimrc -> set nu [列序号]
    • vi /etc/vimrc -> syntax on [语法高亮]
  • htop
    • yum -y install epel-release
    • yum -y install htop
  • mc
    • yum -y install mc
    • mc --nocolor
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值