Debugging how symbolic link is getting broken in ubuntu?Setup symbolic link where users can access it with FTPHow to correctly prevent auto-assembly of RAID arrays on Ubuntu 16.04?Connection refused HTTP (port 80)

What is this plant I saw for sale at a Romanian farmer's market?

When is the phrase "j'ai bon" used?

Having some issue with notation in a Hilbert space

Co-worker is now managing my team. Does this mean that I'm being demoted?

Would a 7805 5v regulator drain a 9v battery?

How does a particle move under a constant 4-force?

How "fast" do astronomical events occur?

How to write a nice frame challenge?

How to address players struggling with simple controls?

How to make all magic-casting innate, but still rare?

Root User Cannot Reset Another Users Password

Can you create a noise using Minor Illusion/Thaumaturgy on an area you cannot see?

How can I detect if I'm in a subshell?

Time at 1G acceleration to travel 100 000 light years

Does knowing the surface area of all faces uniquely determine a tetrahedron?

My student in one course asks for paid tutoring in another course. Appropriate?

How much steel armor can you wear and still be able to swim?

First occurrence in the Sixers sequence

Bash function: Execute $@ command with each argument in sequence executed separately

How is linear momentum conserved in circular motion?

Does anyone recognize these rockets, and their location?

Operator currying: how to convert f[a,b][c,d] to a+c,b+d?

How to ask if I can mow my neighbor's lawn

Common Marsupials and Rare Antelopes



Debugging how symbolic link is getting broken in ubuntu?


Setup symbolic link where users can access it with FTPHow to correctly prevent auto-assembly of RAID arrays on Ubuntu 16.04?Connection refused HTTP (port 80)






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I have a symbolic link of the form



ubuntu@platform1:~$ ls -lrt
total 28
drwxr-xr-x 4 ubuntu ubuntu 4096 Mar 2 15:02 deploy
lrwxrwxrwx 1 ubuntu ubuntu 14 May 25 18:27 logs -> /var/log/arkin


Disk layout



ubuntu@platform1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg-var 853G 3.7G 806G 1% /var
/dev/mapper/vg-var+log 49G 1.1G 45G 3% /var/log
/dev/mapper/vg-var+log+audit 20G 60M 19G 1% /var/log/audit
/dev/mapper/vg-home 30G 6.5G 22G 24% /home


But many times I am observing that symbolic link is changed to



drwxr-xr-x 6 ubuntu ubuntu 4096 May 31 08:41 logs


Can someone let me know if there is a way to enable audit logs on the folder /home/ubuntu/logs so that I can get some idea which operation is breaking the symbolic link and creating a new /home/ubuntu/logs or some other ways I can debug this problem?



  • Filesystem - ext4

  • OS - Ubuntu 16.04

EDIT



I followed the steps as suggested in the answer. I had the following symbolic link :-



lrwxrwxrwx 1 ubuntu ubuntu 14 Jun 3 07:26 logs -> /var/log/arkin



Added the below rule in /etc/audit/audit.rules



-a always,exit -F dir=/home/ubuntu/logs -S unlink -S unlinkat -S rename -S renameat -S rmdir -k log_link



Then restarted audit service



ubuntu@vrni-platform:~$ sudo service auditd stop
ubuntu@vrni-platform:~$ sudo service auditd start


Executed the below command



ubuntu@vrni-platform:~$ sudo ln -svf /var/log/arkin /home/ubuntu/logs
'/home/ubuntu/logs/arkin' -> '/var/log/arkin'


But I am not seeing any audit entry



# aureport -k -i | grep log_link










share|improve this question
























  • The obvious suspect is whatever program is writing logs to that location.

    – Michael Hampton
    May 31 at 18:15











  • Every process writes its logs in a sub-directory under that directory. There are quite a few process accessing this directory. So it is getting difficult to identify the culprit.

    – tuk
    May 31 at 18:37











  • I think you should try audit or aide, to debug more.

    – asktyagi
    Jun 1 at 3:08






  • 1





    For auditd you can try below $ tail -2 /etc/audit/audit.rules -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete

    – asktyagi
    Jun 1 at 3:56












  • Yes I am looking for audit / aide only. But I am not able to find how to add a rule for which will log an entry when the symblink /home/ubuntu/logs is deleted or the /home/ubuntu/logs is created.

    – tuk
    Jun 1 at 4:01

















