title: How to manage huge amount of files in shell?

text: > $ ls ./dir_with_huge_amount_of_files/errors/ Suppose a directory is full of pictures with unix timestamps, I mean a lot measured in many GBs or even more. Shell-commands like `ls` will get overflow- style warnings because they are not designed to work with millions (or more) of pictures. How can I manage such huge amount of files? If, for example, I want to find the picture in the middle (according to the timestamp in the name and creation time), is there some file-system that offers a built-in search feature? Which commands would you use? I tried the comfortable `ls` and `find` with necessary flags but they were either very slow or generated warnings so I am thinking that either I need better file-system or db or something like that to pre-index the pictures. I basically need one array to which inodes of the photos should be placed in chronological order. How to do that? Later, metadata with unix-timestamps could be added. **[Update]** There is a serious flaw in current answers, people just post sort-of-answers without empirical tests. If they had tested their suggestions, they would probably fail. Hence, I created you a command-line tool by which you can create the sandbox to create the huge amount of files and test your suggestions like with 1e7 amount of files. It can take a long time to generate the files so be patient. If someone knows quicker way to do this, please edit the code. Type `python code.py --help` to get the help. Have fun! **Usage Example to create a lot of dirred files**               $ ls ./data2     ls: ./data2: No such file or directory     $ python testFill.py -n 3 -d 7                                                      $ tree data2/                                                                       data2/     |-- 0     |   |-- 1302407302636973     |   |-- 1302407302638022     |   `-- 1302407302638829     |-- 1     |   |-- 1302407302639604     |   |-- 1302407302641652     |   `-- 1302407302642399     |-- 2     |   |-- 1302407302643158     |   |-- 1302407302645223     |   `-- 1302407302646026     |-- 3     |   |-- 1302407302646837     |   |-- 1302407302649110     |   `-- 1302407302649944     |-- 4     |   |-- 1302407302650771     |   |-- 1302407302652921     |   `-- 1302407302653685     |-- 5     |   |-- 1302407302654423     |   |-- 1302407302656352     |   `-- 1302407302656992     `-- 6         |-- 1302407302657652         |-- 1302407302659543         `-- 1302407302660156          7 directories, 21 files      **Code testFill.py**               # Author: hhh     # License: ISC license          import os, math, time, optparse, sys          def createHugeAmountOfFiles(fileAmount, dirAmount):        counter = 0        DENSITY = 1e7        dir = "./data/"             do = dir+str(counter)+"/"        while (os.path.exists(do)):           counter = counter+1           do = dir+str(counter)+"/"             os.mkdir(do)             for d in range(int(dirAmount)):           for f in range(int(fileAmount)):              timeIt = int(time.time()*1e6)              if (not os.path.exists(do)):                 os.mkdir(do)                   if (timeIt % DENSITY == 0):                 counter = counter+1                 do = dir+str(counter)+"/"                      if (not os.path.exists(do)):                    os.mkdir(do)                        do = dir+str(counter)+"/"              if(not os.path.exists(do)):                 os.mkdir(do)                   f = open(do+str(timeIt), 'w')              f.write("Automatically created file to test Huge amount of files.")              f.close()           counter = counter +1               def ls(dir):        for root, dirs, files in os.walk("./data/"+dir):           print(files)          def rm(dir):        for root, dirs, files in os.walk("./data/"+dir):           for f in files:              os.remove("./data/"+dir+"/"+f)               def parseCli():        parser = optparse.OptionParser()        parser.add_option("-f", "--file", dest="filename",                          help="Location to remove files only in ./Data.", metavar="FILE")        parser.add_option("-n", "--number", dest="number",                          help="Number of files to generate", metavar="NUMBER")        parser.add_option("-r", "--remove", dest="remove",                          help="Data -dir content to remove", metavar="NUMBER")        parser.add_option("-d", "--dir", dest="dir",                          help="Amount of dirs to generate", metavar="NUMBER")        parser.add_option("-q", "--quiet",                          action="store_false", dest="verbose", default=True,                          help="don't print status messages to stdout")             return parser.parse_args()          def main():        (options, args) = parseCli()             if (options.filename):           ls(options.filename)        if (options.number and options.dir):           createHugeAmountOfFiles(options.number, options.dir)        if (options.remove):           rm(options.remove)               main()


title: Small Distributed Computing Cluster

text: I'm a high school student trying to build a linux cluster for a project (I have a bunch of decent computers slated for re-image this summer, so the tech department basically says as long as I don't physically break them I can do whatever. Anyway, I don't really know anything about building a cluster, but I'm pretty good with Linux. I need to know these things: -What distro should I use? Does it even matter? -What software can configure the cluster? -On board or distributed FS? -Any sites that can offer decent guides or how-tos?


title: 5.1 speakers on soundblaster x-fi 'extreme audio'

text: The rear and center channels on my 5.1 speakers don't work. I've checked the connections a few time, and turned up volume sliders in alsamixer “System information” in alsamixer correctly identifies the card as               X-Fi Extreme Audio [SB0790] at 0xdc00 irq 21      When I try               sudo alsactl init      I receive error:               alsactl: parse:1655: Unable to open file '/usr/share/alsa/init/ca0106': No such file or directory      What is this file, could this be the problem, how do i fix it? I'm running Debian squeeze amd64.


title: usbip: problem getting device attributes: No such file or directory

text: I try to use an ftdi rs232/usb adapter over ethernet. It's connected to my raspberry pi.               pi@raspberrypi ~ $ usbip list -l     Local USB devices     =================     - busid 1-1 (0424:9512)         1-1:1.0 -> hub          - busid 1-1.1 (0424:ec00)         1-1.1:1.0 -> smsc95xx          - busid 1-1.2 (0403:6001)         1-1.2:1.0 -> unknown          - busid 1-1.3 (7392:7811)         1-1.3:1.0 -> rtl8192cu          pi@raspberrypi ~ $ sudo usbip -d bind -b 1-1.2:1.0     usbip: debug: /build/linux-tools-TqR1ks/linux-tools-3.2.17/drivers/staging/usbip/userspace/src/usbip.c:134:[run_command] running command: `bind'     usbip: debug: /build/linux-tools-TqR1ks/linux-tools-3.2.17/drivers/staging/usbip/userspace/src/usbip_bind.c:143:[unbind_other] problem getting device attributes: No such file or directory     usbip: error: could not unbind driver from device on busid 1-1.2:1.0     pi@raspberrypi ~ $       The state above is after `rmmod ftdi_sio`, same problem before.


title: how to downgrade in command line for ubuntu?

text: I am using OS 12.04 version, but using `upgrade` command results in the desktop being changed for the new version 13.04. How do I downgrade to the old version using the command-line? From this:               root@metal004:~# lsb_release -a       No LSB modules are available.       Distributor ID:   Ubuntu       Description:  Ubuntu 13.04       Release:  13.04       Codename: raring      To:               root@metal004:~# lsb_release -a       No LSB modules are available.       Distributor ID:   Ubuntu       Description:  Ubuntu 12.04.3 LTS       Release:  12.04       Codename: precise


title: On petalinux, lsmod does not work

text: I have seen that when I do `lsmod` in petalinux , I get "not tainted" message. Is there any alternative for `lsmod` then ?


title: My server has been compromised; how do I delete these files that the attacker left behind?

