ubuntu命令总结

几款不同系统的概述:
Yum 运行是在 Fedora 和 RedHat 以及 SUSE、CentOS中的Shell前端软件包管理器(Scientific Linux 也可以)。其它 Linux 发行版绝大部分都不能用,某些可以用但是会导致包管理很乱。
centos是linux系统的一个发行版。也就是linux系统中的一个。它是基于linux红帽版本制作的。红帽版因为是商业版,所以很多东西是要钱的。但是centos完全免费,主要用作服务器的搭建。
Scientific Linux是重新编译的Red Hat Enterprise Linux,由费米国家加速器实验室、欧洲核研究组织以及世界各地的大学和实验室共同开发。
SUSE(发音 /ˈsuːsə/)是指SUSE Linux ,是德国 SuSE Linux AG公司发行维护的Linux发行版,是属于此公司的注册商标。第一个版本出现在1994年年初。2004年这家公司被Novell公司收购。
Fedora是一个Linux发行版,是一款由全球社区爱好者构建的面向日常应用的快速、稳定、强大的操作系统。它允许任何人自由地使用、修改和重发布,无论现在还是将来。它由一个强大的社群开发,这个社群的成员以自己的不懈努力,提供并维护自由、开放源码的软件和开放的标准。Fedora 项目由 Fedora 基金会管理和控制,得到了 Red Hat 的支持。

tee   ##输出到控制台,同时保存到文件中,如  echo "XXX" | tee log.log
ls -1  ##(数字1)每行只展示一列,即文件夹或文件名(显示的内容最简洁,隐藏文件不会显示)
ls -F  ##会在列出的目录后面追加一个符号/ (不会换行。ls 的-F选项的具体用法,可以用man ls 查看手册页面,里面有详细说明。)
可以使用ls -1F搭配使用,效果更好。
lsb_release -a   ## 查看Ubuntu 版本
uname -r  ##查看内核版本
java -version  ##查java看版本
git --version  ##查看git版本
chown  #更改文件所属组别和拥有者
chown -R zhoulingjuan:zhoulingjuan dirName
chown zhoulingjuan:zhoulingjuan fileName
make clean   ##清除掉上一次编译留下的中间文件及结果
date (date "+%Y%m%d%H") ##时间命令
mkdir -p  ##参数P代表parents,递归创建目录
ps aux  ##查看系统当前进程
kill -9 [PID] (数字-9 表示强制停止) ##停止进程
reboot   ##立即重启
shutdown -r now   ##立即重启
shutdown -h now  ##立即关机 
shutdown -r +30 'The System Will Reboot in 30 Mins'   ##30分钟后重启并并发送通知给其它在线用户    
shutdown -h 10:53  ##到10:53关机,如果该时间小于当前时间,则到隔天 
shutdown -h +10  ##10分钟后自动关机

free  [-h]:查看内存使用情况的很好的命令
Mem:表示物理内存统计
total:表示物理内存总量(total = used + free)
used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
free:未被分配的内存。
shared:共享内存,一般系统不会用到,这里也不讨论。
buffers:系统分配但未被使用的buffers 数量。
cached:系统分配但未被使用的cache 数量。

df -h  ##查看目录的挂载分区命令,第一列是磁盘分区,最后一列是挂载目录(即挂载点)
du -sh *  ##计算当前所有文件和目录的大小
du -h --max-depth=1  ##查看各文件夹大小命令。参数:-h或-human-readable ,以K,M,G为单位,提高信息的可读性。--max-depth=n 表示深入到第n层目录,此命令太慢,没有什么卵用
tree  ##该命令需要安装,以树行结构显示文件目录结构

ssh 远程登陆:1、不指定用户:ssh IP
2、指定用户:ssh zhoulingjuan@IP
3、修改过ssh登录端口的可以:ssh -p 29418 zhoulingjuan@IP

Ubuntu软件安装与删除相关命令:
安装软件: apt-get install softname1 softname2 softname3……
卸载软件: apt-get remove softname1 softname2 softname3……
卸载并清除配置: apt-get remove --purge softname1
更新软件信息数据库: apt-get update
进行系统升级: apt-get upgrade