0















I have a symbolic link of the form



ubuntu@platform1:~$ ls -lrt
total 28
drwxr-xr-x 4 ubuntu ubuntu 4096 Mar 2 15:02 deploy
lrwxrwxrwx 1 ubuntu ubuntu 14 May 25 18:27 logs -> /var/log/arkin


Disk layout



ubuntu@platform1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg-var 853G 3.7G 806G 1% /var
/dev/mapper/vg-var+log 49G 1.1G 45G 3% /var/log
/dev/mapper/vg-var+log+audit 20G 60M 19G 1% /var/log/audit
/dev/mapper/vg-home 30G 6.5G 22G 24% /home


But many times I am observing that symbolic link is changed to



drwxr-xr-x 6 ubuntu ubuntu 4096 May 31 08:41 logs


Can someone let me know if there is a way to enable audit logs on the folder /home/ubuntu/logs so that I can get some idea which operation is breaking the symbolic link and creating a new /home/ubuntu/logs or some other ways I can debug this problem?



  • Filesystem - ext4

  • OS - Ubuntu 16.04

EDIT



I followed the steps as suggested in the answer. I had the following symbolic link :-



lrwxrwxrwx 1 ubuntu ubuntu 14 Jun 3 07:26 logs -> /var/log/arkin



Added the below rule in /etc/audit/audit.rules



-a always,exit -F dir=/home/ubuntu/logs -S unlink -S unlinkat -S rename -S renameat -S rmdir -k log_link



Then restarted audit service



ubuntu@vrni-platform:~$ sudo service auditd stop
ubuntu@vrni-platform:~$ sudo service auditd start


Executed the below command



ubuntu@vrni-platform:~$ sudo ln -svf /var/log/arkin /home/ubuntu/logs
'/home/ubuntu/logs/arkin' -> '/var/log/arkin'


But I am not seeing any audit entry



# aureport -k -i | grep log_link










share|improve this question
























  • The obvious suspect is whatever program is writing logs to that location.

    – Michael Hampton
    May 31 at 18:15











  • Every process writes its logs in a sub-directory under that directory. There are quite a few process accessing this directory. So it is getting difficult to identify the culprit.

    – tuk
    May 31 at 18:37











  • I think you should try audit or aide, to debug more.

    – asktyagi
    Jun 1 at 3:08






  • 1





    For auditd you can try below $ tail -2 /etc/audit/audit.rules -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete

    – asktyagi
    Jun 1 at 3:56












  • Yes I am looking for audit / aide only. But I am not able to find how to add a rule for which will log an entry when the symblink /home/ubuntu/logs is deleted or the /home/ubuntu/logs is created.

    – tuk
    Jun 1 at 4:01













0












0








0








I have a symbolic link of the form



ubuntu@platform1:~$ ls -lrt
total 28
drwxr-xr-x 4 ubuntu ubuntu 4096 Mar 2 15:02 deploy
lrwxrwxrwx 1 ubuntu ubuntu 14 May 25 18:27 logs -> /var/log/arkin


Disk layout



ubuntu@platform1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg-var 853G 3.7G 806G 1% /var
/dev/mapper/vg-var+log 49G 1.1G 45G 3% /var/log
/dev/mapper/vg-var+log+audit 20G 60M 19G 1% /var/log/audit
/dev/mapper/vg-home 30G 6.5G 22G 24% /home


But many times I am observing that symbolic link is changed to



drwxr-xr-x 6 ubuntu ubuntu 4096 May 31 08:41 logs


Can someone let me know if there is a way to enable audit logs on the folder /home/ubuntu/logs so that I can get some idea which operation is breaking the symbolic link and creating a new /home/ubuntu/logs or some other ways I can debug this problem?



  • Filesystem - ext4

  • OS - Ubuntu 16.04

