本文主要介绍Linux下一些常用的命令和一些常见错误的解决方法。
1 常用命令
-
终端
- 打开终端:
Ctrl+Alt+T
- 清除终端屏幕:
clear
- 打开终端:
-
进入root用户
- 更改root密码:
sudo passwd root
- 输入用户密码:
sudo su
- 输入root密码:
su
- 更改root密码:
-
文件/目录管理
- 新建目录:
mkdir <目录>
- 删除目录:
rmdir <目录>
- 新建文件:
touch <文件名>
- 删除文件:
rm <文件名>
- 目录和子目录一起删除:
rm -r <目录>
- 复制:
cp <源文件> <目标文件>
- 目录和子目录一起复制:
cp -r <源文件> <目标文件>
- 移动:
mv <源文件> <目标目录>
- 重命名:
mv <源文件> <目标文件>
- 建立软连接:
ln -s <源文件或目录> <目标文件或目录>
- 删除软连接:
rm <软连接目录>
- 新建目录:
-
查看文件
- 打开目录:
cd <目录>
- 显示当前工作路径:
pwd
- 查看文件:
ls
- 显示隐藏文件:
ls -a
- 显示文件类型::
ls -F
,/表示目录.*表示可执行.@表示连结文件 - 显示详细资料:
ls -l
,文件属性.文件个数.拥有者.所属组.文件大小.创建日期.文件名 - 查找目录中文件中的字符串:
grep -r -e <字符串> <目录>
- 打开目录:
-
文件权限管理:r代表读、w代表写、x代表执行、-代表没有相应权限。可以用数字来代表权限:r=4,表示可读;w=2,表示可写;x=1表示可执行,- 删除权限,用数字0表示,所有777为[4+2+1][4+2+1][4+2+1],代表所有用户都有读写执行的权限。
- 目录赋予最高权限:
sudo chmod -R 777 <目录>
- 文件添加读/写/执行权限:
chomd + r/w/x <文件名>
- 取消文件读/写/执行权限:
chomd - r/w/x <文件名>
- 目录赋予最高权限:
chmod | u (用户) | + (添加) | r (读) | <文件> |
---|---|---|---|---|
. | g (组) | - (删除) | w (写) | <目录> |
. | o (其它用户) | = (设置) | x (执行) | |
. | a (所有) | . | . |
- 磁盘管理
-
检查磁盘空间占用情况:
df
-
显示磁盘空间使用情况:
du
-
挂载硬盘
- 打开Disk管理工具进行相应的操作
- 在一个用户下创建的磁盘在其它用户下没有使用的权限,创建软连接会失败,如在txjg06用户下创建的file、package、software等磁盘在dengzw用户下访问需要输入txjg06用户的密码,创建软连接也会失败。
查看就会发现dengzw用户并没有读写的权限,执行chown -R dengzw file
依次更改磁盘的所有权权限,更改完成后dengzw用户就能够正常访问磁盘和创建软连接了,但相应的txjg06就会失去对这三个磁盘的访问权限。
为了让所有用户都能访问这三个磁盘,在可以执行sudo chmod -R 777 file
为所有用户添加最高权限。
-
修改硬盘挂载点:
-
打开Disk管理工具,查看挂载点
-
进入root用户:
su
-
取消挂载:
umount /run/media/txjg06/package
-
在/media下新建文件夹package
-
挂载硬盘:
mount /dev/sda /media/package
,注意不要直接挂载到/home下,会把原来/home下的内容覆盖。这种情况也不用担心,冷启设备即可。 -
修改开机自动挂载文件:在/etc/fstab中添加下述语句
/dev/sda /media/package ext4 defaults 0 0
-
-
- 查找文件
- 搜寻硬盘查找文件:
find <位置> -name <文件名>
- 查找二进制文件/源代码文件/man手册页:
whereis -b/s/m <目录> <文件名>
- 查看可执行文件的位置:
which <文件名>
- 配合数据库查看文件位置:
locate <文件名>
,更新数据库updatedb
- 搜寻硬盘查找文件:
- 压缩/解压缩
- 压缩:
zip <压缩后的文件名,扩展名为.zip> <待压缩文件>
- 添加到压缩文件:
zip -g <压缩后的文件名,扩展名为.zip> <待添加文件>
- 从压缩文件删除:
zip -d <压缩后的文件名,扩展名为.zip> <待删除文件>
- 解压:
unzip <压缩后的文件名,扩展名为.zip>
- 解压指定文件:
unzip <压缩后的文件名,扩展名为.zip> <待解压文件>
- 压缩:
- 打包/解包
- 打包:
tar -cf <打包后的文件名,扩展名为.tar> <待打包文件>
,-cf表示产生新文件 - 添加文件到打包文件:
tar -rf <打包后的文件名,扩展名为.tar> <待添加文件>
- 更新文件到打包文件
tar -uf <打包后的文件名,扩展名为.tar> <待更新文件>
- 查看打包文件内容:
tar -tf <打包后的文件名,扩展名为.tar>
- 解包:
tar -xf <打包后的文件名,扩展名为.tar>
- 打包:
- 压缩+打包/解包+解压缩
- 压缩+打包:
tar -czvf <压缩打包后的文件名,扩展名为.tar.gz> <待压缩打包文件>
,-v表示显示所有过程 - 解包+解压缩:
tar -xzvf <压缩打包后的文件名,扩展名为.tar.gz>
,tar xvJf <压缩打包后的文件名,扩展名为.tar.xz>
,注意J要大写,tar -xjvf <压缩打包后的文件名,扩展名为.tar.bz2>
- 压缩+打包:
- 软件安装(Ubuntu)
- 安装软件:
sudo dpkg -i <软件名.deb>
;sudo apt-get install <软件名>
- 查询安装的软件:
dpkg -l | grep <软件名>
- 卸载安装的软件:
dpkg -r <软件名>
;apt remove <软件名>
- 安装软件:
- 软件安装(CentOS)
- 安装软件:
yum install -y <软件名>.rpm
;rpm -ivh <软件名>.rpm --force
- 查询安装的软件:
rpm -qa | grep -i <软件名>
- 卸载安装的软件:
yum remove <软件名>
;rpm -Uvh <软件名>.rpm --force
- 安装软件:
- 显示管理
- 查看当前连接的显示器:
xrandr
- 设置主屏:
xrandr --output HDMI-1 --primary
- 将HDMI-1设置为与DP-1显示相同内容:
xrandr –output HDMI-1 –same-as DP-1 --auto
- DP-1为主显示屏,HDMI-1显示为DP-1的扩展屏且在其右边:
xrandr --output HDMI-1 --right-of DP-1 --auto
- 拓展屏在左边/上边/下边:
xrandr --output HDMI-1 --left/above/below-of DP-1 --auto
- 查看当前连接的显示器:
- 创建新用户
- 添加新用户:
sudo adduser <用户名>
,设置新用户密码,其它信息按Enter
使用默认值就行 - 修改新用户的权限
sudo chmod u+w /etc/sudoers
sudo gedit /etc/sudoers
,添加<用户名>ALL=(ALL:ALL) ALL
语句sudo chmod u-w /etc/sudoers
- 退出登录,使用新用户登录即可,使用向日葵远程新用户时界面黑屏,重启ubuntu系统恢复
- 删除用户:
sudo userdel -r <用户名>
,如果提示删除用户出现“user xxx is currently used by process xxx”,则是因为这个用户正在使用 , 需要退出这个用户ctrl +d
(退出当前用户),切换到其他用户上去,再执行命令
- 添加新用户:
- 修改用户密码
- 进入root用户:
su
- 修改用户密码:
passwd <用户名>
- 进入指定用户:
su <用户名>
- 进入root用户:
- 关机重启
- 关机
- 立刻关机:
halt
- 立刻关机:
poweroff
- 立刻关机(root用户使用):
shutdown -h now
- 10分钟后自动关机:
shutdown -h 10
- 如果是通过shutdown命令设置关机的话,可以用
shutdown -c
命令取消关机
- 立刻关机:
- 重启
- 立刻重启:
reboot
- 立刻重启(root用户使用):
shutdown -r now
- 过10分钟自动重启(root用户使用):
shutdown -r 10
- 在时间为20:35时候重启(root用户使用):
shutdown -r 20:35
- 如果是通过shutdown命令设置重启的话,可以用
shutdown -c
命令取消重启
- 立刻重启:
- 关机
2 常见错误
- apt-get install
- 错误提示:Unable to locate package xxx。
- 错误原因:刚安装,软件源还来不及更新,无法找到包。
- 解决办法:
- 首先尝试update命令:
sudo apt-get update
- 如果不行则执行upgrade命令:
sudo apt-get upgrade
- 最后上面两项都不行则尝试命令:
sudo apt-get install aptitude
,成功以后使用命令:sudo aptitude install xxxxx
- 首先尝试update命令:
- apt-get install
- 错误提示:Could not get lock /var/lib/dpkg/lock-frontend - open。
- 错误原因:有其它地方在使用
apt-get install
命令。 - 解决方法:等待其它软件安装完成,重启系统也可解决问题。
- dpkg
- 错误提示:Could not get lock /var/lib/dpkg/lock-frontend(lock)
- 解决方法:
sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/dpkg/lock
- dpkg
- 错误提示:dpkg: error processing package xxx (–configure)
- 解决方法:
cd /var/lib/dpkg
sudo mv info info.bak
sudo mkdir info
- shell
- 错误提示:error while loading shared libraries: libthrift-0.11.0. so
- 错误原因:因为系统中没有安装相应的库,或者第三方的库并不处于标准库的路径之下(例如说是 /usr/local/lib),所以没有找到。
- 解决方法:
- 如果是系统中确定没有安装该库,安装即可。
- 在进行编译的时候,指名库所在的路径。使用locate命令找到libthrift-0.11.0. so所在路径,然后在终端或shell脚本中添加命令
export LD_LIBRARY_PATH=<路径>
- 如果共享库文件安装到了/usr/local/lib或其它"非/lib或/usr/lib"目录下:
- echo “/usr/local/lib” >> /etc/ld.so.conf(把新共享库目录,比如/usr/local/lib,加入到共享库配置文件/etc/ld.so.conf)
- ldconfig