常用运维命令收集

7

常用的运维命令收集

服务器

  • 查看服务器磁盘中占用>500M的文件
find / -type f -size +500M -exec ls -lh {} \; 2>/dev/null | awk '{ print $9 ": " $5 }'
  • 查找服务器文件,并且忽略权限不足导致的输出
find / -name [文件地址/可以使用通配符] 2>/dev/null

K8s

  • 删除所有因Evicted原因失败的pod:删除内容【Evicted】可以更换

    kubectl get pods --all-namespaces --field-selector=status.phase=Failed -o jsonpath='{.items[?(@.status.reason=="Evicted")].metadata.name}' | xargs -I {} kubectl delete pod {} --grace-period=0 --force --namespace {}
    
  • docker进入容器内并指定账号角色为root

    docker exec -it --user root xxxxxx sh
    
  • 查看docker images中所有的arm架构的镜像

docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}" | \
while read repo_tag image_id; do
  if docker image inspect "$image_id" --format '{{.Architecture}}' | grep -q 'arm'; then
    echo "$repo_tag ($image_id)"
  fi
done
  • 查看docker images中所有的arm架构镜像并且删除
docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}" | \
while read repo_tag image_id; do
  if docker image inspect "$image_id" --format '{{.Architecture}}' | grep -q 'arm'; then
    echo "Deleting $repo_tag ($image_id)"
    docker rmi -f "$image_id"
  fi
done