EDIT



I followed the steps as suggested in the answer. I had the following symbolic link :-



lrwxrwxrwx 1 ubuntu ubuntu 14 Jun 3 07:26 logs -> /var/log/arkin



Added the below rule in /etc/audit/audit.rules



-a always,exit -F dir=/home/ubuntu/logs -S unlink -S unlinkat -S rename -S renameat -S rmdir -k log_link



Then restarted audit service



ubuntu@vrni-platform:~$ sudo service auditd stop
ubuntu@vrni-platform:~$ sudo service auditd start


Executed the below command



ubuntu@vrni-platform:~$ sudo ln -svf /var/log/arkin /home/ubuntu/logs
'/home/ubuntu/logs/arkin' -> '/var/log/arkin'


But I am not seeing any audit entry



# aureport -k -i | grep log_link










share|improve this question
















I have a symbolic link of the form



ubuntu@platform1:~$ ls -lrt
total 28
drwxr-xr-x 4 ubuntu ubuntu 4096 Mar 2 15:02 deploy
lrwxrwxrwx 1 ubuntu ubuntu 14 May 25 18:27 logs -> /var/log/arkin


Disk layout



ubuntu@platform1:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg-var 853G 3.7G 806G 1% /var
/dev/mapper/vg-var+log 49G 1.1G 45G 3% /var/log
/dev/mapper/vg-var+log+audit 20G 60M 19G 1% /var/log/audit
/dev/mapper/vg-home 30G 6.5G 22G 24% /home


But many times I am observing that symbolic link is changed to



drwxr-xr-x 6 ubuntu ubuntu 4096 May 31 08:41 logs


Can someone let me know if there is a way to enable audit logs on the folder /home/ubuntu/logs so that I can get some idea which operation is breaking the symbolic link and creating a new /home/ubuntu/logs or some other ways I can debug this problem?



  • Filesystem - ext4

  • OS - Ubuntu 16.04

EDIT



I followed the steps as suggested in the answer. I had the following symbolic link :-



lrwxrwxrwx 1 ubuntu ubuntu 14 Jun 3 07:26 logs -> /var/log/arkin



Added the below rule in /etc/audit/audit.rules



-a always,exit -F dir=/home/ubuntu/logs -S unlink -S unlinkat -S rename -S renameat -S rmdir -k log_link



Then restarted audit service



ubuntu@vrni-platform:~$ sudo service auditd stop
ubuntu@vrni-platform:~$ sudo service auditd start


Executed the below command



ubuntu@vrni-platform:~$ sudo ln -svf /var/log/arkin /home/ubuntu/logs
'/home/ubuntu/logs/arkin' -> '/var/log/arkin'


But I am not seeing any audit entry



# aureport -k -i | grep log_link







linux ubuntu ubuntu-16.04 symbolic-link auditd






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jun 3 at 10:49







tuk

















asked May 31 at 18:03









tuktuk

16619




16619












  • The obvious suspect is whatever program is writing logs to that location.

    – Michael Hampton
    May 31 at 18:15











  • Every process writes its logs in a sub-directory under that directory. There are quite a few process accessing this directory. So it is getting difficult to identify the culprit.

    – tuk
    May 31 at 18:37











  • I think you should try audit or aide, to debug more.

    – asktyagi
    Jun 1 at 3:08






  • 1





    For auditd you can try below $ tail -2 /etc/audit/audit.rules -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete

    – asktyagi
    Jun 1 at 3:56












  • Yes I am looking for audit / aide only. But I am not able to find how to add a rule for which will log an entry when the symblink /home/ubuntu/logs is deleted or the /home/ubuntu/logs is created.

    – tuk
    Jun 1 at 4:01

















  • The obvious suspect is whatever program is writing logs to that location.

    – Michael Hampton
    May 31 at 18:15











  • Every process writes its logs in a sub-directory under that directory. There are quite a few process accessing this directory. So it is getting difficult to identify the culprit.

    – tuk
    May 31 at 18:37











  • I think you should try audit or aide, to debug more.

    – asktyagi
    Jun 1 at 3:08






  • 1





    For auditd you can try below $ tail -2 /etc/audit/audit.rules -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete

    – asktyagi
    Jun 1 at 3:56












  • Yes I am looking for audit / aide only. But I am not able to find how to add a rule for which will log an entry when the symblink /home/ubuntu/logs is deleted or the /home/ubuntu/logs is created.

    – tuk
    Jun 1 at 4:01
















