https://docs.oracle.com/cd/E19683-01/816-0210/6m6nb7m8b/index.html
I see SunOS has elfdump. Does ubuntu have it as well? I can not find this command.
https://docs.oracle.com/cd/E19683-01/816-0210/6m6nb7m8b/index.html
I see SunOS has elfdump. Does ubuntu have it as well? I can not find this command.
https://code.woboq.org/userspace/glibc/gshadow/gshadow.h.html
I don't find the manpage of endsgent
. Does anybody know which package has the manpage for endsgent
?
I want to manually compile the login command (with the exact CC and LD commands).
https://packages.ubuntu.com/groovy/login
/tmp/shadow_4.8.1.orig/src$ make VERBOSE=1
CC login.o
CCLD login
The above command doesn't show the exact command. When I run the following, I see the following error.
$ gcc -o login login.c
login.c:33:10: fatal error: config.h: No such file or directory
33 | #include <config.h>
| ^~~~~~~~~~
compilation terminated.
Could anybody show me how to get the exact commands used to compile the program login? Thanks.
I see libc6-dev
have files installed in /usr/include/x86_64-linux-gnu
.
It seems that files in /usr/include/x86_64-linux-gnu/sys are pointed by symlinks from /usr/include/sys. And it seems that /usr/include/bits/ and /usr/include/x86_64-linux-gnu/bits have the same files.
Are /usr/include/x86_64-linux-gnu/sys
and /usr/include/sys
exactly the same?
Are /usr/include/bits
and /usr/include/x86_64-linux-gnu/bits
exactly the same?
$ ls -gG /usr/include/sys/wait.h
lrwxrwxrwx 1 30 2021/01/05-00:47:42 /usr/include/sys/wait.h -> ../x86_64-linux-gnu/sys/wait.h
$ ls /usr/include/sys/ | wc -l
82
$ ls /usr/include/x86_64-linux-gnu/sys/ | wc -l
82
$ cmp /usr/include/bits/a.out.h /usr/include/x86_64-linux-gnu/bits/a.out.h
$ ls /usr/include/bits/ | wc -l
172
$ ls /usr/include/x86_64-linux-gnu/bits/ | wc -l
172
What files are in the sys/ directory and what files are in the bits/ directory?
Which package installs files in /usr/include/bits? I can not find the package that installs for example the following file.
$ apt-file search /usr/include/bits/a.out.h
Why only fpu_control.h
in x86_64-linux-gnu/
is linked to /usr/include/
?
/usr/include$ ls -l a.out.h fpu_control.h ieee754.h
ls: cannot access 'a.out.h': No such file or directory
ls: cannot access 'ieee754.h': No such file or directory
lrwxrwxrwx 1 root root 30 2021/01/05-00:47:42 fpu_control.h -> x86_64-linux-gnu/fpu_control.h
/usr/include/x86_64-linux-gnu/a.out.h
/usr/include/x86_64-linux-gnu/fpu_control.h
/usr/include/x86_64-linux-gnu/ieee754.h
/usr/include/x86_64-linux-gnu/bits/a.out.h
/usr/include/x86_64-linux-gnu/bits/argp-ldbl.h
/usr/include/x86_64-linux-gnu/bits/auxv.h
/usr/include/x86_64-linux-gnu/bits/byteswap.h
/usr/include/x86_64-linux-gnu/bits/cmathcalls.h
/usr/include/x86_64-linux-gnu/bits/confname.h
/usr/include/x86_64-linux-gnu/bits/cpu-set.h
/usr/include/x86_64-linux-gnu/bits/dirent.h
/usr/include/x86_64-linux-gnu/bits/dirent_ext.h
/usr/include/x86_64-linux-gnu/bits/dlfcn.h
/usr/include/x86_64-linux-gnu/bits/elfclass.h
/usr/include/x86_64-linux-gnu/bits/endian.h
/usr/include/x86_64-linux-gnu/bits/endianness.h
/usr/include/x86_64-linux-gnu/bits/environments.h
/usr/include/x86_64-linux-gnu/bits/epoll.h
/usr/include/x86_64-linux-gnu/bits/err-ldbl.h
/usr/include/x86_64-linux-gnu/bits/errno.h
/usr/include/x86_64-linux-gnu/bits/error-ldbl.h
/usr/include/x86_64-linux-gnu/bits/error.h
/usr/include/x86_64-linux-gnu/bits/eventfd.h
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h
/usr/include/x86_64-linux-gnu/bits/fcntl.h
/usr/include/x86_64-linux-gnu/bits/fcntl2.h
/usr/include/x86_64-linux-gnu/bits/fenv.h
/usr/include/x86_64-linux-gnu/bits/fenvinline.h
/usr/include/x86_64-linux-gnu/bits/floatn-common.h
/usr/include/x86_64-linux-gnu/bits/floatn.h
/usr/include/x86_64-linux-gnu/bits/flt-eval-method.h
/usr/include/x86_64-linux-gnu/bits/fp-fast.h
/usr/include/x86_64-linux-gnu/bits/fp-logb.h
/usr/include/x86_64-linux-gnu/bits/getopt_core.h
/usr/include/x86_64-linux-gnu/bits/getopt_ext.h
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h
/usr/include/x86_64-linux-gnu/bits/hwcap.h
/usr/include/x86_64-linux-gnu/bits/in.h
/usr/include/x86_64-linux-gnu/bits/indirect-return.h
/usr/include/x86_64-linux-gnu/bits/initspin.h
/usr/include/x86_64-linux-gnu/bits/inotify.h
/usr/include/x86_64-linux-gnu/bits/ioctl-types.h
/usr/include/x86_64-linux-gnu/bits/ioctls.h
/usr/include/x86_64-linux-gnu/bits/ipc-perm.h
/usr/include/x86_64-linux-gnu/bits/ipc.h
/usr/include/x86_64-linux-gnu/bits/ipctypes.h
/usr/include/x86_64-linux-gnu/bits/iscanonical.h
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h
/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h
/usr/include/x86_64-linux-gnu/bits/link.h
/usr/include/x86_64-linux-gnu/bits/local_lim.h
/usr/include/x86_64-linux-gnu/bits/locale.h
/usr/include/x86_64-linux-gnu/bits/long-double.h
/usr/include/x86_64-linux-gnu/bits/math-vector.h
/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h
/usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h
/usr/include/x86_64-linux-gnu/bits/mathcalls.h
/usr/include/x86_64-linux-gnu/bits/mathdef.h
/usr/include/x86_64-linux-gnu/bits/mathinline.h
/usr/include/x86_64-linux-gnu/bits/mman-linux.h
/usr/include/x86_64-linux-gnu/bits/mman-map-flags-generic.h
/usr/include/x86_64-linux-gnu/bits/mman-shared.h
/usr/include/x86_64-linux-gnu/bits/mman.h
/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h
/usr/include/x86_64-linux-gnu/bits/mqueue.h
/usr/include/x86_64-linux-gnu/bits/mqueue2.h
/usr/include/x86_64-linux-gnu/bits/msq-pad.h
/usr/include/x86_64-linux-gnu/bits/msq.h
/usr/include/x86_64-linux-gnu/bits/netdb.h
/usr/include/x86_64-linux-gnu/bits/param.h
/usr/include/x86_64-linux-gnu/bits/poll.h
/usr/include/x86_64-linux-gnu/bits/poll2.h
/usr/include/x86_64-linux-gnu/bits/posix1_lim.h
/usr/include/x86_64-linux-gnu/bits/posix2_lim.h
/usr/include/x86_64-linux-gnu/bits/posix_opt.h
/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h
/usr/include/x86_64-linux-gnu/bits/procfs-extra.h
/usr/include/x86_64-linux-gnu/bits/procfs-id.h
/usr/include/x86_64-linux-gnu/bits/procfs-prregset.h
/usr/include/x86_64-linux-gnu/bits/procfs.h
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h
/usr/include/x86_64-linux-gnu/bits/ptrace-shared.h
/usr/include/x86_64-linux-gnu/bits/resource.h
/usr/include/x86_64-linux-gnu/bits/sched.h
/usr/include/x86_64-linux-gnu/bits/select.h
/usr/include/x86_64-linux-gnu/bits/select2.h
/usr/include/x86_64-linux-gnu/bits/sem-pad.h
/usr/include/x86_64-linux-gnu/bits/sem.h
/usr/include/x86_64-linux-gnu/bits/semaphore.h
/usr/include/x86_64-linux-gnu/bits/setjmp.h
/usr/include/x86_64-linux-gnu/bits/setjmp2.h
/usr/include/x86_64-linux-gnu/bits/shm-pad.h
/usr/include/x86_64-linux-gnu/bits/shm.h
/usr/include/x86_64-linux-gnu/bits/shmlba.h
/usr/include/x86_64-linux-gnu/bits/sigaction.h
/usr/include/x86_64-linux-gnu/bits/sigcontext.h
/usr/include/x86_64-linux-gnu/bits/sigevent-consts.h
/usr/include/x86_64-linux-gnu/bits/siginfo-arch.h
/usr/include/x86_64-linux-gnu/bits/siginfo-consts-arch.h
/usr/include/x86_64-linux-gnu/bits/siginfo-consts.h
/usr/include/x86_64-linux-gnu/bits/signal_ext.h
/usr/include/x86_64-linux-gnu/bits/signalfd.h
/usr/include/x86_64-linux-gnu/bits/signum-generic.h
/usr/include/x86_64-linux-gnu/bits/signum.h
/usr/include/x86_64-linux-gnu/bits/sigstack.h
/usr/include/x86_64-linux-gnu/bits/sigthread.h
/usr/include/x86_64-linux-gnu/bits/sockaddr.h
/usr/include/x86_64-linux-gnu/bits/socket-constants.h
/usr/include/x86_64-linux-gnu/bits/socket.h
/usr/include/x86_64-linux-gnu/bits/socket2.h
/usr/include/x86_64-linux-gnu/bits/socket_type.h
/usr/include/x86_64-linux-gnu/bits/ss_flags.h
/usr/include/x86_64-linux-gnu/bits/stat.h
/usr/include/x86_64-linux-gnu/bits/statfs.h
/usr/include/x86_64-linux-gnu/bits/statvfs.h
/usr/include/x86_64-linux-gnu/bits/statx-generic.h
/usr/include/x86_64-linux-gnu/bits/statx.h
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h
/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h
/usr/include/x86_64-linux-gnu/bits/stdio.h
/usr/include/x86_64-linux-gnu/bits/stdio2.h
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h
/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h
/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h
/usr/include/x86_64-linux-gnu/bits/stdlib.h
/usr/include/x86_64-linux-gnu/bits/string_fortified.h
/usr/include/x86_64-linux-gnu/bits/strings_fortified.h
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h
/usr/include/x86_64-linux-gnu/bits/sys_errlist.h
/usr/include/x86_64-linux-gnu/bits/syscall.h
/usr/include/x86_64-linux-gnu/bits/sysctl.h
/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h
/usr/include/x86_64-linux-gnu/bits/syslog-path.h
/usr/include/x86_64-linux-gnu/bits/syslog.h
/usr/include/x86_64-linux-gnu/bits/sysmacros.h
/usr/include/x86_64-linux-gnu/bits/termios-baud.h
/usr/include/x86_64-linux-gnu/bits/termios-c_cc.h
/usr/include/x86_64-linux-gnu/bits/termios-c_cflag.h
/usr/include/x86_64-linux-gnu/bits/termios-c_iflag.h
/usr/include/x86_64-linux-gnu/bits/termios-c_lflag.h
/usr/include/x86_64-linux-gnu/bits/termios-c_oflag.h
/usr/include/x86_64-linux-gnu/bits/termios-misc.h
/usr/include/x86_64-linux-gnu/bits/termios-struct.h
/usr/include/x86_64-linux-gnu/bits/termios-tcflow.h
/usr/include/x86_64-linux-gnu/bits/termios.h
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h
/usr/include/x86_64-linux-gnu/bits/time.h
/usr/include/x86_64-linux-gnu/bits/time64.h
/usr/include/x86_64-linux-gnu/bits/timerfd.h
/usr/include/x86_64-linux-gnu/bits/timesize.h
/usr/include/x86_64-linux-gnu/bits/timex.h
/usr/include/x86_64-linux-gnu/bits/types.h
/usr/include/x86_64-linux-gnu/bits/typesizes.h
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h
/usr/include/x86_64-linux-gnu/bits/uio-ext.h
/usr/include/x86_64-linux-gnu/bits/uio_lim.h
/usr/include/x86_64-linux-gnu/bits/unistd.h
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h
/usr/include/x86_64-linux-gnu/bits/utmp.h
/usr/include/x86_64-linux-gnu/bits/utmpx.h
/usr/include/x86_64-linux-gnu/bits/utsname.h
/usr/include/x86_64-linux-gnu/bits/waitflags.h
/usr/include/x86_64-linux-gnu/bits/waitstatus.h
/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h
/usr/include/x86_64-linux-gnu/bits/wchar.h
/usr/include/x86_64-linux-gnu/bits/wchar2.h
/usr/include/x86_64-linux-gnu/bits/wctype-wchar.h
/usr/include/x86_64-linux-gnu/bits/wordsize.h
/usr/include/x86_64-linux-gnu/bits/xopen_lim.h
/usr/include/x86_64-linux-gnu/bits/types/FILE.h
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h
/usr/include/x86_64-linux-gnu/bits/types/__sigval_t.h
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h
/usr/include/x86_64-linux-gnu/bits/types/error_t.h
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h
/usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h
/usr/include/x86_64-linux-gnu/bits/types/res_state.h
/usr/include/x86_64-linux-gnu/bits/types/sig_atomic_t.h
/usr/include/x86_64-linux-gnu/bits/types/sigevent_t.h
/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h
/usr/include/x86_64-linux-gnu/bits/types/sigval_t.h
/usr/include/x86_64-linux-gnu/bits/types/stack_t.h
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h
/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h
/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h
/usr/include/x86_64-linux-gnu/bits/types/struct_osockaddr.h
/usr/include/x86_64-linux-gnu/bits/types/struct_rusage.h
/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h
/usr/include/x86_64-linux-gnu/bits/types/struct_sigstack.h
/usr/include/x86_64-linux-gnu/bits/types/struct_statx.h
/usr/include/x86_64-linux-gnu/bits/types/struct_statx_timestamp.h
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h
/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h
/usr/include/x86_64-linux-gnu/bits/types/time_t.h
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h
/usr/include/x86_64-linux-gnu/bits/types/wint_t.h
/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h
/usr/include/x86_64-linux-gnu/gnu/lib-names.h
/usr/include/x86_64-linux-gnu/gnu/libc-version.h
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h
/usr/include/x86_64-linux-gnu/gnu/stubs.h
/usr/include/x86_64-linux-gnu/sys/acct.h
/usr/include/x86_64-linux-gnu/sys/auxv.h
/usr/include/x86_64-linux-gnu/sys/bitypes.h
/usr/include/x86_64-linux-gnu/sys/cdefs.h
/usr/include/x86_64-linux-gnu/sys/debugreg.h
/usr/include/x86_64-linux-gnu/sys/dir.h
/usr/include/x86_64-linux-gnu/sys/elf.h
/usr/include/x86_64-linux-gnu/sys/epoll.h
/usr/include/x86_64-linux-gnu/sys/errno.h
/usr/include/x86_64-linux-gnu/sys/eventfd.h
/usr/include/x86_64-linux-gnu/sys/fanotify.h
/usr/include/x86_64-linux-gnu/sys/fcntl.h
/usr/include/x86_64-linux-gnu/sys/file.h
/usr/include/x86_64-linux-gnu/sys/fsuid.h
/usr/include/x86_64-linux-gnu/sys/gmon.h
/usr/include/x86_64-linux-gnu/sys/gmon_out.h
/usr/include/x86_64-linux-gnu/sys/inotify.h
/usr/include/x86_64-linux-gnu/sys/io.h
/usr/include/x86_64-linux-gnu/sys/ioctl.h
/usr/include/x86_64-linux-gnu/sys/ipc.h
/usr/include/x86_64-linux-gnu/sys/kd.h
/usr/include/x86_64-linux-gnu/sys/klog.h
/usr/include/x86_64-linux-gnu/sys/mman.h
/usr/include/x86_64-linux-gnu/sys/mount.h
/usr/include/x86_64-linux-gnu/sys/msg.h
/usr/include/x86_64-linux-gnu/sys/mtio.h
/usr/include/x86_64-linux-gnu/sys/param.h
/usr/include/x86_64-linux-gnu/sys/pci.h
/usr/include/x86_64-linux-gnu/sys/perm.h
/usr/include/x86_64-linux-gnu/sys/personality.h
/usr/include/x86_64-linux-gnu/sys/poll.h
/usr/include/x86_64-linux-gnu/sys/prctl.h
/usr/include/x86_64-linux-gnu/sys/procfs.h
/usr/include/x86_64-linux-gnu/sys/profil.h
/usr/include/x86_64-linux-gnu/sys/ptrace.h
/usr/include/x86_64-linux-gnu/sys/queue.h
/usr/include/x86_64-linux-gnu/sys/quota.h
/usr/include/x86_64-linux-gnu/sys/random.h
/usr/include/x86_64-linux-gnu/sys/raw.h
/usr/include/x86_64-linux-gnu/sys/reboot.h
/usr/include/x86_64-linux-gnu/sys/reg.h
/usr/include/x86_64-linux-gnu/sys/resource.h
/usr/include/x86_64-linux-gnu/sys/select.h
/usr/include/x86_64-linux-gnu/sys/sem.h
/usr/include/x86_64-linux-gnu/sys/sendfile.h
/usr/include/x86_64-linux-gnu/sys/shm.h
/usr/include/x86_64-linux-gnu/sys/signal.h
/usr/include/x86_64-linux-gnu/sys/signalfd.h
/usr/include/x86_64-linux-gnu/sys/socket.h
/usr/include/x86_64-linux-gnu/sys/socketvar.h
/usr/include/x86_64-linux-gnu/sys/soundcard.h
/usr/include/x86_64-linux-gnu/sys/stat.h
/usr/include/x86_64-linux-gnu/sys/statfs.h
/usr/include/x86_64-linux-gnu/sys/statvfs.h
/usr/include/x86_64-linux-gnu/sys/swap.h
/usr/include/x86_64-linux-gnu/sys/syscall.h
/usr/include/x86_64-linux-gnu/sys/sysctl.h
/usr/include/x86_64-linux-gnu/sys/sysinfo.h
/usr/include/x86_64-linux-gnu/sys/syslog.h
/usr/include/x86_64-linux-gnu/sys/sysmacros.h
/usr/include/x86_64-linux-gnu/sys/termios.h
/usr/include/x86_64-linux-gnu/sys/time.h
/usr/include/x86_64-linux-gnu/sys/timeb.h
/usr/include/x86_64-linux-gnu/sys/timerfd.h
/usr/include/x86_64-linux-gnu/sys/times.h
/usr/include/x86_64-linux-gnu/sys/timex.h
/usr/include/x86_64-linux-gnu/sys/ttychars.h
/usr/include/x86_64-linux-gnu/sys/ttydefaults.h
/usr/include/x86_64-linux-gnu/sys/types.h
/usr/include/x86_64-linux-gnu/sys/ucontext.h
/usr/include/x86_64-linux-gnu/sys/uio.h
/usr/include/x86_64-linux-gnu/sys/un.h
/usr/include/x86_64-linux-gnu/sys/unistd.h
/usr/include/x86_64-linux-gnu/sys/user.h
/usr/include/x86_64-linux-gnu/sys/utsname.h
/usr/include/x86_64-linux-gnu/sys/vfs.h
/usr/include/x86_64-linux-gnu/sys/vlimit.h
/usr/include/x86_64-linux-gnu/sys/vm86.h
/usr/include/x86_64-linux-gnu/sys/vt.h
/usr/include/x86_64-linux-gnu/sys/vtimes.h
/usr/include/x86_64-linux-gnu/sys/wait.h
/usr/include/x86_64-linux-gnu/sys/xattr.h
I see this. Where the source of libc6-dev-i386 is from?
$ apt-file search /usr/include/sys/socket.h
libc6-dev-i386: /usr/include/sys/socket.h
https://packages.debian.org/search?keywords=libc6
https://www.gnu.org/software/libc/sources.html
Is it from git://sourceware.org/git/glibc.git?
According to the following test, it seems that net.ipv4.icmp_echo_ignore_all
and /proc/sys/net/ipv4/icmp_echo_ignore_all
are exactly the same. Are they exactly the same? If so, which way is the best to use?
$ sudo sysctl -w net.ipv4.icmp_echo_ignore_all=1
net.ipv4.icmp_echo_ignore_all = 1
$ cat /proc/sys/net/ipv4/icmp_echo_ignore_all
1
$ sudo tee /proc/sys/net/ipv4/icmp_echo_ignore_all <<< 0
0
$ sysctl net.ipv4.icmp_echo_ignore_all
net.ipv4.icmp_echo_ignore_all = 0
When I run a command with sudo
like the following, subsequent sudo
commands will not ask for a password anymore.
sudo ls
But this still runs ls
. If I don't want to run any command at the beginning, but just stop subsequent sudo
commands from asking a password later on. Is there a way to do so?
I run the following command in a terminal.
sudo tcpdump -c 2 -w /tmp/z.pcap icmp
Then run the following command in a terminal.
ping 8.8.8.8
The file generated belongs to the user tcpdump instead of root.
$ stat /tmp/z.pcap
File: /tmp/z.pcap
Size: 158 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode: 4068722 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 115/ tcpdump) Gid: ( 120/ tcpdump)
Access: 2021-02-25 10:05:52.910772287 -0500
Modify: 2021-02-25 10:06:00.102859691 -0500
Change: 2021-02-25 10:06:00.102859691 -0500
Birth: 2021-02-25 10:05:52.910772287 -0500
The command tcpdump belongs to the root. Why the file generated does not belong to the root?
$ ls -l $(which tcpdump)
-rwxr-xr-x 1 root root 1261512 2021/01/15-17:41:47 /usr/bin/tcpdump
I just want to capture the packets sent by ping. I know there are tcpdump, but it doesn't just capture the packets for a single program. So is there a way to just capture the packet for a single program? Thanks.
Is there a way to download the manpages of all ubuntu packages without installing the packages. I just want to look up the manpages in a non-ubuntu machine. So I don't want to and can not install the packages.
I want to know where the database files searched by apt-file are stored.
apt-file search /usr/bin/lshw-gtk
But I don't see any files shown by strace look like apt-file database files. Why is it so?
I see it says the apt-file files are stored at /var/cache/apt/archives/
below. Is it too slow to search so many deb files? Does apt-file use some cache file to speed up the search?
$ time apt-file search /usr/bin/lshw-gtk
lshw-gtk: /usr/bin/lshw-gtk
real 0m0.542s
user 0m0.361s
sys 0m0.358s
Where are apt-get files stored?
$ strace -e trace=open,openat apt-file search /usr/bin/lshw-gtk
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libcrypt.so.1", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/dev/urandom", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/usr/bin/apt-file", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/strict.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/warnings.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/constant.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/warnings/register.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/Getopt/Long.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/vars.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/Exporter.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/overload.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/overloading.pm", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/Exporter/Heavy.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/File/Basename.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl5/5.32/AptPkg/Config.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl5/5.32/AptPkg.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/DynaLoader.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/Config.pm", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl5/5.32/auto/AptPkg/AptPkg.so", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libapt-pkg.so.6.0", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libz.so.1", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libbz2.so.1.0", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/liblzma.so.5", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/liblz4.so.1", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libzstd.so.1", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libudev.so.1", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libsystemd.so.0", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgcrypt.so.20", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libxxhash.so.0", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgpg-error.so.0", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl5/5.32/AptPkg/hash.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/Scalar/Util.pm", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/List/Util.pm", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/XSLoader.pm", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so", O_RDONLY|O_CLOEXEC) = 6
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl-base/Carp.pm", O_RDONLY|O_CLOEXEC) = 5
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl/5.32/Time/HiRes.pm", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/perl/5.32/auto/Time/HiRes/HiRes.so", O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache", O_RDONLY) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/00CDMountPoint", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/00aptitude", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/00trustcdrom", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/01autoremove", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/01autoremove-kernels", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/01autoremove-postgresql", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/50apt-file.conf", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/50command-not-found", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/50kali", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/70debconf", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
openat(AT_FDCWD, "/etc/apt/apt.conf.d/80debtags", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 4
Finding relevant cache files to search ...--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=36892, si_uid=504, si_status=0, si_utime=0, si_stime=1} ---
Searching through filenames ...--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=36895, si_uid=504, si_status=0, si_utime=0, si_stime=0} ---
lshw-gtk: /usr/bin/lshw-gtk
+++ exited with 0 +++
I don't see where are the database files checked by dpkg-query -S
in its manpage. Could anybody let me know where it is? Thanks.
I see that llvm-objdump-9 instead of llvm-objdump are installed. What is the command to figure out which package installs it? How to remove the suffix -9? Thanks.
EDIT: Please reopen the post. The second question is not answered.
To get llvm-objdump in my $PATH
, do I need to add /usr/lib/llvm-9/bin
in my $PATH
?
$ dpkg -S llvm-objdump
llvm-9: /usr/share/man/man1/llvm-objdump-9.1.gz
llvm-9: /usr/lib/llvm-9/bin/llvm-objdump
llvm-9: /usr/bin/llvm-objdump-9
https://wiki.debian.org/NetworkConfiguration#Bridging_without_Switching
The above URL says, the following. But it is not clear to me when they are optional and when they are not. Could you provide me with some link to references that describe this? Thanks.
If you're configuring it manually then something like this will set the default gateway (network, broadcast and gateway are optional):
auto eth0
iface eth0 inet static
address 192.0.2.7
netmask 255.255.255.0
gateway 192.0.2.254
Normally, if I run sudo service networking restart
, it will take some time before it finishes.
But, on one machine, it returns immediately, and the results in ifconfig does not change even when /etc/network/interfaces
is changed. Then I have to restart the machine in order to load any changes in the interfaces
file.
I'm wondering how to debug this problem.
My OS is ubuntu server 13.10.
I have the following content in /etc/network/interfaces
on one of my server (say server1). On another server (say server2). The content of /etc/network/interfaces
is similar. Except that the mac addresses are changed accordingly and the ip address is changed to 192.168.2.2. Ubuntu 13.10 is installed on both servers.
But when I use iperf -s
on server1 and iperf -c 192.168.2.1
to test the speed. I only get around 10Gbps speed (the speed of a single NIC). My switch is configured as a layer 2 switch. Does anybody know how to make the speed to be 20Gbps through bonding? Thanks.
auto em1
iface em1 inet manual
hwaddress ether c8:1f:66:e2:90:43
bond-master bond0
auto em2
iface em2 inet manual
hwaddress ether c8:1f:66:e2:90:45
bond-master bond0
auto bond0
iface bond0 inet static
address 192.168.2.1
netmask 255.255.255.0
network 192.168.2.0
bond-mode 4
bond-miimon 100
bond-lacp-rate 1
bond-slaves em1 em2
The output of iperf
is the following.
server2:~$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.2.2 port 5001 connected with 192.168.2.1 port 34014
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.0 sec 11.0 GBytes 9.41 Gbits/sec
server1:~$ iperf -c 192.168.2.2
------------------------------------------------------------
Client connecting to 192.168.2.2, TCP port 5001
TCP window size: 22.9 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.2.1 port 34014 connected with 192.168.2.2 port 5001
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.0 sec 11.0 GBytes 9.41 Gbits/sec
I also tried to change the mode to balance-alb
and balance-rr
. But they don't lead to improved performance as well. Does anybody know to debug the problem? Thanks.
auto bond0
iface bond0 inet static
address 192.168.2.1
netmask 255.255.255.0
network 192.168.2.0
#bond-mode balance-rr
bond-mode balance-alb
bond-miimon 100
bond-slaves em1 em2
I have a physical server with 384GB memory. My main applications are to run CPU and I/O intensive programs. I could run everything on the physical server.
But I'm wondering if it is better to host a virtual machine on the physical server to simplify future system restoration issues. For example, if the physical server crashes, I can still grab the image of the virtual machine and run it somewhere else. If most of my applications are installed in the virtual machine, then few applications shall be installed on the physical machine. It sounds this strategy can make the system restoration much easier. Also, when I want to duplicate the system configuration, I just need to make a copy of the image of the virtual machine.
On the other hand, running processes on a virtual machine is slower than running on a physical machine. And since I have a large memory, the swap space for the virtual machine is also large (should it be 384GB) and is not based on a physical partition. I think that this can cause performance issues.
Could any experienced users provide some recommendations on whether it is wise to run virtual machines for computing purposes? Thanks.
I see the following lines in /etc/apt/apt.conf.d/50unattended-upgrades
. But I'm not able to find the man page for them. Could anybody point me the detailed document for each of them? Thanks.
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
"${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
I see Backporting mentioned below.
https://access.redhat.com/site/security/updates/backporting/
I'm not sure what they mean by "module". For the example scenario mentioned in the link, it sounds that, in ubuntu, if users only use packages managed by apt, there is no need to backport packages in the sense that RedHat means. Is it so? Thanks.