ubutnu命令行软件

来源:互联网 发布:动漫 惊艳 音乐 知乎 编辑:程序博客网 时间:2024/04/30 09:03

很多人可能都喜欢用chmod 755、644、777等赋予权限,其实还是用chmod ugo+rwx这样的形式比较直观。

u--拥有者
g--同组用户
o--其它用户
r--可读
w--可写
x--可执行
s--可执行(跟x差不多,我还不清楚两者的区别)

 

曾经为了在控制台下显示中文而装了 fbterm,弄了 framebuffer,但结果很奇怪——root 用户和另一个临时建的用户 temp 都能正常使用,但唯独我自己总用的那个帐户运行 fbterm 时显示 can’t open framebuffer device,害我每次需要显示中文时都得先以 temp 登录,然后用 su 切换用户。

今天尝试在控制台下放视频,mplayer 却没有显示视频。仔细看输出信息,发现对 /dev/fb0 没有权限。 ls -l 一下,发现这个文件属于 video 组。随即把自己加到了 video 组,然后就正常了!

一直想不通,为什么当初折腾 fbterm 时, root 和 temp 都在 video 组里,唯独自己例外?

 

 

sudo gpasswd -a ff videosudo gpasswd -a 用户名 video

删除组的成员还是使用这个命令,不过使用的开关是 -d 而不是 -a:
gpasswd -d userid mygroup
也可以通过直接编辑 /etc/group 文件来对组进行修改。

 

 

sudo apt-get install hwinfo

安装完成后
sudo hwinfo --framebuffer
结果就可以看到:
Mode 0x0300: 640x400 (+640), 8 bits
Mode 0x0301: 640x480 (+640), 8 bits
Mode 0x0303: 800x600 (+800), 8 bits
Mode 0x0305: 1024x768 (+1024), 8 bits
Mode 0x0307: 1280x1024 (+1280), 8 bits
Mode 0x030e: 320x200 (+640), 16 bits
Mode 0x030f: 320x200 (+1280), 24 bits
Mode 0x0311: 640x480 (+1280), 16 bits
Mode 0x0312: 640x480 (+2560), 24 bits
Mode 0x0314: 800x600 (+1600), 16 bits
Mode 0x0315: 800x600 (+3200), 24 bits
Mode 0x0317: 1024x768 (+2048), 16 bits
Mode 0x0318: 1024x768 (+4096), 24 bits
Mode 0x031a: 1280x1024 (+2560), 16 bits
Mode 0x031b: 1280x1024 (+5120), 24 bits

切换屏幕时很慢,不仅仅是Ctrl-Alt-Fn间的切换很慢fbterm、zhcon的进入、退出也很慢。而且,切到任何一个控制台后显示 uvesafb: mode switch failed (eax=0x4f02, err=1),/var/log里  kern.log记录如下

代码:
Jun  9 23:03:52 lilydjwg-desktop kernel: [   63.501794] uvesafb: mode switch failed (eax=0x135, err=0)
Jun  9 23:03:52 lilydjwg-desktop kernel: [   63.501799] detected fb_set_par error, error code: -22
(重复数次)
问题基本解决,更改了参数:
代码:
kernel      /boot/vmlinuz-2.6.32-22-generic root=UUID=951dd0ca-32f5-43f6-9e54-ed422274fc74 ro nomodeset video=uvesafb:scroll=ypan vga=791


使用以上的方法会导致关机的plymouth花屏,针对这个问题,我们应该不采取以上的解决方法,而使用以下的办法:


此文同样适用于VMWare中的ubuntu10.041.可以解决的问题:(1)安装驱动后开机和关机画面花屏,分辨率低;(2)开机画面直接出现,一闪而过,错过点点进度过程。(这个我原来幼稚地认为是10.04的开机速度太快,进度条来不及显示呢。呵呵)2.解决 方案:uvesafb 替代 vesafb(具体什么意思我也不知道)3.所需包:(1)v86d(uvesafb需要)(2)hwinfo(查看framebuffer)4.步骤(1)安装驱动:方法一,Nvidia官网下载最新驱动,但是得先屏蔽掉nouveau,而且安装后会出现Nvidia巨大的Logo,我没有用 这种方法。方法二,System-->Administration-->Hardware Drivers,我选的是那个Recommended。(2)安装所需包:sudo apt-get install v86d hwinfo(3)查看framebuffersudo hwinfo --framebuffer我的显示器分辨率是1280x800的所以我需要的是:1280x800-24(4)修改grub文件sudo gedit /etc/default/grub修改GRUB_CMDLINE_LINUX_DEFAULT=""引号中的内容为quiet splash nomodeset video=uvesafb:mode_option=1280x800-24,mtrr=3,scroll=ywrap(分辨率自行设置)修改#GRUB_GFXMODE=****x****为GRUB_GFXMODE=****x****(****x****为你的分辨率,中间的x是英文的"x")(5)修改initramfs:sudo gedit /etc/initramfs-tools/modules添加以下文字:uvesafb mode_option=1280x800-24 mtrr=3 scroll=ywrap(6)强制使用Framebuffer:echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash(7)更新grub和initramfs:sudo update-grub2sudo update-initramfs -u(8)重启(重启时的退出ubuntu画面还是低分辨率的,不要急,待重启后进入ubuntu时的分辨率已经是你设定的了)


而且开机的文字也和以前(9.10)的不同。

 

 

在登录时,启动界面的分辨率太低同样很不爽。解决办法如下:

1.安装v86dhwinfo包:

sudoapt-getinstallv86dhwinfo

2.查看自己显卡支持的分辨率:

sudohwinfo--framebuffer


02:None 00.0: 11001 VESA Framebuffer                          
  [Created at bios.464]
  Unique ID:rdCR.QOJHFkjgnM2
  Hardware Class: framebuffer
 Model: "(C) 1988-2005, ATI Technologies Inc.  M92"
 Vendor: "(C) 1988-2005, ATI Technologies Inc. "
 Device: "M92"
  SubVendor: "ATI ATOMBIOS"
 SubDevice:
  Revision: "01.00"
  MemorySize: 16 MB
  Memory Range: 0x80000000-0x80ffffff (rw)
 Mode 0x0300: 640x400 (+640), 8 bits
  Mode 0x0301: 640x480(+640), 8 bits
 ......................................................
  Mode0x03ef: 1366x768 (+2752), 16 bits
  Mode 0x03f0: 1366x768(+5504), 24 bits
  Config Status: cfg=new, avail=yes,need=no, active=unknown


我选用最高分辨率:1366x768(+5504), 24 bits


3.修改/etc/default/grub文件,使用uvesafbframebuffer来启动:

sudogedit/etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT=”quietsplash”更改为:

GRUB_CMDLINE_LINUX_DEFAULT="quietsplash nomodesetvideo=uvesafb:mode_option=1366x768-24,mtrr=3,scroll=ywrap"

4.修改/etc/initramfs-tools/modules文件:

sudogedit/etc/initramfs-tools/modules

添加语句:

uvesafbmode_option=1366x768-24 mtrr=3 scroll=ywrap

5.运行下面的命令,启用framebuffer:

echoFRAMEBUFFER=y| sudotee/etc/initramfs-tools/conf.d/splash


6.运行下面的命令,更新grub配置文件:

sudoupdate-grub

sudoupdate-initramfs-u

7.重启。

 

Q1:[input] can't change kernel keymap table, all shortcuts will NOT work, see SECURITY NOTES section of man page for solution.

A1:chmod u+s /usr/bin/fbterm

 

 

16 進位表示:

pixel640x480800x6001024x7681280x1024text80x30100x37128x48160x642560x3010x3030x3050x30732k0x3100x3130x3160x31964k0x3110x3140x3170x31A16M0x3120x3150x3180x31B

10 進位表示:

 

pixel640x480800x6001024x7681280x1024text80x30100x37128x48160x6425676977177377532k78478779079364k78578879179416M786789792

795

原创粉丝点击