The obvious suspect is whatever program is writing logs to that location.

– Michael Hampton
May 31 at 18:15





The obvious suspect is whatever program is writing logs to that location.

– Michael Hampton
May 31 at 18:15













Every process writes its logs in a sub-directory under that directory. There are quite a few process accessing this directory. So it is getting difficult to identify the culprit.

– tuk
May 31 at 18:37





Every process writes its logs in a sub-directory under that directory. There are quite a few process accessing this directory. So it is getting difficult to identify the culprit.

– tuk
May 31 at 18:37













I think you should try audit or aide, to debug more.

– asktyagi
Jun 1 at 3:08





I think you should try audit or aide, to debug more.

– asktyagi
Jun 1 at 3:08




1




1





For auditd you can try below $ tail -2 /etc/audit/audit.rules -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete

– asktyagi
Jun 1 at 3:56






For auditd you can try below $ tail -2 /etc/audit/audit.rules -a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete -a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete

– asktyagi
Jun 1 at 3:56














Yes I am looking for audit / aide only. But I am not able to find how to add a rule for which will log an entry when the symblink /home/ubuntu/logs is deleted or the /home/ubuntu/logs is created.

– tuk
Jun 1 at 4:01





Yes I am looking for audit / aide only. But I am not able to find how to add a rule for which will log an entry when the symblink /home/ubuntu/logs is deleted or the /home/ubuntu/logs is created.

– tuk
Jun 1 at 4:01










1 Answer
1






active

oldest

votes


















1














For auditd you can try below



$tail -2 /etc/audit/audit.rules 
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete


Here you can specify directory too



-F dir=<directory or mount point>


Here is the used options description in shot for more details please check http://man7.org/linux/man-pages/man8/auditctl.8.html



 -a [list,action|action,list] 
-S [Syscall name or number|all]
-k key Set a filter key on an audit rule.


Some more examples for different rules are:



## Audit log access
-a always,exit -F dir=/var/log/audit/ -F perm=r -F auid>=1000 -F auid!=unset -F key=access-audit-trail
## Attempts to Alter Process and Session Initiation Information
-a always,exit -F path=/var/run/utmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/btmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/wtmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session





share|improve this answer























  • I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

    – tuk
    Jun 3 at 10:50












Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f969694%2fdebugging-how-symbolic-link-is-getting-broken-in-ubuntu%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









1














For auditd you can try below



$tail -2 /etc/audit/audit.rules 
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete


Here you can specify directory too



-F dir=<directory or mount point>


Here is the used options description in shot for more details please check http://man7.org/linux/man-pages/man8/auditctl.8.html



 -a [list,action|action,list] 
-S [Syscall name or number|all]
-k key Set a filter key on an audit rule.


Some more examples for different rules are:



## Audit log access
-a always,exit -F dir=/var/log/audit/ -F perm=r -F auid>=1000 -F auid!=unset -F key=access-audit-trail
## Attempts to Alter Process and Session Initiation Information
-a always,exit -F path=/var/run/utmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/btmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/wtmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session





share|improve this answer























  • I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

    – tuk
    Jun 3 at 10:50
















1














For auditd you can try below



$tail -2 /etc/audit/audit.rules 
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete


Here you can specify directory too



-F dir=<directory or mount point>


Here is the used options description in shot for more details please check http://man7.org/linux/man-pages/man8/auditctl.8.html



 -a [list,action|action,list] 
-S [Syscall name or number|all]
-k key Set a filter key on an audit rule.


Some more examples for different rules are:



## Audit log access
-a always,exit -F dir=/var/log/audit/ -F perm=r -F auid>=1000 -F auid!=unset -F key=access-audit-trail
## Attempts to Alter Process and Session Initiation Information
-a always,exit -F path=/var/run/utmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/btmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/wtmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session





share|improve this answer























  • I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

    – tuk
    Jun 3 at 10:50














1












1








1







For auditd you can try below



$tail -2 /etc/audit/audit.rules 
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete


Here you can specify directory too



-F dir=<directory or mount point>


Here is the used options description in shot for more details please check http://man7.org/linux/man-pages/man8/auditctl.8.html



 -a [list,action|action,list] 
-S [Syscall name or number|all]
-k key Set a filter key on an audit rule.


Some more examples for different rules are:



## Audit log access
-a always,exit -F dir=/var/log/audit/ -F perm=r -F auid>=1000 -F auid!=unset -F key=access-audit-trail
## Attempts to Alter Process and Session Initiation Information
-a always,exit -F path=/var/run/utmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/btmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/wtmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session





share|improve this answer













For auditd you can try below



$tail -2 /etc/audit/audit.rules 
-a always,exit -F arch=b32 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete
-a always,exit -F arch=b64 -S unlink -S unlinkat -S rename -S renameat -S rmdir -k delete


Here you can specify directory too



-F dir=<directory or mount point>


Here is the used options description in shot for more details please check http://man7.org/linux/man-pages/man8/auditctl.8.html



 -a [list,action|action,list] 
-S [Syscall name or number|all]
-k key Set a filter key on an audit rule.


Some more examples for different rules are:



## Audit log access
-a always,exit -F dir=/var/log/audit/ -F perm=r -F auid>=1000 -F auid!=unset -F key=access-audit-trail
## Attempts to Alter Process and Session Initiation Information
-a always,exit -F path=/var/run/utmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/btmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session
-a always,exit -F path=/var/log/wtmp -F perm=wa -F auid>=1000 -F auid!=unset -F key=session






share|improve this answer












share|improve this answer



share|improve this answer










answered Jun 1 at 4:20









asktyagiasktyagi

521110




521110












  • I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

    – tuk
    Jun 3 at 10:50


















  • I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

    – tuk
    Jun 3 at 10:50

















I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

– tuk
Jun 3 at 10:50






I followed the steps you suggested but this does not seem to be creating any audit entry. Check my edit in the question.

– tuk
Jun 3 at 10:50


















draft saved

draft discarded
















































Thanks for contributing an answer to Server Fault!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f969694%2fdebugging-how-symbolic-link-is-getting-broken-in-ubuntu%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

How to write a 12-bar blues melodyI-IV-V blues progressionHow to play the bridges in a standard blues progressionHow does Gdim7 fit in C# minor?question on a certain chord progressionMusicology of Melody12 bar blues, spread rhythm: alternative to 6th chord to avoid finger stretchChord progressions/ Root key/ MelodiesHow to put chords (POP-EDM) under a given lead vocal melody (starting from a good knowledge in music theory)Are there “rules” for improvising with the minor pentatonic scale over 12-bar shuffle?Confusion about blues scale and chords

What if the end-user didn't have the required library?What is setup.py?What is a clean, pythonic way to have multiple constructors in Python?What does Ruby have that Python doesn't, and vice versa?What is the reason for having '//' in Python?How do I create a namespace package in Python?How to package shared objects that python modules depend on?setuptools vs. distutils: why is distutils still a thing?Navigation in Windows 10 vs code not going to virtualenv library when the same library is installed at user levelPython create package for local usePackaging a project that uses multiple python versionsWhy is permission denied on pip install except for when “--user” is included at end of command?

Esgonzo ibérico Índice Descrición Distribución Hábitat Ameazas Notas Véxase tamén "Acerca dos nomes dos anfibios e réptiles galegos""Chalcides bedriagai"Chalcides bedriagai en Carrascal, L. M. Salvador, A. (Eds). Enciclopedia virtual de los vertebrados españoles. Museo Nacional de Ciencias Naturales, Madrid. España.Fotos