搜索软件包: apt-cache search softname1 softname2 softname3……

Deb软件包相关安装与卸载:
安装deb软件包: dpkg -i xxx.deb
删除软件包: dpkg -r xxx.deb
连同配置文件一起删除: dpkg -r --purge xxx.deb
查看软件包信息: dpkg -info xxx.deb
查看文件拷贝详情: dpkg -L xxx.deb
查看系统中已安装软件包信息: dpkg -l
重新配置软件包: dpkg-reconfigure xxx

deb、rpm、tar.gz三种Linux软件包的区别:
rpm包-在红帽LINUX、SUSE、Fedora可以直接进行安装,但在Ubuntu中却无法识别;
deb包-是Ubuntu的专利,在Ubuntu中双击deb包就可以进入自动安装进程;
tar.gz包-在所有的Linux版本中都能使用,但安装过程也最麻烦。
要先解压缩,然后在“终端”里用cd命令进入刚才解压的目录,再找到安装链接文件安装。

创建一个用户,系统自动配置的文件:
/etc/passwd中有用户记录;
/etc/shadow中有用户记录,这个其实是/etc/passwd的加密文件;
/etc/group中有相关组的记录;
/home中建立对应的用户家目录。

无法删除账号解决:
ps -u username | awk '{print $1}' | grep -vi PID | xargs kill -9 && userdel username
$1表示取第一列,即PID;-v:显示不包含匹配文本的所有行,这里PID只是起到字符串的作用。
xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该命令。

设置定时重启任务:
编辑系统的/etc/crontab文件,在crontab文件里面的run-parts部分加入一行:
0  6    * * *   root    /sbin/reboot             ##( 0 6表示每天凌晨六点重启.. 20 3表示凌晨3点20..)
ubuntu下启动、停止与重启cron:
sudo /etc/init.d/cron stop
sudo /etc/init.d/cron start
sudo /etc/init.d/cron restart
查看cron是否在运行:
pgrep cron

查看linux的重启记录:
(last命令可以用于显示用户登录情况。第一列为用户名,如果用户名为reboot,则说明是重启。)

last | grep reboot
与之类似可以查看Linux的关机记录:
last | grep shutdown

查看重启命令路径whereis shutdown (whereis很有用的命令

如何确定一台服务器有多少个cpu、每个cpu有几个核心、每个核心有几个线程。
1.查看物理cpu个数 (-u参数去重)
grep 'physical id' /proc/cpuinfo | sort -u 
2.查看核心数量
grep 'core id' /proc/cpuinfo | sort -u | wc -l
3.查看线程数
grep 'processor' /proc/cpuinfo | sort -u | wc -l

su、sudo、sudo su、sudo -i的用法和区别。
sudo : 暂时切换到超级用户模式以执行超级用户权限,输入密码为当前用户的密码。有时间限制,Ubuntu默认15分钟(要求账户要加到sudo 群组里面)。
su : 切换到某用户模式,输入密码为切换账户的密码。如果后面不加账户,系统默认为root账户。没有时间限制。
sudo 和 su两个命令的最大区别是:sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码。sudo为所有想使用root权限的普通用户设计的。可以让普通用户具有临时使用root权限的权利。只需输入自己账户的密码即可。当然这个普通用户必须在/etc/sudoers文件中有配置项、才具有使用sudo的权利 
sudo -i: 同sudo,但是没有时间限制。想退回普通账户执行“exit”或“logout” 。
(sudo -i 运行结果 PWD=/root;sudo su 运行结果 PWD=/home/用户名(当前用户主目录))
首先,su和su -这两个命令都能获得root权限,但root的密码是不能随便交给别人的,这时就需要sudo命令了,使用用户自己的密码,临时赋予一般用户root权限。
sudo的运行过程是这样的:
检查用户是否在/etc/sudoers的列表中,
如果在,以root权限执行命令,
取消用户的root。
su和sudo没有切换工作目录和环境变量,只是赋予用户权限,而su -是真正切换到root登录,工作目录切换到/root,环境变量也同时改变。
 

 

发布了28 篇原创文章 · 获赞 6 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章