text: My vps was hacked and hacker created alot of symbol link in directory. I try with FileZilla to delete this directory but not work I try with SSH and use rm but not work too. Please help how to remove all symbol link and this directory. Regards ![enter image description here](http://i.stack.imgur.com/JQbro.png)


title: Recreated VG. Is it possible to add existing LVs to it?

text: I had a CentOS 5.5 server with two drives in it (sda, sdb) using LVM. sda had a combination of physical partitions and LVs. sdb had one volume group named **data** with multiple logical volumes. There were no logical volumes or volume groups that spanned the two disks. Last week I decided to reinstall the OS including formatting /, /root, /boot and rebuilding the LVs on sda. sdb was not touched during the reinstallation as it contains all of the data I want to keep. After the installation the physical volume on sdb was not listed as active by LVM. Running (as best I can tell from looking at my history) `pvscan` activated the physical volume. Unfortunately, none of the existing volume groups on sdb were being listed. I then ran `vgcreate data /dev/sdb` which I thought would either give errors reporting an existing volume group existed with this name or would somehow activate the data volume group. Unfortunately for me, neither of these things happened. At this point I haven't touched anything on /dev/sdb since I would like to recover the existing logical volumes that are defined on that drive. Is there anyway to reactivate those volumes?


title: NIS: How to allow access to both local and remote users' home directories?

text: We have a NIS server with shared users' home directories in '/home'. We're used to mounting the server's '/home' using '/home' as the mount point on each NIS client. However, if we do this with a machine that has existing local users, their home directories will not be accessible because '/home' is now a mount point to the server. How can we make both local and remote users' home directories accessible on the client?


title: Bash Scripting : Printing column data in the same row

text: I have written a bash script to calculate the size of a `PostgreSQL` database and print the output along with the date when the script was executed in a text file. The script code is as follows:               #!/bin/bash     date +"%d:%m" >> dbdata.growth     psql -h 192.168.2.173 -U postgres -c "select pg_database_size('ddb'); "  | sed -n         '3,3p' | numfmt --to=iec >>dbdata.growth     psql -h 192.168.2.173 -U postgres -c "select pg_database_size('dpkidb'); "  | sed       -n '3,3p' | numfmt --to=iec >>dbdata.growth      The script produces the following output in the format as shown below               26:03              134G              4.4M     26:03              134G              4.4M      The issue for me is that I want all the three columns in the same row. How can I achieve that?


title: LINUX: How to calculate recursively the size of each sub directory up to root directory?

text: ![enter image description here](http://i.stack.imgur.com/WBYVd.jpg)I have written this script Scrit in Linux. I now need to know the size for each sub directory with the condition `-atime +${DAYS}` searching down from directory `$DIR`. The result should be gathered in a text file `$FILENAME`.               #!/bin/bash     #Days ago to search     DAYS="1"     #Path to directory to be searched     DIR="/media/nss/MBVOL2/TEST1/"     #Result filename Solomon     FILENAME="/media/nss/MBVOL2/TEST1/solomon2.txt"     # Process of listing these files in a result text file      find "${DIR}" -type f -atime +${DAYS} -print > $FILENAME


title: How do I know which kernel version will have a bug fix I need?

text: > **Possible Duplicate:**   >  Given a git patch id, how to find out which kernel release contains it? I encountered a bug in one of the newer kernel versions. There is no workaround; if I want to have sound at my system at all, I have to boot an older kernel version. Since this is a home computer I use for video and music, I need the sound and haven't updated the kernel since 3.5.4-2, not wanting to overwrite the version which still works. There already is a fix which repairs the problem. But I don't know when it will be included in a kernel update. How do I find out which kernel version will contain the fix? I don't want to update until this version comes out.


title: Up/Downgrade iOS on Linux

text: Is there a way to Up/Downgrade the iOS of my iPod touch 2G under linux (especially debian)? I have already read about idevicerecovery but this project doesn't seem to be maintained anymore and therfore pretty messed up.


title: How can I dynamically switch the output destination of a script or command?

text: I ran a shell command the other day which produced more output than expected. It was writing to a file on a filesystem with very little available space and could have filled the filesystem. The command took a long time to run so rather than rerunning it with a different output location, I would like to have been able to switch the output destination while it was running. Is this possible? I know that renaming the file wouldn't work because the system uses the inode number rather than the name, what options do I have?


title: How to get current buffer's filename in emacs?

text: One of the main features I miss about Vim, is that it always saves the filename of the current file in the `%` buffer (more info). That allows launching commands easily like:               ;; compile current file     :! gcc %     ;; source current file (useful when I'm editing .vimrc     :source %     ;; get the size of current file     :! du -sh %     ;; etc, etc...      I would like to have similar functionality under `emacs` (version 24, if that makes any difference), namely have an easy way to insert the name of the file opened in the current buffer. **Examples of what I want to do** _Here I describe some basic use cases as to explain better when I feel the need for such a shortcut_   1. Compile: When I enter `M-x compile` emacs asks me for a compile command. I would like to enter `gcc (current-buffer)` easily.   2. Load-file: When I'm editing my .emacs file, I would like to load it right away to test the changes. The way I do it is `M-x load-file` and then I always spell out the name `.` `e` `m` `a` `c` `s`. I would like to have a shortcut.   3. Launch outside processes: I gave `du -sh` as an example, only to illustrate that I want the shortcut to be also available when I execute shell commands with `M-!` **What I found so far**   * This question here on U&L. The answers given are basically showing where to find the filename of a buffer so one can add it to the kill-ring. It's not exactly what I'm looking for, I don't want to have to manually kill the filename before I want to use it. (Also solutions described in both answers don't seem to work as smoothly in my emacs and require additional keystrokes making them a bit of a pain). _**EDIT** : A bit unrelated, by I found out why these solutions don't work. I have IDO enabled, for better or worse._   * The `(current-buffer)` function described in the manual does return the name of the file in the current buffer, but nowhere in the examples I gave above, am I evaluating elisp code. Is there a way to insert the result of the evaluation of this function in a (mini)buffer and binding this way to a shortcut? **Am I wrong to think this way?** I am currently learning to use emacs (it's been a few months actually) after years of using Vim. I want to avoid a predictable _using-emacs-in-a-Vim-way_ trap. If you feel that what I'm asking for is not very _emacs-y_ , and there should be a better (cleaner?) way to do it, please do mention it in your answers.


title: How can I talk with my acquaintance on Linux Cinnamon

text: One of my acquaintances uses Linux Mint with the Cinnamon Desktop. We would like to talk each other via Skype, but we realized that Skype is not supported on Linux Mint with Cinnamon Desktop. We have searched for a solution, but we found only Google+. Does anybody know a website where we can speak to each other free (without Google+)?


title: Display screen caption on the first line of the terminal

text: When I start a new terminal, the prompt is on the first line. After working for a while (or running a command which produces some output), the prompt is on the last line. There it'll stay during the rest of the session unless I press `Ctrl`-`l`, run `clear` or `reset` or something similar. To obtain some measure of continuity in the work, I use `screen` with a trick to display the session name in the caption (I use the last one with the two `screen` commands in `.screenrc`). To avoid cognitive overhead by cluttering the work area, **I'd like this caption to be displayed at the top of the terminal.**


title: How to do multiline search and replace text (delete) recursively

text: I want to go recursively through a directory and search for specific content in all files. The content should then be replaced if found. With a single line I would make something like this: `find . -type f -exec sed -i -e 's@code2replace@@g' {} \;` It sometimes worked and sometimes not (not sufficient hard drive space ...). Now I would need something for a multine replacement. The orignal file should be overwritten and the multiline pattern could be rather long. So perhaps storing in an external file would be easier I think. The code which should be replaced looks like the following:               #c3284d#     echo(gzinflate(base64_decode("sylOLsos....")));     #/c3284d#      Also which characters do I have to escape?


title: Gedit or an other non-commandline editor with the ability to spell-check two languages at the same time

text: I'm searching for an editor with the ability to spell-check two languages at the same time (German and English). Gedit can't do it out of the box. But I want to use Gedit. It should be possible by merging the English and German dictionaries and select the created file under Tools->Set Language... **edit** I got it almost (some warnings in step 6 and e.g. `zzgl.` (words with a dot at the end) are not spell-checked) :) Thanks to your post Kevin Atkinson :) (I may add that for English I used `aspell6-en-7.1-0.tar.bz2` (is already new version/updated) but for German I used `http://extensions.services.openoffice.org/project/dict-de_DE_frami` because it's more updated. Extract this .oxt using `unzip`. In `de_DE_frami` are the two needed affix and dictionary files called `de_DE_frami.aff` and `de_DE_frami.dic`. Rename the `de_DE_frami.aff` to `qed_affix.dat` and the `de_DE_frami.dic` to `de.txt`. Note: For German there is also an extension: `http://extensions.services.openoffice.org/de/project/DFEW` which I'm going to merge later too) In step 6 I had to use `$ cat de_en | aspell --encoding=utf-8 create master -l ./qed ./qed.rws` because all üäöß.. were skipped and were not in the created dictionary, but now they are there: `$ aspell -d ./qed.rws -a` (Testing: typing e.g. "Käse" or "zweiunddreißig" prints an *, so it finds these words now)               Filesizes: $ du -b qed*     18725   qed_affix.dat     103 qed.dat     12  qed.multi     6763456 qed.rws                    Lines: $ wc -l qed* de_en            6 qed.dat            1 qed.multi        54403 qed.rws          717 qed_affix.dat       334974 de_en Download of this package in case someone needs it. The most warnings I can see now at step 6 look like this - last 5 lines:               $ cat de_en | aspell --encoding=utf-8 create master -l ./qed ./qed.rws     ...(many warnings appear)     Warning: Removing invalid affix 'o' from word zytostatika.     Warning: Removing invalid affix 'z' from word zytostatika.     Warning: Removing invalid affix 'o' from word zytostatikum.     Warning: Removing invalid affix 'z' from word zytostatikum.     Warning: The word "zzgl." is invalid. The character '.' (U+2E) may not appear at the end of a word. Skipping word.     $ Now I removed `aspell-en` and `aspell-de` (`$sudo apt-get remove aspell-en aspell-de`) and put all the four files `qed.dat`, `qed.multi`, `qed.rws` and `qed_affix.dat` into `/usr/lib/aspell`. My `/var/lib/aspell` is empty BTW. The new package can be selected now: gedit->Tools->Set Language...->Unknown (qed). Regarding to the warnings in step 6 `zzlg.` words with a dot at the end are not spell-checked. I tried playing with `qed.dat` `special ' -*-` line by adding a `.` because the `de.dat` uses a `.` in there too, but it unfortunately didn't work. **edit** Solved the spell-checking of words with a dot at the end by grepping these only and adding them to the spell-checking white-list. `$ cat de_en | sed -n '/\\./{s/[./]\\+[^./]*$//;p}' >> /home/<username>/.config/enchant/qed.dic`


title: How I can emulate a big endian platform on a x86?

text: I need to get a big endian platform to develop with `gcc` and `g++`, what is a solution for that? I know that the SPARC is one of those big endian architectures, but I have no idea what OSs can run on it and how to emulate a SPARC machine under Linux; I also should note that I need any big endian that I can emulate on an X86 but with `g++` available on it.


title: Extracting / Installing a TAR file

text: When I extract a tar file using this command: `tar xvzf gcc-4.7.1.tar.gz` (This is the directory the `tar` file is in: `cd /u/test/GCC-4.7.1/`) The files were extracted but they are in `/dev/...` _(see below for actual file paths and names)_ - **How do I install GCC from this point now?** This is probably related to my other **question** , but I am now using SCO 6 (not SCO 5.0.7) and a new GCC compiler. The files I extracted are **_not_** in the same folder where the `tar` file is either. **Extracting files** Below are the exact steps I took to extract and search for the files I extracted:   1. `cd /u/test/GCC-4.7.1/`   2. `tar xvzf gcc-4.7.1.tar.gz`   3. `cd /u/test/GCC-4.7.1/`   4. `ls -la` The only file in there is the `tar` file. **Edit** The `tar` extracted successfully showing this:               key    Device           Block   Size(K)  Tape     0    /dev/rfdo48ds9      18     360      No     1    /dev/rfd148dx9      18     360      NO     2    /dev/rfd096ds15     10     1200     NO     3    /dev/rfd196ds15     10     1200     NO     4    /dev/rfd0135ds9     18     720      NO     5    /dev/rfd1135ds9     18     720      NO     6    /dev/rfd0135ds18    18     1440     NO     7    /dev/rfd1135ds18    18     1440     NO     8    /dev/rct0           20     0        YES     9    /dev/rctmini        20     0        YES     10   /dev/rdsk/fp03d     18     720      NO     11   /dev/rdsk/fp03h     18     1440     NO     12   /dev/rdsk/fp03v21   10     20330    NO


title: How can I allow a different user to connect to my session using X11vnc?

text: I'm trying to use x11vnc to allow users to remote control certain computers. This works fine in general, but there is one aspect I have trouble implementing. I want to restrict access to a specific user account, but the user that the X11 session belongs to is a different one. So the situation is:   * User A is logged in at the computer   * User B starts x11vnc and someone connects to it The problem is that I can only start x11vnc as root or as the currently logged in user, it doesn't work as any other user. Is there any way to allow a specific user to access my X11 session?


title: Is there any way to access a hostname containing an underscore?

text: I have this weird problem. I need to access a website that contains an underscore from Linux. The hostname is invalid and Linux does treat it as such. The problem is that access from Windows seems to work just fine and therefore the admin won't fix it. Is there any way to access such site? EDIT: The hostname is: `_nyx.isthereanydeal.com` `host` works `ping` and browsers don't work, I have tried both un-encoded and encoded versions of the hostname


title: How to deal with FreeBSD's move to pkgconf?

text: It seems that the FreeBSD ports tree is busy transitioning from pkg-config to pkgconf. http://www.mail-archive.com/freebsd-ports- announce@freebsd.org/msg00018.html I first thought as an end user this would not influence me and that a tool like portmaster would be taking care of any transition. However today, the regular `portmaster -a` gave the following problem:               sudo portmaster -a     ===>>> Gathering distinfo list for installed ports          ===>>> Starting check of installed ports for available updates              ===>>> The devel/pkg-config port moved to devel/pkgconf         ===>>> Reason: pkg-config has been replace by pkgconf          ===>>> Launching child to reinstall pkg-config-0.25_1          ===>>> All >> pkg-config-0.25_1 (1/1)              ===>>> The devel/pkg-config port moved to devel/pkgconf         ===>>> Reason: pkg-config has been replace by pkgconf               ===>>> Port directory: /usr/ports/devel/pkgconf          ===>>> Launching 'make checksum' for devel/pkgconf in background     ===> No options to configure     ===>>> Gathering dependency list for devel/pkgconf from ports     ===>>> No dependencies for devel/pkgconf          ===>>> Returning to update check of installed ports               ===>>> All >> (1)          ===>>> The following actions will be taken if you choose to proceed:         Install devel/pkgconf          ===>>> Proceed? y/n [y]               Finishing with:               Stop in /usr/ports/devel/pkgconf.          ===>>> Installation of pkgconf-0.8.4 (devel/pkgconf) failed     ===>>> Aborting update          ===>>> Update for devel/pkgconf failed     ===>>> Aborting update          Terminated          ===>>> You can restart from the point of failure with this command line:            portmaster <flags> devel/pkgconf       What should a 'normal' user of FreeBSD do? I can't remove pkg-config as a lot of ports depend on it. How can this be fixed?


title: Hp Deskjet 1000 printer stop printing after upgrade ubuntu to 12.04?

text: I upgrade my Ubuntu to 12.04 , my hp printer stop printing , i tried to upgrade hplip but didn't work. What should i do to let it work again. How can i fix this problem , hp site state that the printer is supported , any help ?


title: linux + linux-x86_64-4.8.02.0030-k9-AMD64_ONLY_by_t3x.tar.gz

text: I'm trying to download this file: vpnclient-linux-x86_64-4.8.02.0030-k9-AMD64_ONLY_by_t3x.tar.gz from many sites but with no success for example http://projects.tuxx-home.at/ciscovpn/clients/linux/4.8.02/ Please advice if someone has any idea how we can download this file without problems because I did try it on some sites and I couldn't download it.


title: grep, display only files starting with . (hidden)

text: I tried to display only hidden files but dont know how to do it. That is working(but matching also dots in other places)               ls -la | grep '\.'      Was trying adding ^ but didnt find soultion.


title: How to find where driver.mod.c links to?

text: I'm trying to port the webcam composite gadget from kernel 2.6.37 to 2.6.32. I don't have a choice on this since I depend on other drivers and a SDK which only compile for this version. My train of thought was to mimic the ethernet gadget functionality with some minor changes and get it working fast, at least loading properly, then spend time working on the video streaming capabilities. I ran into a brick wall pretty fast, because my new driver cannot be insmod, because -1 Device of resource busy. I tried to dig in deeper with printk and figure out what was going on. Main initialization seems to go as follow               module_init(webcam_init)     webcam_init()     usb_composite_register(&webcam_driver)     usb_gadget_register_driver(&composite_driver)      Those functions are defined as follow :               static struct usb_composite_driver webcam_driver = {         .name       = "g_webcam",         .dev        = &webcam_device_descriptor,         .strings    = webcam_device_strings,         .bind           = webcam_bind,         .unbind     = webcam_unbind,     };          static int __init     webcam_init(void)     {         return usb_composite_register(&webcam_driver);     }          int __init usb_composite_register(struct usb_composite_driver *driver)     {         if (!driver || !driver->dev || !driver->bind || composite)             return -EINVAL;              if (!driver->name)             driver->name = "composite";         composite_driver.function =  (char *) driver->name;         composite_driver.driver.name = driver->name;         composite = driver;              return usb_gadget_register_driver(&composite_driver);     }      usb_gadget_register_driver man page shows this > Call this in your gadget driver's module initialization function, to tell > the underlying usb controller driver about your driver. The driver's bind > function will be called to bind it to a gadget before this registration call > returns. It's expected that the bind functions will be in init sections. > This function must be called in a context that can sleep. I would expect usb_gadget_register_driver to be mapped to either composite_bind of webcam_bind, both of which are defined. Unfortunately printks in either function never show up in dmesg so I would assume I am missing something here. `usb_gadget_register_driver` does show up in g_webcam.mod.c which tells me that it is mapped somewhere, I just can't get where that place is!


title: How do I access a USB serial port without an entry in /dev?

text: I have a USB to serial adapter based on the SiLabs CP2101 chipset. I'm trying to use it with Debian 5.0 Lenny (armel architecture). I seem to be able to get the proper kernel module to recognize the adapter, but it won't create `/dev/ttyUSB0`. I ran `modprobe usbserial` and `modprobe cp2101` and then connected the device, resulting in the following output from `dmesg`:               usb 2-1: new full speed USB device using mv5182_ehci and address 8     usb 2-1: configuration #1 chosen from 1 choice     cp2101 2-1:1.0: cp2101 converter detected     usb 2-1: reset full speed USB device using mv5182_ehci and address 8     usb 2-1: cp2101 converter now attached to ttyUSB0      However, `/dev/ttyUSB0` does not exist. There are no new files in `/dev`. `find / -type f -name ttyUSB0` gives no results. I did find a bunch of _directories_ named `ttyUSB0` that showed up after plugging in the device:               /sys/class/tty/ttyUSB0     /sys/bus/usb-serial/drivers/cp2101/ttyUSB0     /sys/bus/usb-serial/devices/ttyUSB0     /sys/devices/platform/mv5182_ehci.1/usb2/2-1/2-1:1.0/ttyUSB0      ...      I found a file at `/sys/bus/usb-serial/devices/ttyUSB0/ttyUSB0/dev` but it does not appear to be a serial port; I can't open it with `screen` or Python's serial module. To compare, I tried my Debian 6.0 development machine (which has a newer version of the cp2101 module now called `cp210x`) and after seeing the "converter now attached to ttyUSB0" line in `dmesg`, `/dev/ttyUSB0` appears. How do I get the `cp2101` module to create `/dev/ttyUSB0`? If I can't, what file do I open to access the serial port?


title: How to specify matching patterns while excluding some files having a PATTERN in their filenames

text: **NOTE** : I have updated this question from what I posted earlier and hence some answers may not match with what I intend to ask. I want to search some TEXT in a set of files in sub-directories and simultaneously want to skip results from certain files having "svn" in their filenames. How can I accomplish that?


title: Create a VPN network between a live server and private networks

text: I have a VPS (Cent OS 6) on a live IP. I have several other machines (All linux, mostly Cent OS 6 and a few Android devices) sitting behind NATted ADSL Routers on several sites. I need to create a VPN between them, so that any device can ping or ssh into other devices participating in the VPN. Live Server can act as the host. Security is important. I fairly comfortable with Linux CLI, but I don't know where to start for this project. My questions is, What are the steps that I need to do to achieve the above setup?


title: How to do more than one substring replace at once in bash?

text: I have a directory contains image files that are to be echoed in bash. While echoing, I want to replace both file name and extension in single line command. Example files:               images/file_name_1.jpg     images/file_name_2.jpg      Normally, I can do single replacement like this:               for i in images/*; do echo ${i/file/image}; done      And the output becomes like:               images/image_name_1.jpg     images/image_name_2.jpg      How can I keep it in for loop and replace the "jpg" string to "png" also? It's just an instance, I could replace the dot to comma etc. When I try this:               for i in images/*; do echo ${{i/jpg/png}/file/image}; done      It doesn't work. I coulnd't find any other solution or idea. Is this possible -if so, how?


title: Stop cron sending mail for backup script?

text: I have set up a backup script to back up world data on my Minecraft server hourly using cron, but because the worlds being constantly edited by players, tar was telling me that files changed while they were read. I added --ignore- command-error to the tar in the script and that suppresses any errors when I run it manually, however cron still sends a mail message saying that files were changed while being read, and ends up flooding my mail because it's run once an hour. Anyone know how to fix this? This is the script:               filename=$(date +%Y-%m-%d)     cd /home/minecraft/Server/     for world in survival survival_nether survival_the_end creative superflat     do     if [ ! -d "/home/minecraft/backups/$world" ]; then     mkdir /home/minecraft/backups/$world     fi     find /home/minecraft/backups/$world -mtime +1 -delete     tar --ignore-command-error -c $world/ | nice -n 10 pigz -9 > /home/minecraft/backups/$world/$filename.tar.gz     done


title: Shell script to send an alert mail if disk usage exceeds 90%

text: I am new to shell scripting and want to implement a script on my server which will automatically send email alerts if the disk usage goes over 90% and second email alert when it goes over 95%. My filesystem is `abc:/xyz/abc` and the mount point is `/pqr`. I have tried this:               ADMIN="someone@def.com"      ALERT=90      df -H | grep -vE 'abc:/xyz/pqr | tmpfs |cdrom' | awk '{ print $5 " " $1 }' | while read output; do        usep=$(echo $output | awk '{ print $1}' | cut -d'%' -f1 )        partition=$(echo $output | awk '{ print $2 }' )          if [ $usep -ge $ALERT ]; then            mail -s "Alert: Almost out of disk space $usep" $ADMIN          fi        done      But I am getting an error which says               line 7: [: Use: integer expression expected


title: Displaying messages to tty using whiptail through monit

text: I would like to display a `whiptail` message on the login screen that is triggered by `monit`, but I am without luck. I understand it might be something to do with interactive/non-interactive shell. Here is the script that gets triggered by `monit`.               #!/bin/bash     /usr/bin/whiptail --infobox 'Hello World.' 7 25 >/dev/tty1      Is there a trick, or should I avoid using whiptail?


title: GNOME Panel Completely Blank

text: I had rebooted my laptop running Debian while it was in a perfectly fine running state. After the reboot, I log in again, and the top GNOME panel is completely blank. I only have one panel as I use Cairo Dock in the place of the bottom panel. When I look at dconf, the applets are still there, but the panel doesn't show it. Now, I can make a second panel, I can delete the top one and recreate it. If I do that, I can re-add my applets just fine, but the User Menu and the Custom Menu Labels applets cause it to freeze up to where the existing applets still show and work fine, but applets that are added afterwards do not show nor do they function. Even after a reboot, the applets that were already there just disappear and it's blank and still frozen. I believe it may have been a package I installed on the same day and have pasted a link to my `apt` and `dpkg` logs. I looked everywhere online and could not find someone with a similar issue. Any help at all will be much appreciated. Also, it's specific to this user. Other users work fine. If I delete the dconf 'user' file and reboot, there are no problems at all. But if I reboot again, then its back to the same issue. I'm utterly lost as to what to do. Dpkg Log: http://pastebin.com/BirG4CGe APT Log: http://pastebin.com/9RVfdEpZ System Info: Linux kali 3.7-trunk-amd64 #1 SMP Debian 3.7.2-0+kali5 x86_64 GNU/Linux


title: Reading from serial port in the simplest way?

text: I have a TrueRNG USB-based hardware RNG, and I am trying to read its output on Mac OS X 10.9.2. I need just one-way communication. The device says that it appears as a "CDC Virtual Serial Port", and indeed I see it as `/dev/tty.usbmodem1411`. I've never been able to `cat /dev/tty.usbmodem1411`; when I do, I get no output at all. I can, however, use `minicom` or `picocom` to read from it. With `picocom`, it works even with `\--noinit --noreset` options, suggesting that I _should_ be able to `cat` that device. So, my issues/questions:   1. Why can I not `cat` that device?   2. Though it works with `minicom` and `picocom`, it works just on the first session: if I close either of these programs, then reopen them, then they read about 300 bytes and block forever. If I close and reopen _again_ , they can't read anything. When I unplug and replug the USB device, though, it's again readable forever on the first attempt. Why would this be, and does it have to do with this quote from TrueRNG documentation? "By clearing the DTR flag on the virtual serial port, the stream of data will stop. The stream of data will resume when DTR is set."   3. I want to view the random data in hex. So I try this command: `picocom /dev/tty.usbmodem1411 | xxd -p`. The output, however, doesn't seem to respect the newline character; just the carriage return. It moves to the next line without rewinding to the beginning of the line. I'd prefer it to be continuous. Here's some diagnostics:               % stty -a -f /dev/tty.usbmodem1411     speed 9600 baud; 0 rows; 0 columns;     lflags: -icanon -isig -iexten -echo -echoe -echok -echoke -echonl             -echoctl -echoprt -altwerase -noflsh -tostop -flusho -pendin             -nokerninfo -extproc     iflags: -istrip -icrnl -inlcr -igncr -ixon -ixoff -ixany -imaxbel -iutf8             -ignbrk -brkint -inpck -ignpar -parmrk     oflags: -opost -onlcr -oxtabs -onocr -onlret     cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb crtscts -dsrflow             -dtrflow -mdmbuf     cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;             eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;             min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;             stop = ^S; susp = ^Z; time = 0; werase = ^W;


title: ssh prompts for password despite ssh-copy-id

text: I've been using public key authentication on a remote server for some time now for remote shell use as well as for sshfs mounts. After forcing a umount of my sshfs directory, I noticed that ssh began to prompt me for a password. I tried purging the remote .ssh/authorized_keys from any mention the local machine, and I cleaned the local machine from references to the remote machine. I then repeated my ssh-copy-id, it prompted me for a password, and returned normally. But lo and behold, when I ssh to the remote server I am still prompted for a password. I'm a little confused as to what the issue could be, any suggestions?


title: Reassign Ctl and Alt keys - xmodmap error

text: I am attempting to remap my keyboard in order to make emacs usable - my ergonomic keyboard puts its single Control key in an isolated 4-key island way off to the left. The OS is debian squeeze. Here are the lines I am attempting to feed to `xmodmap`, I place them into a file ~/.Xmodmap               clear Control     clear Mod1     ! The Alt keys are labled 'Option' on my keyboard,      ! using xev shows them to send Alt_L and Alt_R keysym's respectively      keysym Alt_L = Control_L     keysym Alt_R = Control_R     ! The Super_L and Super_R keys are the Windows keys     keysym Super_L = Alt_L     keysym Super_R = Alt_R     add Control = Control_L Control_R     add Mod1 = Alt_L Alt_R      My goal is to make my Option (a.k.a. Alt) keys behave like Control keys, and to get my Windows (a.k.a. Super) keys to behave like Alt. Here are the keycodes and keysms output by xev for the keys in question. Note, my keyboard (a Goldtouch ergonomic keyboard) has only one control key.                    keycode 37 (keysym 0xffe3, Control_L)     keycode 64 (keysym 0xffe9, Alt_L)     keycode 133 (keysym 0xffeb, Super_L)     keycode 134 (keysym 0xffec, Super_R)     keycode 108 (keysym 0xffea, Alt_R)           Here is what xev displays while running `xmodmap .Xmodmap`                         MappingNotify event, serial 34, synthetic NO, window 0x0,         request MappingKeyboard, first_keycode 204, count 1          MappingNotify event, serial 34, synthetic NO, window 0x0,         request MappingKeyboard, first_keycode 64, count 1          MappingNotify event, serial 34, synthetic NO, window 0x0,         request MappingKeyboard, first_keycode 108, count 1          MappingNotify event, serial 34, synthetic NO, window 0x0,         request MappingKeyboard, first_keycode 206, count 1          MappingNotify event, serial 34, synthetic NO, window 0x0,         request MappingKeyboard, first_keycode 133, count 1          MappingNotify event, serial 34, synthetic NO, window 0x0,         request MappingKeyboard, first_keycode 134, count 1      And here is the error returned by xmodmap:               X Error of failed request:  BadValue (integer parameter out of range for operation)     Major opcode of failed request:  118 (X_SetModifierMapping)     Value in failed request:  0x17     Serial number of failed request:  17     Current serial number in output stream:  17      Whats the deal?


title: IMAP mail notifier for window manager/task bar?

text: I am searching for a small new-email-notifier for IMAP mailboxes that displays it's status in the icon-bar (how do you call it?) of a window manager. Basically some biff/xbiff like tool ported to 21th century technology. ;) I am using awesomewm, which is able to display in its taskbar the 'applets' (?), which also work under gnome (I guess that it implements some freedesktop standard). Basic requirements:   * should not waste memory/CPU (e.g. a pythonGTK based solution probably would)   * support for IMAPS, and should check the host TLS certificate   * configurable poll intervalls   * should not distract too much   * nice interface Nice to have:   * optional configuration of a user defined action (executing an external command)


title: List of software preinstalled in Linux Mint?

text: Is there a complete list of software (not package) preinstalled in Linux Mint?


title: setting up repository in Lucid Puppy

text: I have heard that Lucid Puppy is ubuntu compatible version of Puppy linux. How can I set it to download software from local ubuntu repository? It doesnot seems to have apt-get. I am setting this on a old xp pc of my friend and local ubuntu repo is 5 to 10 times faster than the main repo.


title: How to run OpenVPN automatically?

text: How can I run OpenVPN automatically when I startup my Debian 7? Is there a specific script? What is necessary for this happen?


title: Smooth scrolling - where does it come from?

text: So, I've been dealing with Ubuntu and other Debian-based distros for a while and kinda like Crunchbang. But I've been also noticing that Ubuntu (as well as LMDE) comes with that fancy/nice/eyecandy feature called "smooth scrolling" (not just in Firefox/Chrome, I'm referring to the system-wide scrolling experience). I want to have it in Crunchbang as well. I've been searching the web for documentation about the feature for weeks, but I can't find anything! I could just understand (and I'm not even sure) that smooth scrolling has to do with GTK+ (and Synaptics driver perhaps?), and nothing else. To make it clear, I'm referring to the same difference between scrolling in WinXP (commonly 3 or 5 lines at time) with a mouse wheel and scrolling in OSX with their clickpads (where it is more like swiping on a touchscreen). If it is of any importance, I'm running Crunchbang in a Samsung Series 9, with an Elantech clickpad. Could you please help me find the way to learn more? Or do you know any guide to get it working in Crunchbang?


title: libvirtd (KVM) doesn't reload the kernel when I reboot the machine

text: I'm using `Direct kernel boot` with libvirtd and KVM as backend. ![enter image description here](http://i.stack.imgur.com/tOexa.jpg) But, every time I recompiled the kernel, and reboot inside the VM, the changes doesn't reflect until I do a `Force off` and `Power on` again. I'm wondering, if there's any way to change that behavior? I want the new kernel loaded every time I reboot inside the VM.


title: SCP Lost Connection

text: I can successfully connect to my server via `ssh` but when trying to run the `scp` command I get a connection time out.               $ scp ~/.ssh/id_rsa.pub root@192.168.12.2:id_rsa.pub     ssh: connect to host 192.168.12.2 port 22: Connection timed out     lost connection      Yes I do have openssh-client and openssh-server installed on both my machines the client and the server. My router is also configured to forward ssh port 22 and no I don't have a firewall enabled.


title: How to exit the script in ssh session?

text: My script contains a `ssh` command to login to remote server and execute a few commands, The command checks if a file exist and if not it should come out of the entire script.               ssh $user@$hostname "if[ -f $filename];then        echo"file exists Proceeding next steps;     else        "echo file doesn't exist";        exit 1;     fi"      However the above command gets executed successfully if the file present But in other case if file doesn't exist, the exit command just comes out of the ssh session It still continues with other commands in the script rather exiting script. Please help me with your suggestions.


title: Gcc configuration error

text: I am trying to build GNU toolchain for OpenRISC by following the guide given at http://openrisc.net/toolchain-build.html#_stage_1_gcc on Fedora Virtual Box Image. I am getting error saying               Configure: error: cannot run /bin/sh ../gcc-svn/config.sub      when I try to configure gcc using the command.               ../gcc-svn/configure --target=or32-linux --prefix=$PREFIX    \     --disable-libssp --srcdir=../gcc-svn --enable-languages=c      \     --without-headers --enable-threads=single --disable-libgomp    \     --disable-libmudflap      The full content of config.log is as below               This file contains any messages produced by compilers while     running configure, to aid debugging if configure makes a mistake.          It was created by configure, which was     generated by GNU Autoconf 2.64.  Invocation command line was            $ ../gcc-svn/configure --target=or32-linux --prefix= --disable-libssp --srcdir=../gcc-svn --enable-languages=c --without-headers --enable-threads=single --disable-libgomp --disable-libmudflap          ## --------- ##     ## Platform. ##     ## --------- ##          hostname = localhost.localdomain     uname -m = x86_64     uname -r = 3.11.7-300.fc20.x86_64     uname -s = Linux     uname -v = #1 SMP Mon Nov 4 15:07:39 UTC 2013          /usr/bin/uname -p = x86_64     /bin/uname -X     = unknown          /bin/arch              = x86_64     /usr/bin/arch -k       = unknown     /usr/convex/getsysinfo = unknown     /usr/bin/hostinfo      = unknown     /bin/machine           = unknown     /usr/bin/oslevel       = unknown     /bin/universe          = unknown          PATH: /home/adminuser/toolchain/bin     PATH: /bin     PATH: /usr/bin     PATH: /usr/local/bin     PATH: /usr/local/sbin     PATH: /usr/sbin     PATH: /home/adminuser/MINSOC/tools/bin     PATH: /home/adminuser/MINSOC/tools/bin     PATH: /home/adminuser/MINSOC/tools/or32-elf/bin/     PATH: /home/adminuser/.local/bin     PATH: /home/adminuser/bin     PATH: /home/adminuser/MINSOC/tools/bin     PATH: /home/adminuser/MINSOC/tools/bin     PATH: /home/adminuser/MINSOC/tools/or32-elf/bin/               ## ----------- ##     ## Core tests. ##     ## ----------- ##          configure:2427: error: cannot run /bin/sh ../gcc-svn/config.sub          ## ---------------- ##     ## Cache variables. ##     ## ---------------- ##          ac_cv_env_AR_FOR_TARGET_set=     ac_cv_env_AR_FOR_TARGET_value=     ac_cv_env_AR_set=     ac_cv_env_AR_value=     ac_cv_env_AS_FOR_TARGET_set=     ac_cv_env_AS_FOR_TARGET_value=     ac_cv_env_AS_set=     ac_cv_env_AS_value=     ac_cv_env_CCC_set=     ac_cv_env_CCC_value=     ac_cv_env_CC_FOR_TARGET_set=     ac_cv_env_CC_FOR_TARGET_value=     ac_cv_env_CC_set=     ac_cv_env_CC_value=     ac_cv_env_CFLAGS_set=     ac_cv_env_CFLAGS_value=     ac_cv_env_CPPFLAGS_set=     ac_cv_env_CPPFLAGS_value=     ac_cv_env_CPP_set=     ac_cv_env_CPP_value=     ac_cv_env_CXXFLAGS_set=     ac_cv_env_CXXFLAGS_value=     ac_cv_env_CXX_FOR_TARGET_set=     ac_cv_env_CXX_FOR_TARGET_value=     ac_cv_env_CXX_set=     ac_cv_env_CXX_value=     ac_cv_env_DLLTOOL_FOR_TARGET_set=     ac_cv_env_DLLTOOL_FOR_TARGET_value=     ac_cv_env_DLLTOOL_set=     ac_cv_env_DLLTOOL_value=     ac_cv_env_GCC_FOR_TARGET_set=     ac_cv_env_GCC_FOR_TARGET_value=     ac_cv_env_GCJ_FOR_TARGET_set=     ac_cv_env_GCJ_FOR_TARGET_value=     ac_cv_env_GFORTRAN_FOR_TARGET_set=     ac_cv_env_GFORTRAN_FOR_TARGET_value=     ac_cv_env_LDFLAGS_set=     ac_cv_env_LDFLAGS_value=     ac_cv_env_LD_FOR_TARGET_set=     ac_cv_env_LD_FOR_TARGET_value=     ac_cv_env_LD_set=     ac_cv_env_LD_value=     ac_cv_env_LIBS_set=     ac_cv_env_LIBS_value=     ac_cv_env_LIPO_FOR_TARGET_set=     ac_cv_env_LIPO_FOR_TARGET_value=     ac_cv_env_LIPO_set=     ac_cv_env_LIPO_value=     ac_cv_env_NM_FOR_TARGET_set=     ac_cv_env_NM_FOR_TARGET_value=     ac_cv_env_NM_set=     ac_cv_env_NM_value=     ac_cv_env_OBJCOPY_set=     ac_cv_env_OBJCOPY_value=     ac_cv_env_OBJDUMP_FOR_TARGET_set=     ac_cv_env_OBJDUMP_FOR_TARGET_value=     ac_cv_env_OBJDUMP_set=     ac_cv_env_OBJDUMP_value=     ac_cv_env_RANLIB_FOR_TARGET_set=     ac_cv_env_RANLIB_FOR_TARGET_value=     ac_cv_env_RANLIB_set=     ac_cv_env_RANLIB_value=     ac_cv_env_STRIP_FOR_TARGET_set=     ac_cv_env_STRIP_FOR_TARGET_value=     ac_cv_env_STRIP_set=     ac_cv_env_STRIP_value=     ac_cv_env_WINDMC_FOR_TARGET_set=     ac_cv_env_WINDMC_FOR_TARGET_value=     ac_cv_env_WINDMC_set=     ac_cv_env_WINDMC_value=     ac_cv_env_WINDRES_FOR_TARGET_set=     ac_cv_env_WINDRES_FOR_TARGET_value=     ac_cv_env_WINDRES_set=     ac_cv_env_WINDRES_value=     ac_cv_env_build_alias_set=     ac_cv_env_build_alias_value=     ac_cv_env_host_alias_set=     ac_cv_env_host_alias_value=     ac_cv_env_target_alias_set=set     ac_cv_env_target_alias_value=or32-linux          ## ----------------- ##     ## Output variables. ##     ## ----------------- ##          AR=''     AR_FOR_BUILD=''     AR_FOR_TARGET=''     AS=''     AS_FOR_BUILD=''     AS_FOR_TARGET=''     AWK=''     BISON=''     BUILD_CONFIG=''     CC=''     CC_FOR_BUILD=''     CC_FOR_TARGET=''     CFLAGS=''     CFLAGS_FOR_BUILD=''     CFLAGS_FOR_TARGET=''     COMPILER_AS_FOR_TARGET=''     COMPILER_LD_FOR_TARGET=''     COMPILER_NM_FOR_TARGET=''     CONFIGURE_GDB_TK=''     CPP=''     CPPFLAGS=''     CXX=''     CXXFLAGS=''     CXXFLAGS_FOR_BUILD=''     CXXFLAGS_FOR_TARGET=''     CXX_FOR_BUILD=''     CXX_FOR_TARGET=''     DEBUG_PREFIX_CFLAGS_FOR_TARGET=''     DEFS=''     DLLTOOL=''     DLLTOOL_FOR_BUILD=''     DLLTOOL_FOR_TARGET=''     ECHO_C=''     ECHO_N='-n'     ECHO_T=''     EGREP=''     EXEEXT=''     EXPECT=''     FLAGS_FOR_TARGET=''     FLEX=''     GCC_FOR_TARGET=''     GCC_SHLIB_SUBDIR=''     GCJ_FOR_BUILD=''     GCJ_FOR_TARGET=''     GDB_TK=''     GFORTRAN_FOR_BUILD=''     GFORTRAN_FOR_TARGET=''     GNATBIND=''     GNATMAKE=''     GREP=''     INSTALL_DATA=''     INSTALL_GDB_TK=''     INSTALL_PROGRAM=''     INSTALL_SCRIPT=''     LD=''     LDFLAGS=''     LDFLAGS_FOR_BUILD=''     LD_FOR_BUILD=''     LD_FOR_TARGET=''     LEX=''     LIBOBJS=''     LIBS=''     LIPO=''     LIPO_FOR_TARGET=''     LN=''     LN_S=''     LTLIBOBJS=''     M4=''     MAINT=''     MAINTAINER_MODE_FALSE=''     MAINTAINER_MODE_TRUE=''     MAKEINFO=''     NM=''     NM_FOR_BUILD=''     NM_FOR_TARGET=''     OBJCOPY=''     OBJDUMP=''     OBJDUMP_FOR_TARGET=''     OBJEXT=''     PACKAGE_BUGREPORT=''     PACKAGE_NAME=''     PACKAGE_STRING=''     PACKAGE_TARNAME=''     PACKAGE_URL=''     PACKAGE_VERSION=''     PATH_SEPARATOR=':'     RANLIB=''     RANLIB_FOR_BUILD=''     RANLIB_FOR_TARGET=''     RAW_CXX_FOR_TARGET=''     RPATH_ENVVAR=''     RUNTEST=''     SED=''     SHELL='/bin/sh'     STRIP=''     STRIP_FOR_TARGET=''     SYSROOT_CFLAGS_FOR_TARGET=''     TOPLEVEL_CONFIGURE_ARGUMENTS='../gcc-svn/configure --target=or32-linux --prefix= --disable-libssp --srcdir=../gcc-svn --enable-languages=c --without-headers --enable-threads=single --disable-libgomp --disable-libmudflap'     WINDMC=''     WINDMC_FOR_BUILD=''     WINDMC_FOR_TARGET=''     WINDRES=''     WINDRES_FOR_BUILD=''     WINDRES_FOR_TARGET=''     YACC=''     ac_ct_CC=''     ac_ct_CXX=''     bindir='${exec_prefix}/bin'     build=''     build_alias=''     build_configargs=''     build_configdirs=''     build_cpu=''     build_libsubdir=''     build_noncanonical=''     build_os=''     build_subdir=''     build_tooldir=''     build_vendor=''     clooginc=''     clooglibs=''     compare_exclusions=''     config_shell=''     configdirs=''     datadir='${datarootdir}'     datarootdir='${prefix}/share'     do_compare=''     docdir='${datarootdir}/doc/${PACKAGE}'     dvidir='${docdir}'     exec_prefix='NONE'     extra_host_libiberty_configure_flags=''     extra_mpc_gmp_configure_flags=''     extra_mpc_mpfr_configure_flags=''     extra_mpfr_configure_flags=''     gmpinc=''     gmplibs=''     host=''     host_alias=''     host_configargs=''     host_cpu=''     host_noncanonical=''     host_os=''     host_subdir=''     host_vendor=''     htmldir='${docdir}'     includedir='${prefix}/include'     infodir='${datarootdir}/info'     libdir='${exec_prefix}/lib'     libelfinc=''     libelflibs=''     libexecdir='${exec_prefix}/libexec'     localedir='${datarootdir}/locale'     localstatedir='${prefix}/var'     mandir='${datarootdir}/man'     oldincludedir='/usr/include'     pdfdir='${docdir}'     poststage1_ldflags=''     poststage1_libs=''     pplinc=''     ppllibs=''     prefix=''     program_transform_name='s,x,x,'     psdir='${docdir}'     sbindir='${exec_prefix}/sbin'     sharedstatedir='${prefix}/com'     stage1_cflags=''     stage1_checking=''     stage1_languages=''     stage1_ldflags=''     stage1_libs=''     stage2_werror_flag=''     sysconfdir='${prefix}/etc'     target='or32-linux'     target_alias='or32-linux'     target_configargs=''     target_configdirs=''     target_cpu=''     target_noncanonical=''     target_os=''     target_subdir=''     target_vendor=''     tooldir=''          ## ------------------- ##     ## File substitutions. ##     ## ------------------- ##          alphaieee_frag=''     host_makefile_frag=''     ospace_frag=''     serialization_dependencies=''     target_makefile_frag=''          ## ----------- ##     ## confdefs.h. ##     ## ----------- ##          /* confdefs.h */     #define PACKAGE_NAME ""     #define PACKAGE_TARNAME ""     #define PACKAGE_VERSION ""     #define PACKAGE_STRING ""     #define PACKAGE_BUGREPORT ""     #define PACKAGE_URL ""          configure: exit 2      I am new to Linux. I could not find any solution on online. Any help to solve the issue is highly appreciated.


title: Badblocks on 2TB external USB disk

text: I'm running badblocks on a 2TB external USB drive (WD Elements) for about 4 days now and it is still running. I initiated the command as follows: > /sbin/badblocks -wsv -o badblocks-ext-disk.txt /dev/sdc It's output untill now has been:               Checking for bad blocks in read-write mode     From block 0 to 1953481728     Testing with pattern 0xaa: done     Reading and comparing: done     Testing with pattern 0x55: done     Reading and comparing: 857148544 / 1953481728      I'm not really familiar with badblocks and can't imagine that it should take this long. I would imagine badblocks should already have put some contents in `badblocks-ext-disk.txt` but it's still 0 bytes. So now I guess that it will write it's output when it finishes the scan. Can I cancel badblocks and still get some useful results? Are there any other tips you can give me on analysing this disk on defects? And what is causing the long scan?


title: Prevent Links browser from share cookies when opened by multiple screen

text: By default, if open multiple `screen` browsing same website, it use same cookies. I don't want Links browser to write anything on disk while browsing, so that I can open multiple `screen` without same cookies. I've tried installing in chroot jail. It giving below error:               Unable to find or create links2 config directory. Please check, that you have $HOME variable set correctly and that you have write permission to your home directory.      Actually, above is what I need in the host machine. But where is `links2` config directory? I need to disable the write permission. I have tried searching but could not find it. Or is there better workaround? -----------added: I find out `Links` will create `~/.links2` directory when started. If deleted, it will keep creating this directory. If we set permission, it will override it. In my chroot jail, there is no `~` due to old version `uck`


title: Python file issue from root path

text: I have a script that is well-tested and known to be working. I am running into an issue with it where when I try to run it from `/root/backup/script.py` or `~/backup/script.py` I get a file not found error from the script when it runs and looks for other files called from within the script. It works on other machines but settings are the same and it works if I am in my home directory and run `python backup/script.py` or run it directly with `python script.py` it works. The files it is trying to get are inside the same directory as script.py so I can't see what's wrong. It works to get the first file the script calls but fails to get this one. I am thinking it could be some kind of path issue as it works on other systems if it is done the same way. **EDIT** after reading the first comment I have posted the code snippet that is falling over and realised that the first file is also not being found like I said it was sorry for the mistake here is the code. As I said above it works from other location but not the two I mentioned.               storage = Storage("user_creds.dat")     credentials = storage.get()     if credentials is None or credentials.invalid:             credentials = run_flow(flow_from_clientsecrets("client_secrets.json", OAUTH_SCOPE, ), storage, fla$


title: How to intall sumtool on redhat 6

text: This is the version of my redhat system ;               2.6.32-71.el6.x86_64      I need to install a tool called sumtool While I tried `yum install sumtool`, it says:               Setting up Install Process     No package sumtool available.     Error: Nothing to do


title: Bash command that uses wildcard in place of folder to copy folder contents of multiple files into one directory?

text: I have a directory `~/dir` that contains a bunch of random folders like: `~/dir/av 801` and `~/dir/lm 320`. I want to copy the contents of every inner folder (ie: av 801) into a different directory. The contents of that folder can consist of folders or files. This is what I guessed the bash command would be:               cp ~/dir/*/* ~/target/      But it gives this error: > cp: when copying multiple files, last argument must be a directory Is there a bash command that can do such a thing?


title: How to install persistent ubuntu 12.04 on USB drive?

text: I spent an entire day trying to figure out why my USB ubuntu installation was not being persistent. Yes, I did check the "persistence" option and assigned a file size for it during installation. I've tried installing it with Pendrive's Universal Installer and LiveUSBCreator's installer. Both have failed so far. My test to see if persistence was working was that I would boot into it (Select "I want to try ubuntu" on the boot menu for the usb) and create a file on the desktop using "touch Testfile". Then I would reboot to see if the file was still there. But it always disappears at reboot. I even tried installing some programs and they would be gone too. I've tried Ubuntu 12.04 and Ubuntu 11.10. If I selected persistence at install, can anyone tell me why this isn't working? Bad Ubuntu version? (I've tried two USB flash drives so no problem there.)


title: How can I use aliases in commands?

text: I have created `aliases` in my `.bashrc` for various frequently used long paths but I can not seem to be able to use them inside `vim` or with commands such as `find` or `grep`.   E.g the following:   `db`   in cli does `cd /some/very/long/path/db`   But in vim this:   `:e db/file.java`   or on the command line: `grep -r string db` do not work.   How is this fixed?


title: Is Watchdog can be disabled if once it is enabled?

text: I created a watchdog daemon application with time interval of 30 seconds; for every 5 seconds, I am trying to hit the watchdog counter, and it's working fine. If I kill this daemon process it shows the following:               mxc_wdt: Unexpected close, not stopping!      Then, my device gets reset after my time interval goes to zero (i.e.,hardware counter count down to zero). Is their any process to disable this watchdog functionality at user bash prompt and I even configured `CONFIG_WATCHDOG_NOWAYOUT=N` in kernel. I observed `disable not supported by this chip` in kernel `mxc_wdt_disable` function.


title: Best way to work through / display a tree of images sorted by size

text: I've got a deep directory tree containing .PNG files. I'd like to find all the .PNG files in the directory, sort them in order of size from smallest to largest, and then display every 50th image. (I'm analyzing data and trying to find the best size cutoff between "potentially useful" and "random noise" so I want an easy way to skim through these thousands of images....) Any scripting help is appreciated. I know how to use 'find' to search by size, but not how to sort the results or run a display program to display every 50th without having it pause the process waiting. I am using MacOS Snow Leopard, btw. Thanks!


I keep getting this error when booting linux on ARM cortex A9 based xilinx chip:               U-Boot 2013.07 (Mar 31 2014 - 16:34:50)          Memory: ECC disabled     DRAM:  1 GiB     MMC:   zynq_sdhci: 0     SF: Detected N25Q128A with page size 64 KiB, total 16 MiB     *** Warning - bad CRC, using default environment          In:    serial     Out:   serial     Err:   serial     Net:   Gem.e000b000     U-BOOT for Xilinx-ZC702-2013.3          Gem.e000b000 Waiting for PHY auto negotiation to complete......... TIMEOUT !     BOOTP broadcast 1     BOOTP broadcast 2     BOOTP broadcast 3     BOOTP broadcast 4     BOOTP broadcast 5          Retry count exceeded     Hit any key to stop autoboot:  0     SF: Detected N25Q128A with page size 64 KiB, total 16 MiB     SF: 11010048 bytes @ 0x520000 Read: OK     Wrong Image Format for bootm command     ERROR: can't get kernel image!     U-Boot-PetaLinux>      Even explicitly giving the command did not work:               U-Boot-PetaLinux> run sfboot     SF: Detected N25Q128A with page size 64 KiB, total 16 MiB     SF: 11010048 bytes @ 0x520000 Read: OK     Wrong Image Format for bootm command     ERROR: can't get kernel image!     U-Boot-PetaLinux>      And my env variable:               U-Boot-PetaLinux> printenv bootcmd     bootcmd=setenv var "if test ${dtbsize} -le 0; then run sfboot; else run dtbboot; fi"; run var; setenv var      I am using uImage,which I got after converting zImage using mkimage tool. Any idea what is wrong with the Image format?


title: How to assign variable in awk

text: I have a code like below:               $ awk -F'[]]|[[]' \       '$0 ~ /^\[/ && $2 >= "2014-04-07 23:00"    { p=1 }        $0 ~ /^\[/ && $2 >= "2014-04-08 02:00:01" { p=0 }                                                p { print $0 }' log      Here I want to assign "2014-04-07" in one variable "23:00" in another variable and so on. And get the input from their values ( using $var or something like that ). Can someone help me to modify the above code so I can use variable instead hardcording the timestamp. Below is the link for original question How to extract logs between two time stamps.


title: Application lags if started from init.d?

text: I have a program (pre-compiled binary) that, when started manually on linux, runs fine. It has a CLI that I use to enter commands. This program is a software router, I can connect to it's CLI to adjust it's settings. However if I want to start it up at boot time the program goes very slowly, unusably so. If there is information being printed to the screen for example, it will be printed out in chunks, as if there was a slow baudrate, that kind of thing. Every command I enter is like this, information is printed very slowly. What could be happening, what is different from me running this manually after boot rather than from init.d with S99 or something? If I stop the process and relaunch it manually it works fine. This python script is what is called from init.d:               import subprocess     application_pidfile = "/var/run/application.pid"     command_line=["start-stop-daemon", "-q", "-p", application_pidfile, "-S",                   "-m", "-b", "-x", "/bin/application"]     subprocess.call(command_line)      What I wonder is why would it still be going slow an hour after boot? Yet if I just stop it and start it manually it will run fine even a few seconds after boot? Even if I set a delay, such as start this process a few minutes after boot the same issue occurs. Could it be starting in some slow "socket" mode or something?


How can I disable bells/visualbells in vim? I've tried:               set noeb     set novb      .. but nothing has changed afaik. Just to be clear, I'm referring to the visual bell I get in vim when I do something that doesn't do anything, for exmaple pressing `ESC` in normal mode, or pressing `h` in on col 0.


title: Which tools for ASCII portfolio visualization?

text: I. I want to do a simple graph from timestamp `YEAR-month-day` to `valuation`, not wanting to use spreadsheets. Is there some ASCII tool for it to see it on CLI? There are over 500k lines of data, and I want to see only a sketch of it like in Ascii:               Value     |          *     |    *   *   *     |  *   *       *   *     |*               *     |----------------------> Timestamp      II. Then, I want to see allocation like in pizza slices:                       - - -          -\       -        -    \ World -       - Food \ Index -        -    /  \   -          - /oil \-             - - -      I know how-to-get grappy CSV data in Python but totally newbie in visualization:               import csv     csv_reader = csv.reader(open('data.csv', 'rb'), delimiter=';')     for row in csv_reader:         # do something with row....      Before I do my own ASCII visualization thing, I want to know whether such thing exists. How do you visualize your portfolio in ASCII?


title: Can a GTK applet widget be instantiated through dbus?

text: I just posted this: #274616: “Simple” gnome applets in Unity - stickynotes ... where I could instantiate a Gnome 2 `bonobo` applet in a standalone window, ![invest-applet-unity-standalone](http://i.stack.imgur.com/CZz2O.png) ... using `bonobo.ui.widget_new_control_from_objref` in a Python script - here is a snippet:               ...     bcontrol = bonobo.activation.activate_from_id('OAFIID:Invest_Applet', 0, False)     buiwid = bonobo.ui.widget_new_control_from_objref(bcontrol, win.get_ui_container().corba_objref())     win.set_contents(buiwid)     ...      I find this method extremely convenient, so I was wandering whether one could do something similar with `dbus` bindings; either from Python or from C? (I would personally gather not - as far as I've read around, it seems `bonobo` was specifically intended for instantiating one application in another; while `dbus` currently just exchanges messages; however, I'd like to have it confirmed).


title: Linux cryptography with hidden hardware-stored key

text: I am running Linux on iMX233, an ARM CPU with hardware-accelerated AES engine. The AES key can be programmed permanently into the chip ROM (OTP). This key is not directly accessible by software. Programs just invokes the engine and it performs encryption/decryption on the given data block using the internal key and returns back the result to the program. This feature is not implemented into iMX kernel as a standard Linux crypto device. Instead, a properietary IOCTL exists for accessing this feature. What do you suggest as the best practice for data encryption based on this feature?   * Is there a data encryption tool that can support such a feature out of the box?   * or should I develop custom kernel crypto device driver and use dm-crypt or loop-aes? Is it possible at all when no key can be supplied externally to the algorithm?   * or should I develop custom user space code?   * ...


title: XFCE4 Open PanelMenu via shortcut

text: I want open the XFCE4-Menu via a keyboard shortcut. I tried to map the command `xfce4-popup-menu`, but got the error:               Failed to execute child process xfce4-popup-menu      Then I tried `xfce4-popup-applicationsmenu`, which opens the application menu, but not the one from the panel, just on the desktop.


title: How can I create a zip file v2.0?

text: How can I create a zip file **v2.0**? It seems OpenDocument files are zip files v2.0:               $ file foo.odt     foo.odt: OpenDocument Text     $ hexdump -C -n 16 foo.odt     00000000  50 4b 03 04 14 00 00 08  00 00 03 0d 47 42 5e c6  |PK..........GB^.|     00000010      The fifth byte is `0x14`. But if I unzip `foo.odt` and zip it back into `bar.odt`, I get a v1.0 zip file:               $ unzip -d foo foo.odt     $ cd foo/     $ zip -0 -X ../bar.odt mimetype     $ zip -r ../bar.odt * -x mimetype     $ file ../bar.odt     bar.odt: Zip archive data, at least v1.0 to extract     $ hexdump -C -n 16 ../bar.odt     00000000  50 4b 03 04 0a 00 00 00  00 00 00 90 46 42 5e c6  |PK..........FB^.|     00000010      The fifth byte is `0x0a`. zip (2.32), Debian (6.0)


title: Syslog TLS Compression and Message Buffering

text: Where I work, we have a site-to-site VPN tunnel set up between our main data center and a third party data center that does some Oracle PaaS for us. Since they charge per-VM, we're monitoring the Oracle audit logs on a local VM that is running the analytics for the Security and Audits department. The third party (or rather a department within it) are complaining about the amount of network traffic going over the tunnel due to syslog. It's currently running unencrypted over udp/514, so I think I need to do some compression. After some research it looks like both `rsyslog` (what the third party is using) and `syslog-ng` (what we're using) support TLS compression. We have the CPU cycle's to spare, the third party's networking team is just complaining because apparently it impacts their SLA's. My question is this: **Is there any way for`rsyslog` to essentially batch together several messages at once (say over a five minute window) and have them sent to our `syslog-ng` server all at once?** The reason I'm interested in doing this is because we would be switching over to TCP there's going to be more overhead. It's my understanding that most compression methods will do substitution on redundant data, which I'd imagine would be the case with a stream of syslog messages. The goal is to batch together then remove the redundant parts prior to transmission.


title: Sorting IP address according to the second field in file

text: in my ksh script I need to add the following task ( OS - linux/solaris ) I have the following file                more test.txt                /etc/backup/app 172.1.120      172.110.120       /etc/backup/app 172.1.120.12   172.110.120.98       /etc/backup/app 192.1.120      192.120.120       /etc/backup/app 172.1.120.1      172.110.120.7       /var/log/df     193.23.2       193.23.2      /var/log/df     193.23.2.111   193.23.2.159      how to locate all IP's with **4 octets** in the beginning of the file , and then the others IP's with **3 octets** Remark – sort IP's will be according to the second field Example of requested file ( after sort )                   more test.txt              /etc/backup/app 172.1.120.12   172.110.120.98          /etc/backup/app 172.1.120.1    172.110.120.7         /var/log/df     193.23.2.111   193.23.2.159         /etc/backup/app 172.1.120      172.110.120          /etc/backup/app 192.1.120      192.120.120          /var/log/df     193.23.2       193.23.2      Solution can be done with sort or ksh/awk/sed/perl one liner ...etc


title: remove duplicate files

text: On my Mac OS X 10.6.7, iTunes duplicated every single file in my music library. Now I have 3,840 files instead of 1,920. The problem is that iTunes didn't simply duplicate the whole folder, but each file in each folder, adding a `1` to the duplicate. It looks like this:               ├── album1     │   ├── track1.mp3     │   ├── track1 1.mp3     │   ├── track2.mp3     │   └── track2 1.mp3     └── album2         ├── track1.m4a         └── track1 1.m4a      Now rather than clicking on 1,920 duplicates, I want to enter some smart line in the Terminal to get rid of the extra files: `find path/to/music/ -name "* 1.*" -delete` Though this will work in most cases, it will mess up things in the following situation:               └── album2         ├── track 1.mp3         └── track 1 1.mp3      Maybe I should exclude `"* 1 1.*"` and later on rename those files removing the extra `1`? **How do I do this?** **Is there a simple solution to this?**


title: What does su - `whoami` command do?

text: I am running a script in my project and I see this command               su - `whoami`      I am having a few basic questions:   1. What does this command do ?   2. What is the significance of `` quotes outside the whoami command ?   3. What is - used for ? I know `su` stands for switch user.


title: how to configure catch all mail in zpanel

text: I have a CentOS configured with zpanel and I want to setup catch all mail but there is no option in zpanel to configure it.   I have tried to search with google but not find any working solution. How can I set that up?


title: Use a shell not installed on remote machine

text: Given the scenario:   * **Remote** machine: SSH server; **user** does not have admin privileges;   * **Local** machine: SSH client; **user** has admin privileges. If **user** , logging in to **remote** from **local** , wishes to interact with **remote** using a shell not installed on **remote** , how can **user** accomplish this alone? _Example: **user** uses fish on **local** , and wishes also to use it on **remote** , but **remote** only has bash and zsh installed._


title: What is the algorithm that the `iw` command uses for choosing an Access Point for a given Wifi network?

text: Suppose I am in an area with a lot of Wireless AP's for a particular SSID. If I run the command               sudo iw dev wlan0 connect <ESSID>      How does `iw` decide which AP to connect to? It does not seem to be based on signal strength, since the one it connects to is not the one with the best signal strength.


title: What horrible mistakes should I avoid as a newb?

text: **Edit** - please see this duplicate question. I just chowned -R my /usr folder, which totally corrupted my computer (not sure how, but I lost sudo power eventually). This seems like a horrible newb mistake. Are there other ones I should avoid?


title: How to change vim auto-indent behavior?

text: By default `vim` aligns lines inside LI tags on the same position as the position of LI tag, but I want the contents of LI to have deeper indentation. Current behaviour:               <LI>     first line     second line      I want:               <UL>         first line         second line      Is this possible?


title: Obtain device name and mount point if partition label is known

text: How to obtain the partition device name and mount point when the file system label is known? There are several possibilities: ## Linux ### File system label to device name The device name can be obtained with `blkid`:               blkid -l -o device -t LABEL="$label" -c /dev/null      ### Device name to mount point I tried obtaining the mount point with `blkid`, but I failed. Using the `-s` switch all other fields can be queried when the label is provided:               blkid -l -t LABEL="$label" -o value -s LABEL      # yields label     blkid -l -t LABEL="$label" -o value -s TYPE       # yields partition type     blkid -l -t LABEL="$label" -o value -s UUID       # yields UUID     blkid -l -t LABEL="$label" -o value -s MOUNTPOINT # yields nothing      Obtaining the mount point is not supported apparently, though it is listed when the `-o list` option is given, but not in an easy parseable way:               blkid -o list -c /dev/null <device>      The next attempt was to use `df -P`. Here's what I came up with, assuming the device is stored in the variable `device`:               export device     mountpoint=$(df -P |       awk --assign dev="$device" \         '{if ($1==dev)             \           {for (i=1; i<=NF-5; i++) \             $i=$(i+5);             \             NF-=5;                 \             print                  \           }                        \         }')      This code works. However, given it's ugliness I'm not convinced that parsing `df` is the preferred way. ## Other Unices ### File system label to device name `blkid` works beautifully on Linux, but it's not available on Solaris or FreeBSD (at least one can't expect it to be installed). The same goes for `findfs`. How do I obtain the device name in a portable way on Linux, Solaris and FreeBSD? ### Device name to mount point Happily `df -P` produces very similar output on all tested systems. The problem is that my ugly `awk` script doesn't seem to be portable (tested with Sun `awk`, `gawk` on Solaris and FreeBSDs `awk`). What's the preferred way? ## Related questions How to get the mount point of flash drive by using uuid? Problem: Parsing `/proc/mounts` is not portable and troublesome even on Linux. Parsing `mount` seems even worse. Perl is generally not available. Is there a command to see where a disk is mounted? Problem: Parses `/proc/mounts` with a buggy `awk` script. The solutions aren't portable. ## Summary I'd like to obtain the device name and mount point when the file system label is provided in a portable way (assuming a POSIX shell). The disk label might contain white space or other non-ASCII characters which seems to complicate things even more.                        Label-To-Device    Device-To-Mount-Point              ---------------    ---------------------     Linux           ✓                    ✓ (ugly)     Solaris         .                    .     FreeBSD         .                    .


title: Splitting a large directory tree by file type

text: I have a large data directory (20-30Gb) on my Ubuntu 10.10 desktop machine that consists of many raw data files, processed data files, and assorted scripts, tables, figures etc. generated from the processed data. The data directory has accumulated over many years, and is very poorly structured - "one day" I will sort it out, but there are always more important things to do. I'm now switching to an online backup service, and in order to reduce both the time taken to backup and the online storage required i'd like to split out the raw data, which takes up a lot of space but is easily replaced as is already archived elsewhere, while retaining its general position in the directory structure. In other words, I want to go from something like:               /data/A/raw1.data     /data/A/raw2.data     /data/A/raw3.data     /data/A/processed.txt     /data/A/figure.eps     /data/A/plot.gnu     /data/B/raw4.data     /data/B/processed.txt     ... etc.      to               /data/A/processed.txt     /data/A/figure.eps     /data/A/plot.gnu     /data/B/processed.txt     ... etc.      and               /raw_data/A/raw1.data     /raw_data/A/raw2.data     /raw_data/A/raw3.data     /raw_data/B/raw4.data     ... etc.      So the raw data files swap from /data to /raw_data but otherwise retain their position in the directory structure, while the processed data and associated files remain in the same place. The overall file structure is much more complex and disordered than this, but the saving grace is that all raw data can be identified by filetype (mainly .fits and .sdf). I'm sure this is trivial with the right combination of commands and/or a few lines of bash script, but my command-line knowledge is limited to the basics and I would rather ask than risk messing it up :) And, as an aside, is there a simple way to look for duplicates in the raw data - will have identical filename + size, not necessarily timestamp which gets reset as the data is downloaded from the archive, although to be completely sure I need to pipe each duplicate candidate through dfits and grep the timestamp in the fits header.


title: Highlight the current date in cal

text: I would like to highlight today's date in the output of the `cal` command. What is the best way? This is what I have so far:               cal -m | grep -C6 --color "$(date +%e)"      but it doesn't work for all cases e.g, when the date has a single digit. I also want the highlighting to work when I display the calendar for a year.


title: VPN with network manager (nm-applet) is not working

text: My university (TU Wien) offers a VPN in order to get an IP of the university network. The instruction on the university webpage says to install the packages `network-manager-gnome`, `network-manager-vpnc` and `vpnc` and also a screenshot with the correct settings is provided: ![enter image description here](http://www.zid.tuwien.ac.at/fileadmin/files_kom/anleitungen/vpn/GnomeNetworkManager_vpnc_extern.png) But when I try to connect, simple nothing happens. There is no error nor does anything else change. There is also no message on the command line (when starting the `nm-applet` there). Any idea what I'm doing wrong?


title: Cleancache vs zram?

text: I have an old laptop here with only 512 MB of RAM. Since a few kernel releases, I am using _zram_ to convert 256 MB of it to a compressed ramdisk which is then used as swap. This has proved to be very successful and the system is much more responsive, (hard-disk-backed) swap usage has gone down considerably, which slowed the system down before. Since linux 3.0, the kernel also includes _cleancache_ which, using something like zram as a backend is supposed to transparently compress pages from the page cache. As far as I can see this is different from _zram_. **Should I enable both on my laptop? Or does _cleancache_ actually supersede the _zram_ solution?** **Edit:** I have found this gentoo forum link, where it seems that I also have to enable `CONFIG_ZCACHE` which then makes _cleancache_ use _zram_ to obtain something similar to what I had before. So it seems that I enable all of this and do not use _zram_ explicitly afterwards. Can anybody confirm this?


title: Xorg -configure doesn't work with nouveau drivers

text: I'm having problems setting up X.org on Gentoo. At the moment I have kernel 2.6.37-gentoo-r4 installed and have built X against this kernel. I have nouveau drivers installed and they seem to be working correctly, from what I can see in terminal. I have nVIdia GeForce 9500M GS and it should be supported by the driver since it uses the NV84 (G84) core. When I try to startx, this is what I get:               ZVEZDA ~ # startx     hostname: Unknown host     xauth:  file /root/.serverauth.4316 does not exist               X.Org X Server 1.9.4     Release Date: 2011-02-04     X Protocol Version 11, Revision 0     Build Operating System: Linux 2.6.37-gentoo-r4 x86_64 Gentoo     Current Operating System: Linux ZVEZDA 2.6.37-gentoo-r4 #2 SMP PREEMPT Mon Apr 11 14:00:26 CEST 2011 x86_64     Kernel command line: root=/dev/sda3 nouveau.modeset=1     Build Date: 11 April 2011  02:02:40PM          Current version of pixman: 0.20.2             Before reporting problems, check http://wiki.x.org             to make sure that you have the latest version.     Markers: (--) probed, (**) from config file, (==) default setting,             (++) from command line, (!!) notice, (II) informational,             (WW) warning, (EE) error, (NI) not implemented, (??) unknown.     (==) Log file: "/var/log/Xorg.0.log", Time: Mon Apr 11 14:13:09 2011     (==) Using system config directory "/usr/share/X11/xorg.conf.d"     (EE) Failed to load module "vesa" (module does not exist, 0)     (EE) Failed to load module "fbdev" (module does not exist, 0)     resize called 1920 1200     (EE) Logitech USB Receiver: failed to initialize for relative axes.     (EE) SynPS/2 Synaptics TouchPad no synaptics event device found     (EE) Query no Synaptics: 6003C8     (EE) SynPS/2 Synaptics TouchPad Unable to query/initialize Synaptics hardware.     (EE) PreInit failed for input device "SynPS/2 Synaptics TouchPad"     which: no keychain in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.2)     /etc/X11/xinit/xinitrc: line 61: xterm: command not found     /etc/X11/xinit/xinitrc: line 63: exec: xterm: not found     /etc/X11/xinit/xinitrc: line 59: twm: command not found     xinit: connection to X server lost          waiting for X server to shut down      When I try to configure Xorg, I get:               ZVEZDA Xorg # Xorg -configure          X.Org X Server 1.9.4     Release Date: 2011-02-04     X Protocol Version 11, Revision 0     Build Operating System: Linux 2.6.36-gentoo-r5 x86_64 Gentoo     Current Operating System: Linux ZVEZDA 2.6.37-gentoo-r4 #1 SMP PREEMPT Mon Apr 11 13:37:39 CEST 2011 x86_64     Kernel command line: root=/dev/sda3 nouveau.modeset=1     Build Date: 18 March 2011  09:54:54PM          Current version of pixman: 0.20.2             Before reporting problems, check http://wiki.x.org             to make sure that you have the latest version.     Markers: (--) probed, (**) from config file, (==) default setting,             (++) from command line, (!!) notice, (II) informational,             (WW) warning, (EE) error, (NI) not implemented, (??) unknown.     (==) Log file: "/var/log/Xorg.0.log", Time: Mon Apr 11 14:04:54 2011     List of video drivers:             nouveau     (++) Using config file: "/root/xorg.conf.new"     (==) Using system config directory "/usr/share/X11/xorg.conf.d"     (EE) [drm] No DRICreatePCIBusID symbol     Number of created screens does not match number of detected devices.       Configuration failed.      The log says:               [    47.459]      X.Org X Server 1.9.4     Release Date: 2011-02-04     [    47.461] X Protocol Version 11, Revision 0     [    47.461] Build Operating System: Linux 2.6.37-gentoo-r4 x86_64 Gentoo     [    47.462] Current Operating System: Linux ZVEZDA 2.6.37-gentoo-r4 #2 SMP PREEMPT Mon Apr 11 14:00:26 CEST 2011 x86_64     [    47.463] Kernel command line: root=/dev/sda3 nouveau.modeset=1     [    47.464] Build Date: 11 April 2011  02:02:40PM     [    47.465]       [    47.465] Current version of pixman: 0.20.2     [    47.466]    Before reporting problems, check http://wiki.x.org         to make sure that you have the latest version.     [    47.468] Markers: (--) probed, (**) from config file, (==) default setting,         (++) from command line, (!!) notice, (II) informational,         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.     [    47.470] (==) Log file: "/var/log/Xorg.0.log", Time: Mon Apr 11 15:58:36 2011     [    47.471] (II) Loader magic: 0x7d5140     [    47.471] (II) Module ABI versions:     [    47.471]    X.Org ANSI C Emulation: 0.4     [    47.471]    X.Org Video Driver: 8.0     [    47.471]    X.Org XInput driver : 11.0     [    47.471]    X.Org Server Extension : 4.0     [    47.472] (--) PCI:*(0:1:0:0) 10de:0405:1025:011e rev 161, Mem @ 0xd2000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00005000/128     [    47.473] List of video drivers:     [    47.473]    nouveau     [    47.474] (II) LoadModule: "nouveau"     [    47.474] (II) Loading /usr/lib64/xorg/modules/drivers/nouveau_drv.so     [    47.474] (II) Module nouveau: vendor="X.Org Foundation"     [    47.474]    compiled for 1.9.4, module version = 0.0.16     [    47.474]    Module class: X.Org Video Driver     [    47.474]    ABI class: X.Org Video Driver, version 8.0     [    47.475] (II) NOUVEAU driver      [    47.475] (II) NOUVEAU driver for NVIDIA chipset families :     [    47.475]    RIVA TNT    (NV04)     [    47.475]    RIVA TNT2   (NV05)     [    47.475]    GeForce 256 (NV10)     [    47.475]    GeForce 2   (NV11, NV15)     [    47.475]    GeForce 4MX (NV17, NV18)     [    47.475]    GeForce 3   (NV20)     [    47.475]    GeForce 4Ti (NV25, NV28)     [    47.475]    GeForce FX  (NV3x)     [    47.475]    GeForce 6   (NV4x)     [    47.475]    GeForce 7   (G7x)     [    47.475]    GeForce 8   (G8x)     [    47.491] (++) Using config file: "/root/xorg.conf.new"     [    47.491] (==) Using system config directory "/usr/share/X11/xorg.conf.d"     [    47.492] (==) ServerLayout "X.org Configured"     [    47.492] (**) |-->Screen "Screen0" (0)     [    47.492] (**) |   |-->Monitor "Monitor0"     [    47.492] (**) |   |-->Device "Card0"     [    47.492] (**) |-->Input Device "Mouse0"     [    47.492] (**) |-->Input Device "Keyboard0"     [    47.492] (==) Automatically adding devices     [    47.493] (==) Automatically enabling devices     [    47.493] (**) FontPath set to:         /usr/share/fonts/misc/,         /usr/share/fonts/TTF/,         /usr/share/fonts/OTF/,         /usr/share/fonts/Type1/,         /usr/share/fonts/100dpi/,         /usr/share/fonts/75dpi/,         /usr/share/fonts/misc/,         /usr/share/fonts/TTF/,         /usr/share/fonts/OTF/,         /usr/share/fonts/Type1/,         /usr/share/fonts/100dpi/,         /usr/share/fonts/75dpi/     [    47.493] (**) ModulePath set to "/usr/lib64/xorg/modules"     [    47.493] (WW) AllowEmptyInput is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.     [    47.493] (WW) Disabling Mouse0     [    47.493] (WW) Disabling Keyboard0     [    47.493] (EE) [drm] No DRICreatePCIBusID symbol     [    47.493] Number of created screens does not match number of detected devices.       Configuration failed.      There are some interesting lines in those files, for example this:                   [    47.475] (II) NOUVEAU driver for NVIDIA chipset families :         [    47.475]    RIVA TNT    (NV04)         [    47.475]    RIVA TNT2   (NV05)         [    47.475]    GeForce 256 (NV10)         [    47.475]    GeForce 2   (NV11, NV15)         [    47.475]    GeForce 4MX (NV17, NV18)         [    47.475]    GeForce 3   (NV20)         [    47.475]    GeForce 4Ti (NV25, NV28)         [    47.475]    GeForce FX  (NV3x)         [    47.475]    GeForce 6   (NV4x)         [    47.475]    GeForce 7   (G7x)         [    47.475]    GeForce 8   (G8x)      and                   [    47.493] (EE) [drm] No DRICreatePCIBusID symbol         [    47.493] Number of created screens does not match number of detected devices.           Configuration failed.      So what am I missing?


title: Dual monitors and panels

text: I have a question with regard to a multiple monitor setup. I'm currently primarily a Windows user, but I've been running Ubuntu in dual boot to get a feel for it. The one thing I find lacking that will (I feel) force me to choose Windows over any Unix system for general use is the seeming lack of adequate support for multiple taskbars (or panels, as they're referred to in Ubuntu) on multiple screens. I've googled, I've searched here, I've read every old forum post I could find, and found information numerous times that suggest I should be able to move panels from one screen to another. Now, this might sound silly, but they won't move to my secondary screen. I can add, remove and move around panels on the main screen, but they'll never drag to the secondary screen. Even if I could drag panels across screens correctly, this doesn't necessarily solve my problem anyway: On Windows I use Ultramon. I get two displays, and a secondary taskbar that shows windows/tasks specific to that second screen. I'm looking for something similar, or as close to it on Unix; supporting Ubuntu would be preferable but I could always switch to something else (my important stuff is all in Windows right now). **Is there a Unix application available (free or not) that will provide multiple monitor panels/taskbars?** Or alternatively, is there a way to hack in similar functionality?


title: anonymous url navigation in command line?

text: Is there any way to anonymize http requests through the command line? In other words, is it possible to `wget` a page without the requester's IP showing up?


title: /etc/profile is not read in changed user shell

text: I need to run custom binary when user logged in to system ,so that I have changed user's shell to /bin/binary to /etc/passwd but I have observed that /etc/profile file was not read when I logged in with changed user's shell So /etc/profile will be only read if user's shell is /bin/sh in /etc/passwd??


title: Alternatives to wget

text: I have a site on a server that is basically a bunch of HTML pages, pictures and sounds. I have lost my password to that server and I need to grab everything that is stored there. I can go page by page and save everything but the site has more than 100 pages. I am using OSX. I have tried to use `wget` but I think the server is blocking that. Is there any alternative I can use to grab that content?


title: Errors while invoking Web service using `Curl` command from Unix terminal

text: I have been trying to invoke a web service from my script using the `Curl` command . I got the script from HERE. **My Script :**               #! /bin/sh          ENDPOINT="http://mathertel.de/AJAXEngine/S01_AsyncSamples/CalcService.asmx"     VALUE=1234567890     if [ -n "${1}" ]; then         VALUE=${1}     fi          curl --silent \\          --data \\          @- \\          --header 'Content-Type: application/soap+xml; charset=utf-8' \\          --user-agent "" \\          ${ENDPOINT} <<EOF | xmllint --format -     <?xml version="1.0" encoding="utf-8"?>     <soap12:Envelope          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"          xmlns:xsd="http://www.w3.org/2001/XMLSchema"          xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">       <soap12:Body>         <CalcPrimeFactors xmlns="http://www.mathertel.de/S01_AsyncSamples/">           <inputText>${VALUE}</inputText>         </CalcPrimeFactors>       </soap12:Body>     </soap12:Envelope>     EOF      **And i get these Errors :**               ./CalcService.sh: 10: ./CalcService.sh: --data: not found     ./CalcService.sh: 11: ./CalcService.sh: @-: not found     ./CalcService.sh: 12: ./CalcService.sh: --header: not found     ./CalcService.sh: 13: ./CalcService.sh: --user-agent: not found     ./CalcService.sh: 14: ./CalcService.sh: ./CalcService.sh: 14: ./CalcService.sh: http://mathertel.de/AJAXEngine/S01_AsyncSamples/CalcService.asmx: not found      xmllint: not found      Now i have installed curl, and tried to install `xmllint` but it did not get installed, saying it's a broken package. Anybody has any suggestions as to what is happening here and what i can do to mitigate this ? This is driving me crazy...